Budget is a simple web app that provides a means for users to record their income and expenses. It helps you to keep track of your spending.
- 📝 Table of Contents
- 🧐 About
- 🏁 Getting Started
- 🎈 Live Usage
- 🚀 Deployment
- ⛏️ Built Using
- Todo
- Contributions
- ✍️ Authors
- 🎉 Acknowledgements
Budget was built with the aim of keeping track of your expenses and income in order to have an overview of your cash inflow. It is a simple web app with functionalities including a basic authentication module, book creation and deletion, income and expenses logging.
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
Make sure that you have the following installed on your system before running the project or deploying.
Docker
PHP
MySql
Composer
Clone the repo
git clone git@github.com:Timadey/budget.git budget
In order to get the project up and running, you can either use the PHP local develpment server or run the project directly using Docker container.
Using PHP local development server,
Ensure to create a mysql database and import the budget.sql
file at the root directory into the database.
Add environment variable containing the credentials of your mysql database. Replace *
with the correct details
MYSQL_DB_HOST=****
MYSQL_PASSWORD=****
MYSQL_USER=****
MYSQL_DATABASE=****
Run the following commands in your terminal. Assuming you are in the project root directory
cd public
php -S localhost:8000
Your result should be like this
timothy@Timadey:~/projects/Income-and-Expenditure/public$ php -S localhost:5002
[Sat Dec 16 00:20:42 2023] PHP 7.4.3 Development Server (http://localhost:5002) started
Using Docker container, you can run the following commands, assuming you are in the project directory.
docker-compose build & docker-compose up
Budget is availabe live @https://budgetim.onrender.com/. You can use this login details for test purposes only.
Email Address: admin@budget.com
Password: admin
In production, it is advisable to use Docker, ensure you set the proper mysql database credentials under php service environment section
section in docker compose.
Then follow the steps taken in dvelopment.
- Include data analytics
- Allow users to add additional categories
- Include trends and data visulization
- Allow users to set budgets
Contributions are highly encouraged, please fork and make pull requests. Thank you.
Special thanks to @Don Jo for the inspiration given for this project.