# The Erebos Lab Build Log

> A year of shipping a studio of apps in the open — the bugs, the bad architecture calls, the metrics that read zero, and the honest lessons behind them. 365 posts across 12 months, written as @caelum0x4.

- [Month 1: The Machine That Builds the Apps](https://ereboslab.com/blog/month-1-the-machine-that-builds-the-apps/): the studio itself. How one person runs a monorepo, a multi-agent build loop, and a shared core without drowning. (Day 1–30, 30 posts)
- [Month 2: Aether: Building a Wallet I'd Actually Trust](https://ereboslab.com/blog/month-2-aether-building-a-wallet-id-actually-trust/): self-custody engineering. Keys, cost-basis P&L, RBF, curve-only pricing, the DeFi knowledge graph — and the paranoia of holding someone's money. (Day 31–60, 30 posts)
- [Month 3: Verification Is the Product](https://ereboslab.com/blog/month-3-verification-is-the-product/): not getting fooled. When an agent writes the code and grades its own homework, the only thing between you and a green-checkmark disaster is a gate that actually runs. (Day 61–90, 30 posts)
- [Month 4: Cipher & the Retention Loop](https://ereboslab.com/blog/month-4-cipher-and-the-retention-loop/): a daily code-breaking game as a distribution experiment. Habit design, shareable results, generating puzzles legally, and why retention is harder than acquisition. (Day 91–120, 30 posts)
- [Month 5: The App Store Gauntlet](https://ereboslab.com/blog/month-5-the-app-store-gauntlet/): the craft between "works on my simulator" and "a stranger installed it." Privacy manifests, account deletion, Sign in with Apple, RevenueCat wiring, and eating review rejections. (Day 121–150, 30 posts)
- [Month 6: Huddle: Real-Time Is Hard](https://ereboslab.com/blog/month-6-huddle-real-time-is-hard/): self-hosted team chat on Matrix + LiveKit. Federated messaging, 3-level notifications, read receipts, screenshare, and the distributed-systems problems that don't exist until they do. (Day 151–175, 25 posts)
- [Month 7: Knowledge Graphs: Model the Relationships](https://ereboslab.com/blog/month-7-knowledge-graphs-model-the-relationships/): the shared idea under CalDesk's "healthier swaps" and Aether's DeFi graph. Ontology design, entity resolution, GraphRAG, and why the questions worth asking are relational. (Day 176–200, 25 posts)
- [Month 8: Making It Pay](https://ereboslab.com/blog/month-8-making-it-pay/): monetization plumbing. RevenueCat entitlements, AdMob placement, paywall design, free-trial psychology, and the bracketed post I most want to earn — the first paying customer. (Day 201–225, 25 posts)
- [Month 9: Distribution Is the Actual Boss](https://ereboslab.com/blog/month-9-distribution-is-the-actual-boss/): the fight I dodged for 8 months. 0 users, landing pages, SEO, launches, the cold-start problem, and the humbling truth that shipping was the easy 20%. (Day 226–250, 25 posts)
- [Month 10: Where the Data Lives](https://ereboslab.com/blog/month-10-where-the-data-lives/): offline-first vs cloud-first, the decision that shapes every syncing app. Echo's cloud-synced voice journal, Calc+'s local vault, conflict resolution, and privacy as architecture. (Day 251–275, 25 posts)
- [Month 11: Infinite Content, Zero Theft](https://ereboslab.com/blog/month-11-infinite-content-zero-theft/): procedural and generative content done legally. The engine behind Cipher's puzzles and Vertex's levels — compute it or compose it originally, never scrape it. Ethics as a moat. (Day 276–300, 25 posts)
- [Month 12: The Honest Ledger](https://ereboslab.com/blog/month-12-the-honest-ledger/): the year-in-review. What shipped, what died, the real numbers, the hard lessons, and what's next. No spin — the truest post is the hardest one. (65 days: Day 301–365.) (Day 301–365, 65 posts)

## Follow along

New notes land as the build continues. Follow the day-to-day on X: @caelum0x4 (https://x.com/caelum0x4) — or caelum0x42@gmail.com for anything else.
