A monorepo containing Svelte/Vite applications and supporting libraries that extend CoMPAS with TransnetBW-specific plugins and tools. The workspace is managed with Nx and contains multiple apps that can be developed, built, and previewed independently.
The following plugins are automatically deployed to GitHub Pages on every push to main:
engineering-wizard: engineering-wizard
template-generator: template-generator
history-viewer: history-viewer
archive-explorer: archive-explorer
location-viewer: location-viewer
location-manager: location-manager
Libraries live under libs/ and provide shared UI components, API clients, and utilities.
npm install
Run a dev server for an app (HMR enabled):
# Examples
npm run run:engineering-wizard
npm run run:template-generator
npm run run:history-viewer
npm run run:archive-explorer
npm run run:location-viewer
npm run run:location-manager
These commands use Nx to start Vite in dev mode for the selected app.
Build all apps and libraries:
npm run build
Build a single app:
# Examples
npm run build:engineering-wizard
npm run build:template-generator
npm run build:history-viewer
npm run build:archive-explorer
npm run build:location-viewer
npm run build:location-manager
npm run build:tsld
Build artifacts are emitted to dist/apps/
Preview serves a built app on a local HTTP port. Use this when integrating the plugin into a running CoMPAS instance (point CoMPAS to the preview URL).
# Examples
nx run engineering-wizard:preview
nx run template-generator:preview
Notes:
npm run preview:engineering-wizard, npm run preview:template-generator.--, for example to choose a port: nx run engineering-wizard:preview -- --port 4300.nx run <project>:<target> directly.