- fix(web): cast window through unknown in platform-sync.ts (TS2352) - docs: add AGENTS.md, README.md, CLAUDE.md, .windsurfrules, .cursorrules, env.example - feat(ios): port Recurrence.swift from web/src/lib/recurrence.ts - feat(ios): port NLParser.swift from web/src/lib/nl-parser.ts - feat(ios): port ContextMessages.swift from web/src/lib/context-messages.ts - feat(ios): add CMRoutine model + Routines.swift engine with state machine + templates - feat(ios): add RoutineListView, RoutineRunnerView, RoutineEditorView - feat(android): add RoutineScreen.kt with list, runner, templates, step controls Web: 373 tests passing, build succeeds with --webpack flag
18 lines
665 B
Plaintext
18 lines
665 B
Plaintext
# ChronoMind — Cursor Rules
|
|
# Read AGENTS.md for full context.
|
|
|
|
Project: ChronoMind — AI-Powered Contextual Clock & Timer
|
|
Product ID: chronomind
|
|
Stack: Next.js 16 (web) + SwiftUI (iOS) + Jetpack Compose (Android) + Fastify 5 (backend)
|
|
|
|
Rules:
|
|
- Web engine in web/src/lib/ — pure TS, no React
|
|
- Components in web/src/components/ — React UI only
|
|
- iOS shared in ios/ChronoMind/Shared/
|
|
- Android engine in android/.../engine/ — pure Kotlin
|
|
- Theme: --cm-* CSS props (web), ChronoMindTheme (native)
|
|
- Commits: type(scope): description
|
|
- Build web with --webpack flag
|
|
- Never console.log, never hardcode colors/URLs
|
|
- Every Cosmos doc: productId: "chronomind"
|