@bardioc/create-bardioc-app
Scaffold a Vite app wired for @bardioc/app-sdk.
Requirements
- Node.js
>=20.19.0
Install
Install the CLI globally from the public npm registry:
npm install -g @bardioc/create-bardioc-app
If your default npm registry is not https://registry.npmjs.org/, set it in your user-level npm config before installing app dependencies.
You can also run it without a global install:
npm exec --yes @bardioc/create-bardioc-app my-app -- --port 3005
Quick start
create-bardioc-app my-app --port 3005
cd my-app
npm install
Copy .env.example to .env and fill in VITE_APP_NAME and API_BASE_URL. Then run npm run dev.
Generated app
The generated app includes:
- React + Vite project structure (or your chosen
--template) @bardioc/app-sdkdependencyAppSdkProviderwiring- optional standalone dev auth via
.env(API_BASE_URL): the host's login and a/restproxy - a compact SDK demo with notification and transport examples
- (
vite) a station network graph built onGraphChartfrom@bardioc/org-chart— the reference for graph views public/app-manifest.json
Release infra (out of the box)
Every scaffolded app ships a lightweight versioning toolkit:
- Changesets (
.changeset/+changeset/release:*scripts) for semver-versioning the app scripts/stamp-manifest.mjs— foldspackage.json's version into the builtapp-manifest.jsonandmanifest.yaml(wired intonpm run build/npm run bundle)- Compliance gate (
scripts/compliance.mjs,audit.mjs,compliance-summary.mjs+sbom/compliance/audit:security/compliance:allscripts) —npm run bundlefirst writes a CycloneDX SBOM, checks production licenses against an allow list and fails on high/critical audit findings; the four reports land inpublic/and ship inside the zip - Two Claude skills under
.claude/commands/:/changeset-app(bump locally) and/refresh-bundle(rebuild the zip and swap it into a WebOS host checkout)
Opt-in tooling
Heavier, environment-specific tooling is off by default — pass a flag to include it:
--with-pipeline— a Bitbucket pipeline (bitbucket-pipelines.yml) running check-types/build/audit on PRs, with a publish step ondev. Publishing is dormant while the app stays"private": true+ unscoped (pnpm changeset publishno-ops); the generatedREADME.mddocuments how to enable it.--with-link— thelink:source/unlink:sourcedev flow (scripts/link-source.mjs+pnpm-workspace.yaml+.npmrc) for developing against an in-tree@bardioc/*source checkout.
Standalone dev auth
Generated apps can run standalone on the same login as the Bardioc host.
- Copy
.env.exampleto.env - Fill in
VITE_APP_NAMEandAPI_BASE_URL - Run
npm run dev; without a session it goes straight to the host login
When running outside the host iframe, startDevHost() sends the browser to the login when there is no session, then stands in for the host, and the SDK proxies /rest/* to API_BASE_URL on the session cookies. The BFF returns from the login only to the localhost ports it lists in AUTH_DEV_ORIGINS (on dev: 3000-3010), so keep --port in that range. Vite templates do this through the bardiocDevAuth plugin; the angular and nextjs templates run scripts/dev.mjs, which starts it alongside their dev server.
Options
--template <name>— framework template (defaultvite)--port <port>— dev server port, default3005--with-pipeline— add the Bitbucket CI/publish pipeline (off by default)--with-link— add thelink:sourcedev flow for local@bardioc/*checkouts (off by default)
Support
For support, contact [email protected].
License
MIT.
Copyright (c) 2026 ALMATO AG. All rights reserved.
This is an internal library for ALMATO AG.