2.0 KiB
Agree on Desires Constitution
Core Principles
I. Defined Technology Stack
All development MUST adhere to the approved technology stack. This ensures consistency, maintainability, and streamlined operations.
- Backend: Node.js
- Frontend: React
- UI Framework: Material Design 3 (Material-UI / MUI)
- Containerization: Docker
II. UI/UX Consistency
All user interfaces MUST adhere to Material Design 3 principles and components. This creates a cohesive, predictable, and high-quality user experience. Rationale: Avoids fragmented design and reduces redundant styling efforts.
III. Container-First Development
All application services and development environments MUST run within Docker containers. This ensures environment parity from local development to production, simplifies setup, and improves deployment reliability.
IV. Test-Driven Development (TDD)
New features and bug fixes MUST follow a Test-Driven Development approach. Tests should be written first to define the requirements, fail before implementation, and pass upon completion. This ensures code quality, reduces regressions, and clarifies requirements.
V. API-First Design
The backend and frontend are decoupled and communicate via a well-defined API contract. The API contract SHOULD be defined and reviewed before implementation begins. This allows for parallel development and clear integration points.
Governance
All development activities, code reviews, and architectural decisions must align with this constitution. Proposed deviations require a formal amendment to this document.
Version: 1.0.0 | Ratified: 2025-10-09 | Last Amended: 2025-10-09