Skip to content

It uses the existing tab-data repo with all bar data to make some pretty graphs and get more insight into hackers spending in the space

Notifications You must be signed in to change notification settings

0x20/bar-graphs

 
 

Repository files navigation

Bar Graphs

Run in Linux or WSL - ledger filenames contain : which Windows doesn't allow.

Requires tab-data cloned into this directory.

Quick Start

# Start both servers
./dev.sh

Stack

  • Backend: FastAPI + GitHub OAuth + JWT
  • Frontend: React 19 + TypeScript + Vite 7 + Recharts
  • Data: Beancount ledger parsing with pandas

API

Endpoint Auth Description
GET /health No Health check
GET /auth/login No Redirect to GitHub OAuth
GET /auth/callback?code= No Exchange code for JWT
GET /api/debtors Yes List users with negative balances

Config

Edit backend/.env:

GITHUB_CLIENT_ID=xxx
GITHUB_CLIENT_SECRET=xxx
JWT_SECRET=xxx
ALLOWED_USERS=user1,user2
FRONTEND_URL=http://localhost:5173
TAB_DATA_PATH=../tab-data

Create GitHub OAuth App at https://github.com/settings/developers with callback http://localhost:5173/auth/callback

Requirements

  • Python 3.11+
  • Node.js 20+ (nvm use 20)

About

It uses the existing tab-data repo with all bar data to make some pretty graphs and get more insight into hackers spending in the space

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 96.7%
  • TypeScript 1.5%
  • Python 1.3%
  • CSS 0.3%
  • Shell 0.1%
  • JavaScript 0.1%