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

@dbu6/app

v0.2.1

Published

Self-hosted double-entry bookkeeping for personal finances: bank and credit card statements in, balanced journal entries out, categorized by an LLM on your own machine.

Readme

dbu6

Self-hosted double-entry bookkeeping for personal finances. Point it at your bank and credit card statements and it works through them: the rows become balanced journal entries, transactions are categorized, and every statement is checked against the balances your books compute before anything is posted.

  • Statements in, journal entries out. Bank and credit card statements in PDF, CSV and XLS are read by parsers.
  • Categorized by an LLM on your own machine. Your rules run first; Claude Code, Codex or Pi handles the rest.
  • Checked on every import. A statement's balances are compared with the books. A mismatch stops the import.
  • Double-entry books with standard reports. Trial balance, balance sheet, income statement, net worth over time, and reports of your own.
  • A folder you own. One SQLite database, plain-text configuration, no cloud.

Requirements

Node.js 22.18 or newer, with npm. Statement imports also need uv and pdftotext (from poppler). git and a coding agent (Claude Code, Codex or Pi) are optional. A coding agent needs the Sapporta agent skill, installed once per machine by the npx skills add line in Getting started; the sapporta command that skill's work runs through comes in the project with dbu6, and npx dbu6 check confirms it is wired up.

Quick start

npm init @dbu6 my-books
cd my-books
npx dbu6 dev

npm init @dbu6 creates the folder, installs dbu6 into it and makes the database. dev serves the app: open http://localhost:2345 and sign up. Home then takes you through your chart of accounts, a bank or card, a recent statement for it, your opening balances, and reviewing what dbu6 categorized.

A coding agent works in the folder when it is asked to. Give it access before handing it a prompt:

npx dbu6 agent env
npx sapporta api get /api/auth-context

agent env mints a token into the gitignored .env.agent, and the second command answers with the user and workspace it acts as. npx sapporta … is dbu6's own copy of the Sapporta CLI — there is nothing else to install.

Getting started has each step in full, the sample data, everyday commands and backups.

The packages

dbu6 is published on npm by the dbu6 organization:

  • @dbu6/app is dbu6 itself: the app, the dbu6 command, the parsers and the guides. It is the one dependency of a books folder.
  • @dbu6/create is what npm init @dbu6 runs. It holds no code of its own beyond running dbu6 init from the @dbu6/app of the same version, so npm init @[email protected] makes a folder on dbu6 1.2.3.

Documentation

  • Getting started — install, the first run, the setup steps, everyday commands, backups.
  • Your books — the folder, its accounts and journal entries, and what is yours to change.
  • Importing statements — parsers, layouts dbu6 cannot read, freeform transactions, balance checks.
  • Categorization — your mapping rules and the LLM that handles the rest.
  • Reports — the reports that ship, reports of your own, and the hledger export.
  • DBU6-BOOKS.md — the guide a coding agent reads, and the commands it runs.
  • DEPLOYMENT.md — running your books on a server.
  • DEVELOPMENT.md — working on dbu6 itself.

License

MIT