Skip to content

wdsx

BMW Wiring Diagram System - Modern Web Port

🔗 GitHub

About

wdsx is a modern web application port of BMW's legacy WDS (Wiring Diagram System). The original WDS ran as Java applets in old browsers. This project creates a modern, web-based version preserving all functionality with a better user experience.

Source Data

  • ~24,000 SVGZ wiring diagrams
  • ~20,000 HTML information pages
  • 14 XML tree structure files
  • Vehicle models: E38, E39, E46, E52, E53, E60, E61, E63, E64, E65, E66, E70, E71, E83, E85, E87, E89, E90, F01
  • Languages: EN, DE, and others

Tech Stack

  • Language: TypeScript
  • Monorepo: pnpm + Turborepo
  • Importer: Node.js data transformation pipeline
  • Viewer: SvelteKit
  • Output: JSON + optimized SVG + Markdown

Repository Structure

wdsx/
├── apps/
│   └── viewer/           # SvelteKit viewer application
├── packages/
│   ├── core/             # Shared types and utilities
│   └── importer/         # Data import tool
├── tools/                # Scripts and utilities
├── data/                 # Processed data (generated)
└── docs/                 # Documentation

Usage

Importer

bash
pnpm install
pnpm import           # Import WDS data
pnpm import:dry       # Dry run
pnpm validate         # Validate data
pnpm stats            # Show statistics

Viewer

bash
# Development
pnpm --filter viewer dev

# Build static site
pnpm --filter viewer build

Note: BMW WDS data is not included and must be provided at runtime.

Features

  • 📊 Interactive diagrams — Navigate wiring schematics
  • 🔍 Search — Find components and connections
  • 📱 Responsive — Works on desktop and mobile
  • 🌐 Multi-language — EN, DE support
  • Fast — Static generation, optimized SVGs

Status

ComponentStatus
Data importer✅ Complete
Core types✅ Complete
SvelteKit viewer🔄 In progress
Search🔄 In progress
GitHub Pages✅ Complete
  • EdiabasX — EDIABAS implementation
  • inpax — INPA interpreter
  • tisx — TIS graphics decoder

Disclaimer

This is a personal project for educational and archival purposes. Original BMW data remains property of BMW AG.