This commit is contained in:
2026-05-10 09:46:07 +12:00
parent cfc193b713
commit 2f2466ecac
81 changed files with 2571 additions and 413 deletions
+109
View File
@@ -1,3 +1,112 @@
## Repository operations
### Dependencies
Current app dependency entry points:
| Area | File | Notes |
| --- | --- | --- |
| Frontend runtime + tooling | `frontend/package.json` | SvelteKit app, Vite build, Vitest tests |
| Frontend lockfile | `frontend/package-lock.json` | Generated by npm, commit this with dependency changes |
| Backend runtime + tooling | `backend/pyproject.toml` | FastAPI app, SQLAlchemy, pytest, packaging metadata |
Current declared dependencies:
#### Frontend
- Runtime: `lucide-svelte`
- Dev/build: `@sveltejs/adapter-auto`, `@sveltejs/adapter-node`, `@sveltejs/kit`, `svelte`, `typescript`, `vite`, `vitest`
#### Backend
- Runtime/tooling: `fastapi`, `openpyxl`, `rich`, `uvicorn[standard]`, `sqlalchemy`, `pydantic`, `psycopg[binary]`, `reportlab`
- Test dependency: `pytest`
### Dependency update workflow
Use a small, controlled update flow rather than bulk-upgrading everything immediately before production.
#### Frontend
Check what is outdated:
```bash
cd frontend
npm outdated
```
Install targeted upgrades:
```bash
npm install <package>@latest
```
For a broader refresh within `package.json` ranges:
```bash
npm update
```
Then verify:
```bash
npm run test
npm run build
```
#### Backend
Check current declared versions in:
```bash
backend/pyproject.toml
```
Upgrade by editing version ranges in `backend/pyproject.toml`, then reinstall:
```bash
cd backend
pip install -e .
pytest
```
If a backend dependency is high-risk near production, prefer upgrading one package at a time and re-running API tests after each change.
### Repository hygiene
The repo should keep source code and deployment assets, but not generated local artifacts.
Expected long-lived top-level folders:
- `backend/`
- `frontend/`
- `deploy/`
Expected long-lived top-level docs/config files:
- `README.md`
- `CLAUDE.MD`
- `docker-compose*.yml`
- `.env*.example`
Files that should stay out of version control or be moved out of the project root over time:
- SQLite databases such as `data_entry_app.db`
- local cache folders such as `.pytest_cache/` and `pytest-cache-files-*`
- virtual environments such as `.venv/`
- one-off working assets such as loose spreadsheets, image exports, or temporary notes unless they are intentional project deliverables
### Tests and pytest files
There are not many real pytest source files in this repo right now.
Current actual backend tests:
- `backend/tests/test_access.py`
- `backend/tests/test_costing_engine.py`
Most of the extra `pytest`-named items are generated cache/temp directories from local test runs, not hand-written test suites.
## Spreadsheet analysis summary
The workbook is effectively a costing and pricing model with three core calculation layers: