A production-ready system to convert blockchain transactions into professional, audit-ready PDF receipts.
TxProof is a full-stack application designed to generate detailed financial receipts for blockchain transactions. It is architected as a Secure Monorepo with strict isolation between the frontend, backend, and smart contracts.
- Automated Receipt Generation: Converts blockchain transactions into professional, audit-ready PDF receipts.
- Transaction Classification: Enterprise-grade deterministic semantic classifier for transaction types.
- Public Developer APIs: Robust API suite for programmatic transaction analysis and receipt generation.
- Support System: Accept donations via
SupportVault.solwith Anonymous contribution support. - Event-Driven Indexer: Hybrid indexing with live push-based ingestion + background verification.
- Admin Dashboard: Control center for ad management, user verification, and quota monitoring.
- Zero-Knowledge Privacy: Client-side processing architecture ensuring sensitive user data never leaves the browser.
- Enterprise Security: CSRF protection, admin wallet signatures, and strict resource isolation.
- High-Fidelity Layouts: Professional, printable layouts rendered natively in the browser.
This project uses a Workspace-based Monorepo structure:
/
├── apps/
│ ├── web/ # [Next.js] Frontend & Client-Side Print Engine
│ └── api/ # [Node.js] Backend & Semantic Classifier
│
├── packages/
│ ├── domain/ # Shared Types & Schemas
│ ├── contracts/ # Smart Contracts & ABIs
│ ├── database/ # PostgreSQL Client & Migrations
│ └── config/ # Shared Environment Constants
The "Show Your Support" feature uses a Hybrid Indexing strategy:
- Atomic Ingestion: An
IndexerServicepolls the smart contract and uses a custom RPC function to atomically ingest events into PostgreSQL. - Automated Aggregation: Database triggers automatically maintain a real-time leaderboard in the
contributorstable, ensuring O(1) read performance. - Privacy: Respects the on-chain
isAnonymousflag for all display logic.
- Node.js v22+ (LTS)
- PostgreSQL (Supabase recommended)
- Alchemy (or other RPC provider)
-
Clone and Install:
git clone <repository-url> cd txproof npm install # Installs all workspace dependencies
-
Configuration:
- Backend: Create
apps/api/.env(Seeapps/api/.env.exampleor DEPLOYMENT.md). - Frontend: Create
apps/web/.env.local.
- Backend: Create
To start the entire system (Frontend + Backend + Watchers):
npm run devOr run individual workspaces:
# Frontend only (localhost:3000)
npm run dev -w apps/web
# Backend only (localhost:3001)
npm run dev -w apps/api- Deployment Guide: Instructions for Vercel and Render.
- Contributing: Guidelines for developing in the monorepo.
- Contribution System Architecture: Deep dive into the supporter leaderboard logic.
- Security Audit: Details on the security architecture.
Private. All rights reserved.