@kaiord/tcx
v4.7.2
Published
TCX format adapter for the Kaiord health & fitness data framework
Maintainers
Readme
@kaiord/tcx
TCX format adapter for the Kaiord health & fitness data framework. Provides reading, writing, and XSD validation of Garmin Training Center XML files.
Installation
pnpm add @kaiord/core @kaiord/tcxUsage
With Core Providers (Recommended)
import { createDefaultProviders } from "@kaiord/core";
import { createTcxProviders } from "@kaiord/tcx";
const providers = createDefaultProviders({
tcx: createTcxProviders(),
});
// TCX to KRD
const krd = await providers.convertTcxToKrd!({ tcxString });
// KRD to TCX
const tcxString = await providers.convertKrdToTcx!({ krd });Standalone Adapter Access
import {
createFastXmlTcxReader,
createFastXmlTcxWriter,
createXsdTcxValidator,
} from "@kaiord/tcx";
import { createConsoleLogger } from "@kaiord/core";
const logger = createConsoleLogger();
const reader = createFastXmlTcxReader(logger);
const writer = createFastXmlTcxWriter(logger, createXsdTcxValidator(logger));
const validator = createXsdTcxValidator(logger);API
createTcxProviders(logger?: Logger): TcxProviders
Creates TCX adapter instances for use with createDefaultProviders().
createFastXmlTcxReader(logger: Logger): TcxReader
Creates a TCX file reader using fast-xml-parser.
createFastXmlTcxWriter(logger: Logger, validator: TcxValidator): TcxWriter
Creates a TCX file writer using fast-xml-parser.
createXsdTcxValidator(logger: Logger): TcxValidator
Creates an XSD schema validator for TCX files.
Supported TCX Features
- Workout definitions with structured steps
- Heart rate, speed, and cadence targets
- Time-based and distance-based durations
- Repeat blocks (intervals)
- Multiple sport types
License
MIT
