OopsBudgeter is a personal finance management app designed to help users track their income and expenses. Built with Next.js, React, and Tailwind CSS, the app is PWA (Progressive Web App)-enabled and can be easily self-hosted with Docker.
(Why made it? Because who doesn't want a budget app that makes them realize how broke they are? ๐ธ๐)
Please use it for test purposes only, check the UI, features and abilities given to the web app or pwa. The PIN code is 696969
A Simple Roadmap for this Project: Roadmap via Github
- ๐ฐ Track income and expenses: Easily manage transactions with details like amount, description, category, and date.
- ๐ Advanced Analytics Dashboard: Gain insights into your financial trends with detailed graphs and FakeAI-powered insights. Yes, we graphically display your bad decisions!
- ๐ค FakeAI-Powered Insights: Automated spending analysis and financial recommendations (like, "Stop buying useless stuff!").
- ๐ฅ No-Spend Streaks: Tracks how many consecutive days you've avoided spending. Good luck breaking your record past a week! ๐
- ๐ฑ PWA Support: Works offline, and you can install it as a native app. Now you can check your tragic finances even without internet!
- ๐ JWT-based authentication: Secure your app with token-based authentication. Hackers want your money? Jokeโs on them, you donโt have any!
- ๐ฑ Customizable Currency: Supports all ISO 4217 currencies. Yes, even Monopoly money... but donโt ask why.
- ๐ข Passcode Protection: Add a passcode to protect access to the app and API. As if your bank account isnโt already protecting itself.
- ๐จ Responsive UI: Built using Tailwind CSS for a clean and modern design.
- ๐ Docker support: Easily deploy with Docker.
- โฌ๏ธ Data Export: Download transactions in CSV or JSON format or print them to a PDF format. Because your financial misery should be well-documented!
- Next.js 15, React 19
- Tailwind CSS for styling
- React Hook Form for form handling
- Zod for form validation
- Recharts for dynamic financial visualizations
- Next-PWA for Progressive Web App features
- PostgreSQL for database storage
- JWT-based authentication for securing the application
- Drizzle ORM for database management
- Docker for containerization and easy deployment
docker run -d \
-p 3030:3000 \
-e PASSCODE=12345 \
-e NEXT_PUBLIC_CURRENCY=USD \
-e JWT_SECRET=your-secure-jwt-secret \
-e DATABASE_URL=your-postgresql-url \
iconical/oopsbudgeter:latest
- Clone the repository:
git clone https://github.com/OopsApps/OopsBudgeter.git cd OopsBudgeter
- Build the Docker image:
docker build -t OopsBudgeter .
- Run the Docker container:
The app should now be accessible at
docker run -p 3000:3000 OopsBudgeter
http://localhost:3000
.
- Clone the repository:
git clone https://github.com/OopsApps/OopsBudgeter.git cd OopsBudgeter
- Install dependencies:
bun install
- Set environment variables in a
.env.local
file (see below). - Build the app:
bun run build
- Start the app:
The app should now be accessible at
bun start
http://localhost:3000
.
Create a .env.local
file in the root directory and add the following:
Variable | Description | Required | Default | Example |
---|---|---|---|---|
NEXT_PUBLIC_CURRENCY |
Currency code for transactions | No | USD |
EUR |
PASSCODE |
6-digit PIN code for accessing the application | Yes | - | 123456 |
JWT_SECRET |
Secret key for JWT authentication | Yes | - | your-secure-jwt-secret - you can generate a 32-digit token here https://tools.iconical.dev/token-generator?length=32 |
DATABASE_URL |
PostgreSQL database connection URL. | Yes | - | your-postgresql-url - you can create a free database on neon.tech or sth idk *shrug* |
We welcome contributions! Hereโs how you can help:
- Fork the repository.
- Create a new branch for your changes.
- Implement your changes and write tests if necessary.
- Open a pull request with a description of what you've done and why it's useful.
We appreciate all contributions, whether small or large!
If you encounter any issues with the app, please open an issue on the GitHub Issues page.
If you need support or have any questions about using the app, feel free to contact us at [email protected] or open an issue in the GitHub Issues page.
This project is licensed under the Apache License 2.0. See the LICENSE file for more details.
- Track Income or Expenses: Add transactions by selecting type, amount, description, category, and date.
- View Financial Analytics: Get a breakdown of spending habits, trends, and AI-powered insights. Aka: How much money youโve wasted.
- Monitor Your No-Spend Streak: See how long you've gone without unnecessary expenses. Spoiler alert: It wonโt be long.
- Print or Download Transactions: Export transactions in CSV or JSON format. So you can cry over them later.
- Plan Ahead with Predictions: View projected spending based on trends. Basically, a sneak peek into your future regrets.
OopsBudgeter is your all-in-one finance tracker, making sure you face your financial mistakes head-on! ๐๐
FakeAI is not a real artificial intelligence but rather a collection of predictive algorithms and calculations based on past data. It wonโt pass the Turing test, but it will still judge your spending habits mercilessly ๐
Thanks for checking out OopsBudgeter! We appreciate your time and hope this app helps you (or at least makes you laugh while realizing where all your money went). โ The OopsApps Team ๐