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 🙏

© 2025 – Pkg Stats / Ryan Hefner

quickynab

v1.0.7

Published

Quick and easy bank transaction imports to YNAB - supports 116+ banks worldwide

Downloads

22

Readme

QuickYNAB

Tests Dependencies npm version npm downloads Docker Docker Pulls Last Commit License: MIT

Self-hosted app to import bank transactions to YNAB. Supports 116+ banks worldwide with drag-and-drop web interface and CLI.

QuickYNAB Web Interface

Why QuickYNAB?

YNAB only supports CSV imports through their web interface—you can't import transactions from their mobile apps. This means you need to be at a computer or switch to a browser every time you want to import a bank statement.

QuickYNAB solves this by providing a self-hosted solution that you can access from any device. Whether you're on mobile, tablet, or desktop, you can import your transactions through the web interface or automate imports entirely with the CLI.

Features

  • 📱 Import from Anywhere - Unlike YNAB's web-only CSV import, access QuickYNAB from any device
  • 🏠 Self-Hosted - Run on your own machine, your data never leaves your control
  • 🔒 Privacy-Friendly - No data collection, no tracking, no external servers
  • 🌐 Web App - Drag-and-drop interface with transaction preview
  • 💻 CLI - Command-line tool for automation
  • 🏦 116+ Banks - Auto-detects format from 25+ countries (bank2ynab)
  • Smart Imports - Prevents duplicates automatically

Quick Start

Docker (Easiest)

Quick Start:

docker run -d \
  -p 3000:3000 \
  -e YNAB_ACCESS_TOKEN=your_token \
  maiis/quickynab:latest

Docker Compose:

services:
  quickynab:
    image: maiis/quickynab:latest
    ports:
      - "3000:3000"
    environment:
      - YNAB_ACCESS_TOKEN=your_token
      - YNAB_BUDGET_ID=optional_budget_id
      - YNAB_ACCOUNT_ID=optional_account_id
    restart: unless-stopped

Then open http://localhost:3000

NPM

npm install -g quickynab
ynab init
ynab import statement.csv

# Preview transactions without uploading
ynab import statement.csv --dry-run

Configuration

Get your YNAB token from https://app.ynab.com/settings/developer

Docker/Web App: Set environment variables:

  • YNAB_ACCESS_TOKEN (required)
  • YNAB_BUDGET_ID (optional - preselects budget)
  • YNAB_ACCOUNT_ID (optional - preselects account)

CLI: Run ynab init (saves to ~/.quickynab/config)

  • Automatically uses configured budget/account
  • Override with --budget-id and --account-id flags

Supported Banks

Auto-detects CSV format for 116+ banks including:

  • 🇨🇭 Switzerland: Neon, UBS, ZKB, SwissCard
  • 🇩🇪 Germany: N26, ING-DiBa, Deutsche Bank, Sparkasse
  • 🇬🇧 UK: Revolut, Barclays, HSBC, Monzo
  • 🇺🇸 US: Chase, Bank of America, Wells Fargo

Full list

CLI vs Web App

Use Web App if: You want a visual interface, occasional imports, select account per import

Use CLI if: You want automation, batch processing, cron jobs, scripting

Docker Details

Image: Uses official Bun 1.x Alpine base image

  • Runtime: Bun for faster startup and lower memory usage
  • Security: Minimal Alpine base with only required dependencies
  • Health Check: Built-in HTTP health check on /health endpoint

Development

Requirements: Bun 1.0+

git clone https://github.com/maiis/quickynab
cd quickynab
bun install
bun run build
bun run web  # Start web server
bun run dev  # Development mode with hot reload

License

MIT