Sign In

@kaiord/zwo

Package Overview
Dependencies
Maintainers
1
Versions
15
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@kaiord/zwo

ZWO format adapter for the Kaiord health & fitness data framework

latest
Source
npmnpm
Version
10.1.0
Version published
Maintainers
1
Created
Source

@kaiord/zwo

npm version License: MIT

ZWO format adapter for the Kaiord health & fitness data framework. Provides reading, writing, and validation of Zwift workout XML files.

Installation

pnpm add @kaiord/core @kaiord/zwo

Usage

import { createDefaultProviders } from "@kaiord/core";
import { createZwoProviders } from "@kaiord/zwo";

const providers = createDefaultProviders({
  zwo: createZwoProviders(),
});

// ZWO to KRD
const krd = await providers.convertZwiftToKrd!({ zwiftString });

// KRD to ZWO
const zwoString = await providers.convertKrdToZwift!({ krd });

Standalone Adapter Access

import {
  createFastXmlZwiftReader,
  createFastXmlZwiftWriter,
  createZwiftValidator,
} from "@kaiord/zwo";
import { createConsoleLogger } from "@kaiord/core";

const logger = createConsoleLogger();
const validator = createZwiftValidator(logger);
const reader = createFastXmlZwiftReader(logger, validator);
const writer = createFastXmlZwiftWriter(logger, validator);

API

createZwoProviders(logger?: Logger): ZwoProviders

Creates ZWO adapter instances for use with createDefaultProviders().

createFastXmlZwiftReader(logger: Logger, validator: ZwiftValidator): ZwiftReader

Creates a ZWO file reader using fast-xml-parser.

createFastXmlZwiftWriter(logger: Logger, validator: ZwiftValidator): ZwiftWriter

Creates a ZWO file writer using fast-xml-parser.

createZwiftValidator(logger: Logger): ZwiftValidator

Creates a validator that uses XSD validation in Node.js and well-formedness checking in browsers.

createXsdZwiftValidator(logger: Logger): ZwiftValidator

Creates a strict XSD schema validator (Node.js only).

Supported ZWO Features

  • SteadyState intervals
  • Warmup and Cooldown ramps
  • IntervalsT (structured intervals)
  • FreeRide segments
  • Power targets (FTP percentage)
  • Heart rate and cadence targets
  • Text events

License

MIT

Keywords

kaiord

FAQs

Package last updated on 04 Aug 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts