CRM for the personal life https://fbuchner.github.io/meerkat-crm/
  • Go 49.6%
  • TypeScript 48.8%
  • HTML 1%
  • Dockerfile 0.2%
  • Makefile 0.2%
  • Other 0.1%
Find a file
Frederic Buchner be82541bae
Merge pull request #163 from fbuchner/fix/address-types
Allow custom type addresses
2026-06-23 22:12:40 +02:00
.github Add frontend unit tests 2026-06-23 21:23:38 +02:00
backend Merge pull request #162 from fbuchner/fix/code-improvements 2026-06-23 22:06:16 +02:00
docs Bump concurrent-ruby from 1.3.6 to 1.3.7 in /docs 2026-06-23 19:21:03 +00:00
frontend Allow custom type addresses 2026-06-23 22:12:11 +02:00
.env.docker.example Add dedicated mailer and smtp functionality incl. new env vars 2026-06-01 17:36:05 +02:00
.gitignore Update E2E tests incl. central login and idempotency for test run data 2026-06-11 13:45:41 +02:00
docker-compose.build.yml Change default frontend port (from 3000 to 7300) 2026-03-15 19:36:03 +01:00
docker-compose.test.yml Update E2E tests incl. central login and idempotency for test run data 2026-06-11 13:45:41 +02:00
docker-compose.yml Removed PGID/PUID from .env.docker since it would be overwritten. Added comment to compose file 2026-03-30 09:05:00 +02:00
LICENSE Create LICENSE 2024-10-06 21:36:00 +02:00
README-developer.md Add e2e tests with playwright 2026-01-19 22:44:40 +01:00
README.md Change default frontend port (from 3000 to 7300) 2026-03-15 19:36:03 +01:00

Meerkat CRM - a simple CRM for the personal life

Meerkat CRM Logo

License: MIT Backend: Go Frontend: React

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.

Meerkat CRM Demo

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
  • 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
    • See upcoming birthdays
  • Usability
    • Multiple languages (currently EN and DE)
    • Light and dark mode

Installation

The easiest way to run Meerkat CRM is with Docker Compose:

  1. 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.docker.example
    
  2. Configure environment:

    # Copy the Docker environment template
    cp .env.docker.example .env.docker
    
    # Edit with your settings
    nano .env.docker
    
  3. Start the containers:

    docker compose --env-file .env.docker up -d
    
  4. Access the application: Open http://localhost:7300 in your browser.

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:

  1. Clone the repository:

    git clone https://github.com/fbuchner/meerkat-crm.git
    cd meerkat-crm
    
  2. 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.go
    

    The project uses an SQLite database for storage. Database migrations run automatically on startup.

  3. 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)