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!

    • klymilark@herbicide.fallcounty.omg.lol
      link
      fedilink
      English
      arrow-up
      1
      ·
      5 minutes ago

      I use org-roam (similar to Obsidian) to do that, the graph is neat for it! I only personally go to metamours, but I might pass an Obsidian vault around to see how deep that rabbit hole goes.

        • femtek@lemmy.blahaj.zone
          link
          fedilink
          English
          arrow-up
          1
          ·
          4 hours ago

          Yeah, we have been wanting to make a who is connected to who chart. I was going to use draw io but it was a little manual.

      • GenderNeutralBro@lemmy.sdf.org
        link
        fedilink
        English
        arrow-up
        1
        ·
        4 hours ago

        A poly group (also known as a polycule) is a network of polyamorous people’s relationships. Polyamory, in case you’re unaware, is the practice of having multiple romantic or sexual partners at the same time, in contrast to monogamy.

        If you were polyamorous and wanted to graph out your relationships, you could do it a few different ways. For example:

        • Just you and your partners. If any of your partners are also in relationships with each other, you’d draw lines between them as well.

        • Extend an extra level and include all of your partners’ partners (known as metamours), again connecting any pair on the graph who are partners.

        • Extend that further and include all of your partners’ partners’ partners (no specific term for this as far as I know). This would likely include people you don’t personally know, and it would be difficult to build a complete graph of all their relationships.

        Etc.