Skip to content
Ingwald edited this page Sep 7, 2026 · 5 revisions

Palette Wiki

Full-stack colour palette app and a small community (v5.0): accounts own palettes, a public feed shows what people publish, and you can fork anyone's palette or import colours from an image, a Figma file or a Pinterest board. Solo portfolio project built to a production bar: httpOnly-cookie auth with CSRF, an async FastAPI backend on PostgreSQL, Redis-backed rate limiting, OAuth import tokens encrypted at rest, a dark theme, encrypted secrets, and continuous delivery to a live server.

Live demo: palettes-app.com · Changelog · Roadmap

React + TypeScript → Fetch API → FastAPI (async) → PostgreSQL

Palette page — swatch grid, colour-vision simulation, fork/report, contrast matrix

Home — the community feed Admin — colour-row editor Export — PNG preview
Home Admin Export

Start here

  • Setup — run the stack locally with Docker.
  • Architecture — ER model, request path, auth flow (Mermaid diagrams).
  • API Reference — versioned, paginated /api/v1.

Topics

Area Page
System design & diagrams Architecture
HTTP endpoints API Reference
Auth (cookies + CSRF + refresh) Authentication
Schema & migrations Database
Ship to the VM Deployment
Health, Sentry, backups Operations
Encrypted secrets (SOPS + age) Secrets
Local dev setup Setup
Common issues Troubleshooting
Repo hygiene Git Cleanup

Stack

Frontend React 19 · TypeScript · Vite · vanilla-extract · TanStack Query · React Router (code-split) · self-hosted fonts · Vitest · Playwright · Lighthouse CI · Sentry Backend FastAPI (async) · SQLAlchemy 2.0 · PostgreSQL 16 (JSONB + GIN) · Alembic · Argon2id · Redis · slowapi Infra Docker Compose · nginx · GHCR · GitHub Actions CI/CD · CodeQL · Dependabot · Cloudflare + Caddy · SOPS + age

This wiki mirrors the in-repo docs/. The repo docs are the source of truth; edits should land there first.

Clone this wiki locally