Violetcloud Constitution
Core Principles
I. Content-First
Each change should improve how personal technology content is communicated: clear navigation, legible typography, and purposeful layouts that highlight experiments and notes.
II. Fast and Accessible
Default to static or ISR delivery with aggressive caching; target Core Web Vitals green across viewports; ship AA contrast, keyboard support, and semantic HTML in every feature.
III. Cloud-Native by Default
Plan for Azure from day one: IaC-driven environments, repeatable preview deployments, and cost-aware sizing. Prefer managed services over self-hosting.
IV. Observability and Safety
Capture basic telemetry (requests, errors, perf) with privacy in mind; add feature flags for risky changes; keep rollbacks simple and documented.
V. Simplicity Over Cleverness
Favor straightforward Next.js and TypeScript patterns; avoid over-abstraction; choose minimal dependencies; delete unused code quickly.
Technical Constraints
- Stack: Next.js (React + TypeScript), Speckit for specs/plans, tailwindcss free template https://www.tailawesome.com/resources/mosaic-lite, testing with Playwright and Jest/RTL.
- Azure: primary target is Azure Static Web Apps or App Service (Node 20), fronted by CDN; use azd + terraform for provisioning and GitHub Actions for CI/CD.
- Content: Markdown/MDX for long-form posts and playground writeups; assets optimized at build time; dark/light theming is optional but performance must stay green.
- Security: HTTPS everywhere, security headers baked into middleware, secrets managed via Azure Key Vault or Actions secrets.
Development Workflow
- Start with a Speckit spec for any feature or integration; keep specs short and test-focused.
- Red/green cycle for components: add unit or visual regression tests before merging. Integration tests for routing, data fetching, and auth flows.
- Trunk-based with short-lived branches; every PR builds, lints, and runs tests; preview deployments for visual review when possible.
- Deployment gates: IaC validated, CI green, and performance check on a representative page or story.
Governance
The constitution sets non-negotiable guardrails. Changes require an updated version, rationale in the repo, and a rollout note. Reviews must confirm alignment with principles and constraints before merge.
Version: 1.0.0 | Ratified: 2025-12-21 | Last Amended: 2025-12-21