Files
arah2/IDEAS.md
T
araharah-executor 91ad0c9d93 docs: generate + verify project documentation — canonical docs, per-package READMEs, verified fix pass
- New: docs/ARCHITECTURE.md, docs/GETTING-STARTED.md, docs/DEVELOPMENT.md,
  docs/TESTING.md, docs/CONFIGURATION.md (colored mermaid diagrams, quoted labels)
- Regenerated README.md (arah² / arah2bot naming, canonical clone URL)
- New per-package READMEs: theme/, bot/, web/
- Verified 13 docs against the live codebase (2 fix iterations + 2 residual
  corrections); corrected 56 stale claims across AGENTS/DESIGN/IDEAS/GSD_FIX
2026-10-23 20:56:40 +08:00

2.6 KiB
Raw Blame History

IDEAS.md

Vision

A Dieter Rams–inspired minimalist navigation app, built on OpenStreetMap and powered through Telegram. Every design choice follows Rams’ principle: Less, but better.

Core Principles

Clarity: Every interaction is obvious and purposeful.

Minimalism: No excess decoration, only functional elements.

Consistency: Unified typography, spacing, and iconography.

Timelessness: Avoid trends; design remains relevant for years.

User Experience

Telegram-first: Commands and inline queries for reports, search, and navigation.

Map snapshots: Delivered as clean images with overlays for traffic events.

Navigation output: Text-based directions with optional minimalist map tiles.

Reports: Simple commands with location sharing — planned, not built. Implemented commands today are /start (+ /mula), /help, /privacy (+ /privasi); /accident, /traffic, /hazard are future report commands.

Feedback loop: Concise updates about nearby events.

Visual Design

Color Palette:

Signal Orange (#EB8008)

Functional Red (#ED3F1C)

Olive Green (#736B1E)

Soft Beige (#D9D2C6)

Matte Black (#1A1A1A)

Typography:

Geist (body) / Space Grotesk (headings) — as implemented in the token package; Helvetica Neue / Inter was the original idea

Regular for body, Bold for emphasis

Icons:

Line-based, monochrome with accent colors

Accident = ⚠️, Traffic = 🚗, Hazard = ⛔

Architecture Overview

Frontend: Telegram Bot + Mini App on Cloudflare Workers with static assets (Workers superseded Pages; PWA still optional/future)

Backend: grammY on Cloudflare Workers receiving updates at the POST /telegram/webhook endpoint

Database today: Cloudflare Workers KV (TTL-only chat sessions); Neon (Postgres + PostGIS) remains the target for event storage

Routing: not wired yet — validated target stack is Valhalla + Photon (OSRM references in older docs are superseded)

Tiles today: OpenFreeMap (theme/basemap/liberty-rams.json); Maptiler was the original idea

Queue: none yet — RabbitMQ is future/aspirational, deferred out of v1

Storage: none yet (no R2 binding in bot/wrangler.jsonc); R2 remains a future option for map snapshots

Monitoring: none yet — Prometheus + Grafana are future/aspirational

Email: none yet — Resend is future/aspirational

Gamification

Points for validated reports

Leaderboards via Telegram bot

Minimalist badges (circle outlines with symbols)

Future Ideas

Regional clusters via Telegram groups

Voice-to-text reporting

Offline mode with cached routes

API layer for anonymized traffic data

Motto

"Good design is as little design as possible." — Dieter Rams