A sophisticated personal finance tracker designed for professionals who value privacy, elegance, and control over their financial data.
✨ Real-time Tracking - Monitor income and expenses across diverse categories 🎯 Savings Goals - Set ambitious targets and visualize your progress daily 🔒 Bank-level Security - Encrypted data transmission with Row Level Security via Supabase 📊 Beautiful Analytics - Intelligent insights in a calm, professional environment 💰 Budget Management - Set monthly budgets and track spending patterns 🌍 Multi-currency Support - Track finances in any currency 📱 Responsive Design - Works seamlessly on desktop, tablet, and mobile
- Modern web browser (Chrome, Firefox, Safari, Edge)
- Node.js 16+ (optional, for development)
- Clone the repository
git clone https://github.com/khushaank/bloom.git
cd bloom-finance- Start a local server
# Using Python
python -m http.server 8000
# Using Node.js
npm run dev- Open in browser
http://localhost:8000
# Install dependencies
npm install
# Run linter
npm run lint
# Build for production
npm run buildbloom-finance/
├── index.html # Landing page
├── login.html # Authentication page
├── finance-tool.html # Main dashboard
├── assets/
│ ├── css/
│ │ ├── style.css # Main styles
│ │ ├── landing.css # Landing page styles
│ │ └── login.css # Login page styles
│ ├── js/
│ │ ├── script.js # Main app logic
│ │ ├── supabase.js # Database integration
│ │ ├── security.js # Security utilities
│ │ ├── landing.js # Landing page logic
│ │ └── login.js # Authentication logic
│ └── images/ # Images and assets
├── .htaccess # Apache configuration
├── .eslintrc # Linting rules
├── .editorconfig # Editor configuration
├── .gitignore # Git ignore rules
├── package.json # NPM configuration
└── README.md # This file
- Frontend: HTML5, CSS3, JavaScript ES6+
- Backend: Supabase (PostgreSQL + Auth)
- Security: SSL/TLS, CSP, Row Level Security
- Charts: Chart.js for data visualization
- Hosting: HTTPS-secured infrastructure
🔐 End-to-End Encryption - Your financial data is encrypted in transit
🔒 Row Level Security (RLS) - Database-level access control
🛡️ Content Security Policy - Prevents injection attacks
Bloom is committed to your privacy:
- ✅ No third-party trackers
- ✅ No ad networks
- ✅ No data selling
- ✅ Open privacy policy
- ✅ GDPR compliant See Privacy Policy for details.
| Browser | Support |
|---|---|
| Chrome | ✅ Latest 2 versions |
| Firefox | ✅ Latest 2 versions |
| Safari | ✅ Latest 2 versions |
| Edge | ✅ Latest 2 versions |
| IE 11 | ❌ Not supported |
- ⚡ Fast Loading: Optimized for Core Web Vitals
- 📊 Responsive: Adapts to all screen sizes
- 🎯 Efficient: Minimal JavaScript bundles
- 💾 Caching: Browser caching for faster repeat visits
We welcome contributions! Please follow these steps:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Follow the ESLint rules (run
npm run lint) - Use Prettier for code formatting
- Write semantic HTML
- Test on multiple browsers
- Ensure accessibility (WCAG 2.1 Level AA)
- Clear browser cache (Ctrl+Shift+Delete)
- Check browser console for errors (F12)
- Ensure Supabase is configured correctly
- Check internet connection
- Verify Supabase credentials
- Check browser's local storage permissions
- Ensure file size is under 5MB
- Supported formats: JPG, PNG, WebP, GIF
- Check browser's file input permissions
// Theme setting
sessionStorage.getItem('bloom_theme') // 'light' | 'dark' | 'system'
// User data
sessionStorage.getItem('bloom_transactions')
sessionStorage.getItem('bloom_goals')This project is licensed under the MIT License - see the LICENSE file for details.
- 📧 Email: [email protected]
- 🐛 Report bugs: GitHub Issues
- 💬 Discussions: GitHub Discussions
- Initial release
- Dashboard with expense tracking
- Savings goals management
- Budget tracking
- Privacy mode
- Security features
- Mobile app (iOS/Android)
- AI-powered insights
- Investment tracking
- Tax reporting
- Multi-user accounts
- Advanced analytics
Developed with ❤️ by the Bloom Team
Special thanks to Supabase for the amazing backend platform
Made with elegance. Built with security. For your financial future. 💚