chore: initial project setup with backend, frontend, and infrastructure
Add complete NexaPantry application structure including: - Docker Compose configuration with PostgreSQL, Redis, FastAPI backend, worker, frontend and Caddy - Environment configuration template with database, auth, and service settings - GitHub Actions CI workflow for backend/frontend linting, testing, auditing and Docker builds - AGPL-3.0 license and comprehensive README with setup, development, and security documentation - Backend
This commit is contained in:
15
docs/architecture.md
Normal file
15
docs/architecture.md
Normal file
@@ -0,0 +1,15 @@
|
||||
# Architecture
|
||||
|
||||
NexaPantry uses a small but explicit service architecture:
|
||||
|
||||
- React/Vite/TypeScript frontend with TailwindCSS and PWA service worker
|
||||
- FastAPI backend with SQLAlchemy ORM
|
||||
- PostgreSQL as the system of record
|
||||
- Redis for future distributed rate limiting and queued job coordination
|
||||
- Caddy as reverse proxy and security header layer
|
||||
- Worker process for expiry notifications and mail delivery preparation
|
||||
|
||||
Core authorization is home-scoped. Every product, shopping item and recipe request first checks the caller's home membership. Instance admins can manage system settings and users through dedicated admin endpoints.
|
||||
|
||||
External barcode lookup is hidden behind `ProductLookup`, currently implemented by `OpenFoodFactsLookup`. A future provider can be added without changing the frontend contract.
|
||||
|
||||
Reference in New Issue
Block a user