
Meerkat CRM
Self-hosted personal CRM for tracking contacts, relationships, birthdays, and reminders, built with Go and React.
Open source alternative to:



Meerkat CRM is a self-hosted, open source contact manager for your personal life rather than a business sales pipeline. Built with a Go backend and a React frontend, it works as a digital rolodex of friends, family, and professional contacts, keeping track of birthdays, dietary habits, spouses, and the last time you were in touch.
Contacts can be grouped into circles, linked through relationships, and explored as a network graph. Each contact has a social-style timeline with notes and activities, and the app also handles general notes for journaling, reminders with email notifications, and upcoming birthdays. A built-in CardDAV server keeps contacts in two-way sync with your phone, a CardDAV client connects to an external contact server, and calendars can be imported over CalDAV or ICS.
Meerkat CRM ships as a single Docker image that bundles the Go API and React frontend, stores everything in a local SQLite database, and needs little more than a JWT secret to start. Data can be imported from CSV, VCF, or Monica, exported to CSV and VCF, and pushed to other systems through webhooks. OIDC single sign-on is supported, the interface is available in English, German, Italian, Spanish, and French, and the whole application runs comfortably on a small VPS or Raspberry Pi.
Categories:
Build with:
Frequently Asked Questions
Can I sync Meerkat CRM with the contacts on my phone?
Yes. Meerkat CRM includes a CardDAV server that syncs contacts two-way with the address book on iOS and Android, plus a CardDAV client for connecting an external contact server. CardDAV is disabled by default and is enabled with the CARDDAV_ENABLED environment variable when you start the container.
What data can I import into Meerkat CRM?
Contacts can be imported from CSV, VCF, and Monica, and exported to CSV and VCF. External calendars are pulled in over CalDAV or ICS on a configurable interval, six hours by default, so existing events show up as activities alongside your contacts.
How do reminders and email notifications work?
A scheduled job runs daily at the time set by REMINDER_TIME, 06:00 by default, with a separate timezone setting, and emails you about reminders that are due. Email can be delivered through SMTP, Resend, or both, and upcoming birthdays are listed in the app.
What are the system requirements to self-host Meerkat CRM?
The official Docker image bundles the Go backend and React frontend in a single container and needs only a JWT secret key of at least 32 characters to boot. Data is stored in a local SQLite database with separate volumes for the database and uploaded photos, so a small VPS or Raspberry Pi is enough.
Does Meerkat CRM support single sign-on and multiple languages?
Single sign-on uses OIDC with any compliant provider, with an optional setting to create accounts automatically on first login. The interface is translated into English, German, Italian, Spanish, and French, and includes light and dark themes.
OpenAltFinder Score
Project Details
Repository details
Updated 11/12/2026, 6:00:51 AM
View RepositoryRepository activity
Get the latest open source alternatives delivered weekly.
Discover tools that give you freedom from proprietary software.









Meerkat CRM vs Monica