Development
Everything you need to contribute to TimeTiles.
Tech stack, data flow, state management, and design decisions.
ArchitectureEnvironment setup, workflows, code standards, and commands.
Development SetupEndpoints, request/response formats, and authentication.
REST APIAuto-generated TypeDoc documentation for all modules.
API ReferenceTech Stack
| Layer | Technology |
|---|---|
| Framework | Next.js 16 (App Router, Turbopack), React 19, TypeScript (strict) |
| CMS | Payload CMS 3 (integrated mode, 23 collections, 4 globals) |
| Database | PostgreSQL 17 + PostGIS 3.5 |
| Maps | MapLibre GL JS, server-side clustering via PostGIS |
| State | React Query (server), Zustand (client), nuqs (URL) |
| UI | Tailwind CSS, Radix UI, shadcn/ui |
| i18n | next-intl (English, German) |
| Jobs | Payload Workflows (4 ingest workflows, 9 system jobs, 3 queues) |
| Testing | Vitest (unit/integration), Playwright (E2E) |
| Build | Turbo monorepo, pnpm workspaces |
Monorepo Structure
apps/
web/ Next.js app, Payload CMS, API routes
scraper/ TimeScrape runner (optional, Podman)
docs/ Documentation site (Nextra)
packages/
ui/ Shared UI components (shadcn/ui)
assets/ Logos and static assets (Git LFS)
payload-schema-detection/ CSV/Excel schema detection
eslint-config/ Shared ESLint config
typescript-config/ Shared TypeScript config
prettier-config/ Shared Prettier configRelated
- Guide — Using TimeTiles as an end user
- Self-Hosting — Deploying and operating TimeTiles
- Contributing — Contribution guidelines
Last updated on