add fixture-invoicing example, sample-room wrap, kind cluster support
- examples/fixture-invoicing/: FastAPI + Vue + Postgres demo (4-entity invoice fixture)
- cfg/sample/: wraps the fixture (managed.repos points at examples/)
- ctrl/kind-{up,down,status}.sh + per-room k8s render in soleprint/ctrl/k8s/
- build.py: relative repo paths, resilient rmtree, optional k8s render hook
- cfg/.gitignore: stop ignoring sample/ and standalone/ template rooms
Manifests render cleanly but kind cluster has not been run end-to-end yet.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
46
examples/fixture-invoicing/README.md
Normal file
46
examples/fixture-invoicing/README.md
Normal file
@@ -0,0 +1,46 @@
|
||||
# Fixture Invoicing
|
||||
|
||||
> **⚠ THIS IS A FIXTURE, NOT A PRODUCT.**
|
||||
> A deliberately minimal invoicing app used as a test surface for the
|
||||
> [Soleprint](../../README.md) framework. Seed data is obviously placeholder
|
||||
> ("Acme Widget Co.", "Test Customer 001"). Do not mistake this for real
|
||||
> invoicing software.
|
||||
|
||||
## What's here
|
||||
|
||||
- `backend/` — FastAPI + SQLAlchemy against Postgres
|
||||
- `frontend/` — Vue 3 + Vite, three pages (customers, invoices, invoice detail)
|
||||
- `docker-compose.yml` — backend + frontend + postgres as three containers
|
||||
|
||||
## Entities
|
||||
|
||||
```
|
||||
Customer ──< Invoice ──< LineItem
|
||||
└──────< Payment
|
||||
```
|
||||
|
||||
- `Customer` — name, email
|
||||
- `Invoice` — number, customer_id (FK), issued_at, due_at, status
|
||||
- `LineItem` — invoice_id (FK), description, quantity, unit_price
|
||||
- `Payment` — invoice_id (FK), amount, method, paid_at
|
||||
|
||||
## Run it standalone
|
||||
|
||||
```bash
|
||||
cd examples/fixture-invoicing
|
||||
docker compose up --build
|
||||
```
|
||||
|
||||
- Backend: http://localhost:8100
|
||||
- Frontend: http://localhost:3100
|
||||
- Postgres: localhost:5532 (user `postgres`, password `fixture`, db `fixture`)
|
||||
|
||||
## Run it wrapped by soleprint
|
||||
|
||||
The `cfg/sample/` room wraps this fixture. See the main soleprint docs.
|
||||
|
||||
```bash
|
||||
cd ../.. # back to repo root
|
||||
python build.py --cfg sample
|
||||
cd gen/sample && ./ctrl/start.sh
|
||||
```
|
||||
Reference in New Issue
Block a user