- Go 57.7%
- TypeScript 40.8%
- HTML 0.8%
- Dockerfile 0.4%
- Makefile 0.1%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
|
|
||
| .github | ||
| backend | ||
| docker | ||
| docs | ||
| frontend | ||
| .dockerignore | ||
| .env.example | ||
| .gitignore | ||
| docker-compose.build.legacy.yml | ||
| docker-compose.carddav-test.yml | ||
| docker-compose.legacy.yml | ||
| docker-compose.test.yml | ||
| docker-compose.yml | ||
| Dockerfile | ||
| LICENSE | ||
| README-developer.md | ||
| README.md | ||
Meerkat CRM - a simple CRM for the personal life
About the project
Meerkat CRM (Contact Relationship Management) is a self-hosted solution to keep track of your important contacts. As your digital rolodex it reminds you of birthdays, helps you to keep in mind dietary habits as well as names of spouses of contacts - and much more.
You can find the detailed documentation here: fbuchner.github.io/meerkat-crm/
Tip
Click here to try the Demo! (user: demo, password: test_12345)
Demo instance will be started on demand, expect some seconds delay. Demo data is reset periodically. Photo upload is disabled.
Features
- Contact management
- add and search contacts
- group contacts by circles (e.g. friends, family, work)
- store relationships of contacts (e.g. spouses, children)
- CardDAV server for two-way synchronization with your phone's contact list and CardDAV client to use with your own external server
- Network graph to visualize your contacts and relationships
- Notes and activities
- social network style timeline for contacts
- notes assigned to individual contacts
- activities with one or multiple contacts
- general notes (for e.g. journaling)
- Reminders
- Keep in touch through reminders and get e-mail notifications (via SMTP or resend)
- See upcoming birthdays
- Integrations
- Import data (from CSV, VCF and Monica), export data to CSV and VCF
- Connect external calendars
- Webhooks to integrate with your own systems
- SSO
- Usability
- Multiple languages (currently EN, DE, IT, ES, FR)
- Light and dark mode
Installation
Docker (Recommended)
Meerkat CRM ships as a single all-in-one image (ghcr.io/fbuchner/meerkat-crm)
that bundles the frontend and backend into one container. The easiest way to run
it is with Docker Compose:
-
Download the Docker Compose file:
curl -O https://raw.githubusercontent.com/fbuchner/meerkat-crm/main/docker-compose.yml curl -O https://raw.githubusercontent.com/fbuchner/meerkat-crm/main/.env.example -
Configure environment:
# Copy the environment template cp .env.example .env # Edit with your settings nano .env -
Start the container:
docker compose up -d -
Access the application: Open http://localhost:7300 in your browser.
Prefer to skip Compose? You can run the image directly.
docker run -d --name meerkat --restart unless-stopped \
-p 7300:8080 \
-e JWT_SECRET_KEY='<paste a secret here, changing it will invalidate logins>' \
-v "$(pwd)/data:/app/data" \
-v "$(pwd)/photos:/app/static/photos" \
ghcr.io/fbuchner/meerkat-crm:latest
All other settings are optional, see .env.example for e-mail notifications, CardDAV, and SSO. Pass them with additional -e flags, or use --env-file .env.
Contributing
Bugs and feature requests
This application is under development. You can open an issue to report a bug or request a new feature.
You can also participate and open up a pull request.
While AI-assistants can be used to support coding, please note that you are ultimately responsible for code quality. Do not open pull requests for hands-off "vibe-coding" developments, rather stick to feature requests in these cases.
Development
To set up this repository for development, follow these steps:
-
Clone the repository:
git clone https://github.com/fbuchner/meerkat-crm.git cd meerkat-crm -
Run the backend: Ensure you have Go installed. Then, set up your environment configuration:
cd backend # Copy the example environment file and configure it with your settings cp .env.example .env # Install dependencies and run go mod tidy source .env go run main.goThe project uses an SQLite database for storage. Database migrations run automatically on startup.
-
Run the frontend (in a second terminal):
cd frontend yarn install yarn start
You can find a more comprehensive overview for developers in the developer README.
Alternative software
Notable other personal CRM systems are
- MonicaHQ (Open Source, development seems to have stalled; the new version chandler is available at beta.monicahq.com)
- Dex (paid offering with social media integration)
- Clay (paid offering with focus on automation)
Other software that can be used to build or configure something similar includes
- Twenty (Open Source "classic" CRM system)