Welcome to Piggy Bank!
Piggy Bank is an application focused on promoting financial education and responsibility among users, with a particular emphasis on families. It serves as a platform where children can engage in activities related to managing and understanding finances, supervised by their parent(s).
- Frontend: React, DaisyUI, Tailwind CSS, Clerk
- Backend: Node.js, GraphQL, Redis, Wkhtmltopdf, Clerk
- Database: MongoDB
I recommend having 3 terminal tabs/windows open for this.
-
Clone the repository:
$ git https://github.com/DhihanA/CS-554-Group-Final-Project.git $ cd CS-554-Group-Final-Project
-
Install Dependencies:
- Terminal 1:
$ cd /your/path/to/CS-554-Group-Final-Project/server $ npm i
- Terminal 2:
$ cd /your/path/to/CS-554-Group-Final-Project/client $ npm i
-
Ensure your Redis server is running.
- Terminal 3
$ redis-stack-server
or
$ redis-server
-
Seed the Database & Start the Server:
- Terminal 1 (/server):
$ npm run seed $ npm start
-
Start the Application:
- Terminal 2 (/client):
$ npm run dev
To generate a Transactions document in PDF format, ensure you have wkhtmltopdf
installed on your system. Follow these steps:
-
Download
wkhtmltopdf
:- Visit the wkhtmltopdf download page and download the appropriate Windows installer.
-
Install
wkhtmltopdf
:- Double-click on the downloaded installer and follow the installation instructions.
-
Add
wkhtmltopdf
to System Path:- After installation, you need to add
wkhtmltopdf
to your system environment variables:- Search for "Environment Variables" in the Start menu search bar and open the "Edit the system environment variables" option.
- In the System Properties window, click on the "Environment Variables" button.
- Under "System variables", select the "Path" variable and click on "Edit".
- Click on "New" and add the path to the directory where
wkhtmltopdf
is installed (e.g.,C:\Program Files\wkhtmltopdf\bin
). - Click "OK" to save the changes.
- After installation, you need to add
-
Verify Installation:
- Open a new command prompt and type
wkhtmltopdf --version
. If installed correctly, you should see the version information printed to the console.
- Open a new command prompt and type
-
Download
wkhtmltopdf
:- Visit the wkhtmltopdf download page and download the appropriate MacOs installer.
-
Install
wkhtmltopdf
:- Double-click on the downloaded installer and follow the installation instructions.
-
Verify Installation:
- Open a new command prompt and type
wkhtmltopdf --version
. If installed correctly, you should see the version information printed to the console.
- Open a new command prompt and type
You will need 2 separate windows open for this.
- Sign up to create your account OR login in using our pre-made accounts.
- If you choose to use our pre-made accounts:
- In Window 1:
- Login with the email [email protected] and password Test123$567*.
- In Window 2:
- Login with the email [email protected] and password Test123$567*.
- In Window 1:
- If you choose to Sign Up:
- In Window 1:
- Sign up and fill out the information accordingly (or sign in with Google).
- Choose Parent for role and enter your DOB.
- Once you're logged in, you will see a verification code, which will be used in one moment.
- In Window 2:
- Sign up and fill out the information accordingly (or sign in with Google).
- Choose Child for role, enter your DOB, and enter the verification code (from step 1iiac).
- In Window 1:
- If you choose to use our pre-made accounts:
- Once you're logged into both:
- Parent Account:
- You can view your children's transactions.
- You can send money to your child (up to $500 per transaction).
- Child Account:
- You can view your Checking & Savings account's balances.
- You can transfer money from [Checking -> Savings], [Savings -> Checking], or [Checking -> Checking] if you choose to transfer the money to another user.
- Create a budgeted transaction, setting aside some funds for future short-term purchases.
- View all of your Transactions in My Transactions.
- Earn money for answering financial literacy correctly in Learn n' Earn.
- Parent Account:
- We made the password for all seeded accounts Test123$567*
This project was a collaborative effort by: dhihana, jesalgandhi, ajitk123, lkbnch, jacobgrocks1234.