Local Development
Prerequisites
- Node.js 20+
- npm 10+
- Access to a Kubernetes cluster with Crossplane for live platform testing
App Setup
From the repository root:
npm install
cp .env.example .env.local
npm run dev:local
The app runs on http://localhost:3000.
Use npm run dev:local for the default developer experience. It enables the offline Crossplane mock path so the catalog, Azure Storage workflow, and resources pages render without a live cluster.
If you want to exercise the live Kubernetes and Crossplane integration instead, run:
npm run dev
That mode expects a working cluster context and valid local application configuration.
Storage Workflow Development
For most feature work, use the offline flow first:
- Start the app with
npm run dev:local. - Open the catalog and enter the Azure Storage workflow.
- Validate the form behavior, guardrails, success state, resources inventory, and resource details view.
The offline mode is intended for:
- UI iteration.
- content and workflow design.
- client-side validation behavior.
- route-level API handling in development.
Use a live cluster when you need to validate:
- approved resource group discovery,
- Crossplane reconciliation,
- provider configuration,
- real Azure resource creation,
- delete behavior against the cluster.
See Azure Storage workflow for the full end-to-end path.
Docs Setup
From the repository root:
npm run docs:dev
This starts the Docusaurus site from the nested docs workspace.
Quality Checks
Use the repo-level checks before pushing changes:
npm run test
npx tsc --noEmit
For docs-only changes, also validate the static site build:
npm run docs:build
If you change storage workflow behavior or copy, prefer validating both:
- the relevant Vitest coverage, and
- the Docusaurus static build.