Current version: 0.1.0
Penny Pilot is a financial planning tool designed to help students at Northern Arizona University (NAU) manage their budget and savings for studying abroad. Many students struggle with financial planning, which discourages them from pursuing international education opportunities. Penny Pilot provides a user-friendly platform to track expenses, set savings goals, and visualize financial progress, reducing stress and empowering students to focus on learning.
These instructions will help you set up the Penny Pilot application on your local machine for development and testing.
To run this project, ensure you have the following installed:
- Python (Latest Version)
- MySQL Database Server
- Git (for version control)
- Install Homebrew (if not already installed):
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"- Install Python 3 (if not already installed):
brew install python3-
Install MySQL Workbench:
- Download MySQL Installer from mysql.com
- Remember your root password is not created so delete this in config.py to '' instead of '123455'
- Create a new MySQL Connection named "pennypilot"
-
Clone the repository:
git clone https://github.com/sesartrumpet/cs386-pennypilot.git
cd cs386-pennypilot- Create and activate virtual environment:
python3 -m venv venv
source venv/bin/activate- Install dependencies:
pip install -r requirements.txt- Configure MySQL Database:
mysql -u root -pThen in the MySQL prompt:
CREATE DATABASE pennyPilot;- Run the application:
python3 main.py-
Install Python:
- Download Python from python.org
- During installation, make sure to check "Add Python to PATH"
-
Install MySQL Workbench:
- Download MySQL Installer from mysql.com
- Run the installer and follow the setup wizard
- Choose "Full" for the Setup Type
- Remember your root password (make it 123455 to avoid altering code)
- Create a new MySQL Connection named "pennypilot"
- Open and run PennyPilot_db.sql inside pennypilot
- Open and run data.sql inside pennypilot
-
Install MySQL Community Server
- Download version 8.4.4 LTS from mysql.com
- Run the installer and follow the setup wizard
- Connect to your root server
-
Clone the repository:
git clone https://github.com/sesartrumpet/cs386-pennypilot.git
cd cs386-pennypilot- Create and activate virtual environment:
python -m venv venv
.\venv\Scripts\activate- Install dependencies:
pip install -r requirements.txt- Run the application:
python main.py- If pip installation fails with "externally-managed-environment" error, make sure to use the virtual environment
- If MySQL connection fails, verify MySQL service is running:
brew services list - If permission errors occur, you may need to use
sudofor some commands
- If 'python' is not recognized, try 'py' instead
- If MySQL is not recognized as a command, add MySQL to your system's PATH
- If virtual environment activation fails, ensure you're using the correct path separator ()
pytestThis will run unit tests covering key functionalities such as:
- Adding expenses and income data
- Budget visualization rendering
- User authentication workflow
Please read CONTRIBUTING.md for details on our code of conduct and how to submit pull requests.
We use SemVer for versioning. For available versions, see the tags on this repository.
- Victor Rodriguez
- Sesar Parra
- Elijah Sprouse
- Manjot Kaur
- Kyle Radzvin
- Vikram Singh
See the list of contributors who participated in this project.
This project is licensed under the MIT License - see the LICENSE.md file for details.
- Special thanks to NAU faculty and advisors for guidance.
- Inspiration from existing financial planning tools.
- Hat tip to open-source contributors whose code was used.