Ushering in a new era of financial management with cutting-edge AI
Badget redefines how you track, analyze, and optimize your finances, ensuring smarter, more secure financial decisions. Gain unparalleled insights into your spending habits and financial patterns, empowering you to budget better and experience more.
Badget aims to be the "Copilot for Money" - an AI-powered financial management platform that provides:
- Unified Financial Dashboard - All accounts in one place via Plaid integration
- AI-Driven Insights - Smart spending analysis, trend detection, and personalized recommendations
- Automated Budgeting - Dynamic budget creation and optimization based on spending patterns
- Real-time Financial Health - Instant alerts, goal tracking, and financial score monitoring
- Family-First Design - Multi-user households with role-based permissions and shared budgets
Our system implements a clean separation between authentication and business logic:
- User identity and session management
- OAuth provider integration (Google, GitHub, etc.)
- Better-auth powered authentication
- Independent of business domain
- Financial domain models (accounts, transactions, budgets)
- Family/household organization
- AI insights and recommendations
- Where the actual application logic lives
- Clean Separation - Auth concerns vs business logic are completely separate
- Auth Flexibility - Can swap auth systems without touching financial data
- Multi-Tenancy - Families can have multiple users with different roles
- Scalability - Different optimization strategies for each layer
- Maintainability - Clear boundaries make code easier to understand and modify
// Authentication Layer
User - Session - Account - Verification
// Application Layer
AppUser → Family → FinancialAccount
→ Budget
→ Transaction
→ Category
→ Goal
→ AIInsight- Central organizing unit for households
- Role-based access control (Owner, Admin, Member, Viewer)
- Shared budgets and financial goals
- Privacy controls for sensitive accounts
- Plaid-connected accounts
- Manual accounts for cash, crypto, etc.
- Account types: Checking, Savings, Credit Card, Investment, Loan
- Real-time balance and transaction sync
- Categorized spending/income records
- AI-powered category suggestions
- Merchant data enrichment
- Split transactions for shared expenses
- Recurring transaction detection
- Category-based budgeting
- Smart budget suggestions based on spending history
- Rollover handling for unused budget
- Goal-linked budgets
- Alert thresholds and notifications
- Hierarchical category structure
- Custom categories per family
- AI-powered transaction categorization
- Category-based insights and trends
- Savings goals, debt payoff, investment targets
- Progress tracking and projections
- Automated recommendations
- Visual progress indicators
- Spending pattern analysis
- Budget optimization suggestions
- Bill negotiation opportunities
- Investment recommendations
- Anomaly detection and alerts
- Auth - Account verification and routing numbers
- Transactions - Historical and real-time transaction data
- Accounts - Account balances and metadata
- Identity - Account holder information
- Income - Income verification and payroll data
- Assets - Account balance verification
- Webhook Integration - Real-time transaction updates
- Smart Syncing - Efficient data fetching and storage
- Error Handling - Robust retry mechanisms and user communication
- Rate Limiting - Respect Plaid API limits and optimize calls
// Plaid → Badget Mapping
PlaidAccount → FinancialAccount
PlaidTransaction → Transaction + Category (AI-assigned)
PlaidBalance → Real-time account balance updates
PlaidIncome → Income tracking and budgeting insights- ML-powered transaction categorization
- Merchant name analysis and pattern recognition
- User feedback loop for continuous improvement
- Custom category creation and management
- Pattern Recognition - Identify spending trends and anomalies
- Predictive Analytics - Forecast future expenses and income
- Comparative Analysis - Benchmark against similar households
- Seasonal Adjustments - Account for holiday/seasonal spending
- Smart Budget Creation - AI-suggested budgets based on spending history
- Dynamic Adjustments - Real-time budget recommendations
- Goal Alignment - Ensure budgets support financial goals
- Optimization Alerts - Suggest budget reallocation opportunities
- Holistic Assessment - Debt-to-income, savings rate, spending efficiency
- Improvement Recommendations - Specific actions to improve score
- Progress Tracking - Monitor financial health over time
- Benchmarking - Compare against industry standards
- End-to-end Encryption - All sensitive data encrypted at rest and in transit
- PCI DSS Compliance - Payment card industry standards
- SOC 2 Type II - Security and availability controls
- GDPR Compliance - European data privacy regulations
- Multi-factor Authentication - Required for sensitive operations
- Role-based Access Control - Granular permissions system
- Audit Logging - Complete activity tracking
- Regular Security Audits - Penetration testing and vulnerability assessment
- Data Minimization - Only collect necessary information
- Retention Policies - Automatic data purging after specified periods
- User Control - Full data export and deletion capabilities
- Anonymization - Personal data removed from analytics
- Complete database schema implementation
- User authentication and session management
- Basic Plaid integration (Auth, Accounts, Transactions)
- Simple dashboard with account overview
- Basic transaction categorization
- Advanced transaction management and categorization
- Budget creation and tracking
- Goal setting and progress monitoring
- Family/household management
- Real-time notifications and alerts
- ML-powered transaction categorization
- Spending insights and trend analysis
- Smart budget recommendations
- Financial health scoring
- Anomaly detection
- Investment tracking and analysis
- Bill negotiation recommendations
- Subscription management
- Tax preparation assistance
- Advanced reporting and analytics
- Performance optimization
- Advanced security features
- Mobile app development
- API for third-party integrations
- Enterprise features
- Framework - Next.js 14 with App Router
- Database - PostgreSQL with Prisma ORM
- Authentication - Better-auth
- API Integration - Plaid SDK
- AI/ML - OpenAI GPT-4 for insights, scikit-learn for categorization
- Framework - React with TypeScript
- Styling - Tailwind CSS
- UI Components - shadcn/ui
- Charts - Recharts or Chart.js
- State Management - Zustand or React Query
- Hosting - Vercel or AWS
- Database - Supabase or AWS RDS
- File Storage - AWS S3
- Monitoring - Sentry, DataDog
- Analytics - PostHog or Mixpanel
- Daily/Monthly Active Users
- Session duration and frequency
- Feature adoption rates
- User retention curves
- Average time to connect first account
- Number of connected accounts per user
- Budget adherence rates
- Goal completion rates
- Transaction categorization accuracy
- Insight relevance scores
- Recommendation acceptance rates
- False positive/negative rates
We welcome contributions! Please see our Contributing Guidelines for details.
# Clone the repository
git clone https://github.com/your-org/badget.git
# Install dependencies
npm install
# Set up environment variables
cp .env.example .env.local
# Set up the database
npx prisma generate
npx prisma db push
# Start the development server
npm run devThis project is licensed under the MIT License - see the LICENSE.md file for details.
- MaybeFinance - Inspiration for open-source financial management
- Plaid - Financial data infrastructure
- Copilot - AI-first user experience patterns
- Better-auth - Modern authentication solution
Ready to revolutionize your financial management experience with Badget? Let's build the future of personal finance together! 🚀