We are rebuilding Monica
The Evolution of Monica: A Total Rebuild
Monica v3 is officially on the horizon, with a target release date before the conclusion of 2026.
This post marks the beginning of a new series titled Building Monica, where I will document the journey of recreating the open-source personal CRM from the ground up. My goal is to be transparent about the challenges, the architectural pivots, and the failures encountered along the way.
🕰️ The Origin Story
Roughly a decade ago, I realized I had a significant flaw: I was terrible at remembering the small but vital details about the people in my life. Whether it was a child's name or a specific detail from a conversation months prior, things simply slipped through the cracks.
To solve this, I initially turned to professional CRM software. However, there was a fundamental mismatch:
| Feature | Professional CRM | Personal CRM (Monica) |
|---|---|---|
| Primary Goal | Revenue Generation | Relationship Maintenance |
| Target User | Salespeople | Friends & Family |
| Focus | Lead Conversion | Memory & Connection |
| Cost | Often expensive/per-seat | Open Source / Self-hosted |
Finding no suitable alternative, I built my own. After sharing the code on GitHub and Hacker News, the project exploded. With the help of co-founder Alexis and a massive community of contributors, Monica grew into a powerhouse with 25,000+ stars on GitHub.
🏗️ The Burden of a Decade
While Monica's growth was organic, it came with a cost. Building software incrementally over ten years means that early decisions—made before I truly understood how to model personal relationships in code—became permanent constraints.
The current version is perfect. The current version is no longer the tool I would build today.
As we added features like:
- 🎁 Gift tracking
- 🐾 Pet management
- 📅 Reminders and Activities
- 📝 Notes and Addresses
...we were often forced to "hack" new ideas around legacy decisions. Eventually, I had to ask myself:
"If Monica didn't exist today, and I had to build a personal CRM using everything I've learned over the last ten years, what would it actually look like?"
🧬 Rethinking Relationships
The most profound realization was that relationships are not just attributes of a person; they are their own distinct domain.
In the old model, we defined a "Contact" and attached data to them. But real life is messy. Consider the logic of a sibling relationship:
Real-world families involve complex structures: divorces, step-parents, adoptions, and diverse cultural definitions of kinship. A rigid database schema cannot capture this.
The Architectural Shift
🎯 The Vision for v3
Monica v3 is not a mere "reskin" or a UI update. While the interface will be more playful and personal, the core change is about power and flexibility.
Our Goals for the Rebuild:
- Treat relationships as first-class concepts.
- Implement "Good Defaults" (so users aren't overwhelmed).
- Provide deep customization for power users.
- Avoid the "Enterprise Software" feel.
- Maintain strict privacy and data ownership.
I refuse to optimize for simplicity if it means the software can only represent "simple" lives. I want a system that can handle the complexity of any human network without feeling like a corporate database.
🔐 Privacy and Philosophy
The core tenets of Monica remain unchanged. The project will stay open source and self-hostable. If you are trusting a piece of software with your most intimate personal data, you should own that data entirely.
Furthermore, Monica should not dictate the "importance" of your contacts. It is a tool to help you organize and remember, not a judge of your social circle.
Technical Note: The "Copy" Logic
For those interested in the small details, here is a snippet of the logic used for the "Copy Link" functionality in the current UI:
{
copied = true;
setTimeout(() => copied = false, 2000)
}
// x-text="copied ? labels.copied : labels.copy"
Stay tuned for more updates as we build the future of personal relationship management.