I’ve been using various contact managers but they all feel like sales tools, so I built Nametag to track the people I actually care about - friends, family, colleagues. It maps relationships, tracks birthdays, and visualizes your network as an interactive graph.
Self-hosting highlights:
- Docker Compose setup - PostgreSQL, Redis, Next.js app. One command to start
- No email service needed - Accounts auto-verify, works completely offline
- Unlimited contacts - No artificial limits (hosted version caps free tier at 50)
- Complete data ownership - Your relationship data stays on your infrastructure
- Optional email - Can configure Resend if you want birthday/reminder emails
- No phone-home - Runs entirely on your network if you want
- AGPL-3.0 licensed - Full source access
Features:
- Track people with flexible attributes (name, birthday, contact info, notes)
- Map relationships between people (family, friends, colleagues, custom types)
- Interactive D3.js network graph visualization
- Custom groups for organizing contacts
- Birthday reminders (if you configure email)
- Dark mode, i18n (English and Spanish for now, but more are coming)
- Mobile-responsive
Tech stack:
- Next.js 16 (TypeScript)
- PostgreSQL + Prisma ORM
- Redis for rate limiting
- D3.js for graph visualization
- Tailwind CSS
Quick start:
git clone https://github.com/mattogodoy/nametag
cd nametag
# Edit .env with your secrets
docker-compose up -d
Database migrations run automatically on first start.
Access at localhost:3000.
There’s also a hosted version at https://nametag.one/ if you don’t want to self-host (helps fund development).
GitHub: https://github.com/mattogodoy/nametag
Happy to answer questions about the setup, architecture, or deployment!
Quick question, when hosted plan says up to 50 people, is that you can add 50 people to remember or 50 people can access one database?
It means you can add up to 50 contacts. I might have to clarify that. Thanks!
Congratulations on the launch! Could this also be used as a genealogy tree? I’ve been wanting for a long time to create mine but the options I found were too expensive and I wasn’t up to create it from scratch (too long and not future proof).
Thank you! Yes, I’ve thought about this and it’s in my roadmap to create an “export group as family tree to PDF” function. Would that be good enough for your needs?
I remember using Monica years back for something similar. Quickly lost the habits of using it since it was a lot of work updating and it didn’t feel like it was worth the effort.
That’s one of the reasons I started this project. Monica is a bit too complex for my needs.
Makes sense. Good work.
This looks great. I’m running a Teable instance, but sometimes it feels like it is “too much” sometimes.
I think I’ll deploy this for fun to check out. I don’t see anything specific here for things like gift ideas or favorite flowers/colors? Like custom tags/categories/attributes.
I’m using Teable to track things like that, but I love the visualization here, reminds me of my obsidian mind map lol.
Thanks for the feedback! I wanted to keep it simple, so I just added a single notes field for purposes like those. This said, I am also considering adding custom attributes to people to solve these needs that apply to some of the contacts, but not all.
I would appreciate some type of custom attributes, but the notes section works fine as-is, so definitely not a huge “need” IMO.
I have used Monica/other CRMs in the past, but they all felt a bit too corporate or “sales” driven like you said in your OP.
I spun up a quick docker instance in my test environment and I’m using it right now, it’s been quite solid! I do have some confusion with how relationships get applied(from/to in regards to child/parent), but I believe I just need to use it a bit more to get used to the “flow” of how it is supposed to work.
My biggest want/need is being able to select multiple people at once to add to another person, so I guess a “bulk” edit or multi-select. Like adding 10 “child” to one “parent” at once if all of the children have already been created. Or if some logic can be applied where if one parent(dad) has three children, then you add a spouse(mom) to dad, then nametag can auto-add or offer to bulk edit the three children to add the new spouse(mom) as a parent too? Just quicker/better/fluid workflow.
Again, the site as-is is already solid. Just some fine-tuning IMO.
Thank you so much! This is very valuable feedback. I’ll add bulk edits to my to-do list :)
Looks good. I’ve considered a personal CRM for some time and have been using Obsidian a little bit. Having said that, I am open to something more tailored to the task. A question: what would it look like if someone wanted to export their data out of this tool later? Do I need to be a programmer to migrate away or is it relatively simple?
There is an “export” option in the account settings :) It’s not in any specific standard (I’m planning to implement CardDAV soon), but it’s exported to JSON, so you can see all the data.

Great to hear. I might give it a try in a limited area, like meeting people from a new hobby or friend group, then expand from there if it works f or me. I definitely see the benefit, especially for ADHD types who might otherwise forget to call someone for 1…2…3…12 months. :-D Thank you for making a cool piece of software.
Great! Thanks for your kind words. Let me know if you like it :)
No reason this should need a server.




