Files
morpheus/CLAUDE.md
Maxim Kalistratov a5744ea60d Initial commit
2026-02-12 21:23:44 +04:00

45 lines
1.7 KiB
Markdown

# Morpheus — Project Context
Privacy-centric social network for Russian-speaking users. Built on Nostr.
Private, not anonymous. NIP-44 E2E encryption for DMs. No ads, ever.
## Tech Stack
- **Protocol:** Nostr (NIP-01, NIP-44, NIP-29, NIP-40, NIP-46, NIP-56, NIP-96)
- **Media:** Blossom / NIP-96
- **Platforms:** Flutter/Dart. Mobile-first (iOS + Android), Web PWA, Desktop
- **Key storage:** Secure Enclave / Keystore, Shamir social recovery, encrypted cloud backup
## Architecture
- NIP-44 E2E for all DMs — server never has plaintext
- Public posts are public (by design)
- Metadata visible to relay operators — see [threat model](docs/threat-model-and-workarounds.md)
- No tracking, no ad infra, no behavioral profiling
- Monetization: subscriptions, marketplace, creator tools — see [docs/monetization.md](docs/monetization.md)
- Web of trust relay gating (NIP-02 follow count) — see [docs/web-of-trust.md](docs/web-of-trust.md)
## Tooling
- **Linting:** `just lint-md` — runs markdownlint-cli2
- **Git hooks:** lefthook — see `lefthook.yml`
- **Docs:** EN + RU, keep in sync — see [README.md](README.md) for full table
## Design system
See [docs/design-system.md](docs/design-system.md). Key values:
- Primary: Morpheus Violet `#7C3AED`, dark mode first
- Fonts: Inter (UI), JetBrains Mono (code), Manrope/Unbounded (display)
- 4px spacing grid, `6/10/16/24px` radius scale
- Rounded-square avatars with pubkey-hash gradient fallback
## Rules
- No ads logic, tracking pixels, analytics SDKs, or behavioral profiling — ever
- All DM code must use NIP-44 — no plaintext DM paths
- UI copy in both EN and RU
- Prefer simplicity over configurability
- Speed is a feature
- When in doubt, choose the more private option