npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

axis-crm

v1.1.0

Published

A git-based CRM for freelancers and small teams. Markdown + YAML + Obsidian + n8n.

Downloads

486

Readme

Axis CRM

A git-based CRM for freelancers and small teams.

Manage your clients, projects, meetings, contacts, rates, and files — all as Markdown in a git repo. No database, no SaaS, no vendor lock-in.

Works in any text editor. Optimized for Obsidian with Dataview dashboards. Supports automation through n8n workflows.

Quick Start

npx axis-crm init
cd crm
git init && git add -A && git commit -m "init: axis-crm"

That's it. You have a working CRM. Open in Obsidian and open CRM Dashboard.md.

Why

You're a freelancer. You have 5-10 clients. You need to know:

  • Who are my contacts at each client?
  • What projects am I working on and what's their status?
  • What did we agree on in the last meeting?
  • What's my hourly rate for this client?
  • Where's the contract?

You don't need Salesforce, HubSpot, or a $50/month tool. You need a folder structure that makes sense, with version history and zero maintenance.

Axis CRM gives you:

  • One folder per client — contacts, meetings, projects, communication, files, all in one place
  • Billing rates — track hourly/daily rates per client in frontmatter
  • Meeting notes — auto-saved from Fireflies via n8n (or add manually)
  • Project tracking — scope, briefs, deliverables, timeline per project
  • Version history — every change is a git commit, nothing is ever lost
  • Dashboards — Obsidian Dataview queries show you everything at a glance
  • AI-ready — CLAUDE.md included, works with Claude Code and Cursor out of the box

What a Client Looks Like

clients/acme-consulting/
  README.md                  # overview, status, rates, industry
  contacts/
    jana-novakova.md         # name, role, email, phone, notes
    tomas-dvorak.md
  meetings/
    2026-02-10-kickoff.md    # agenda, notes, action items, transcript
    2026-03-15-review.md
  projects/
    web-redesign/
      README.md              # scope, timeline, status, value
      brief.md              # client brief
      deliverables/
      notes/
  communication/
    2026-03-01-price-agreed.md   # key decisions and agreements
  files/
    contracts/
    proposals/
    invoices/

Every file uses YAML frontmatter for structured data. Git gives you the history.

Billing Rates

Track what each client pays you:

# in clients/acme-consulting/README.md frontmatter
hourly_rate: 120
manday_rate: 960
currency: 'USD'

Query across all clients in Obsidian: "show me clients sorted by hourly rate" — just works with Dataview.

Structure

axis-crm/
  clients/              # each client = a folder (the core of the CRM)
  leads/                # potential clients (optional pipeline)
  templates/            # templates for clients, contacts, meetings, projects
  rules/                # field definitions, folder structure docs
  scripts/              # shell scripts for common operations
  automations/          # n8n workflow exports (meeting notes, research)
  dashboards/           # Obsidian Dataview dashboards
  CRM Dashboard.md      # main overview
  CLAUDE.md             # AI agent instructions

Scripts

| Script | What it does | | --- | --- | | new-project.sh | Create a new project for a client | | validate.sh | Check all clients for required fields and structure | | new-lead.sh | Create a new lead (for the optional pipeline) | | convert-to-client.sh | Convert a lead into a full client folder |

# Add a new project to a client
./scripts/new-project.sh acme-consulting "Mobile App"

# Validate your CRM data
./scripts/validate.sh

Automations

Two optional n8n workflows are included:

Meeting to CRM — Fireflies records a meeting, webhook fires, AI (Claude) identifies the client, extracts a summary and action items, and commits the meeting notes to the right client folder. Automatically.

Client Research — Send a company name + website URL, get back a structured client profile with contacts, services, and business registry data.

Setup: automations/README.md

Dashboards

Requires Obsidian + Dataview plugin.

| Dashboard | Shows | | --- | --- | | CRM Dashboard.md | Active clients, recent meetings, overview | | dashboards/client-overview.md | All clients with status, priority, rates | | dashboards/pipeline.md | Lead pipeline by stage (if using leads) | | dashboards/hot-leads.md | High-score leads ready for outreach |

Lead Pipeline (Optional)

If you also want to track potential clients before they become clients:

new → enriched → qualified → contacted → responded → opportunity → client

Leads are scored 0-100. When a lead converts, run convert-to-client.sh and it becomes a full client folder. Details in rules/.

License

MIT — use it, fork it, make it yours.