For travelers who never know if they have the money to go on a trip until it's too late (flight became too expensive, didn't RSVP on time, etc.) - well no more! They can input how many paychecks they can start saving for the trip and the app calculates the portion that has to come out of each paycheck using the traveler's trip estimate. The traveler can then decide if they can afford to go or decline.
Travelers can keep track of occuring trip costs as they occur in the Actual cost page. In the "add dollars" input field, the user can choose which expense category and then see that category's expense updated. User then click "Save" to update the database.
Travelers can also compare how well they budgeted for the trip. They can compare which categories they went overbudget on and by how much (percentage), so if they see there's a recurring theme, then they can adjust those budget categories for future trips.
Tech Stack:
- Android Studio
- Kotlin
- Firebase real-time database
Do the following to install this project.
- Go to: https://www.oracle.com/technetwork/java/javase/downloads/index.html
- Click download icon for Java Platform (JDK) 13
- Scroll to bottom of page. In Java SE Development Kit section, click “Accept License Agreement” radio button
- For macOS, click to download file ending with .dmg
- Once download complete, open .dmg file in the Downloads folder
- JDK pop up screen will ask to “double click on icon to install”, do it
- Click “Continue” and on the next screen click “Install” then click “Close”
- You can then move the installer to the Trash
- Go to: https://developer.android.com/studio
- Click “Download Android Studio”
- Once download is complete, a pop up window will appear. Move Android Studio icon to the Application folder
- Go to Applications folder and open Android Studio
- You will see a verification pop-up, click “Open”
- Another pop up window will appear, choose “Do not import settings” then click “OK”
- Android Studio Setup Wizard will open, click “Next”
- Select “Standard” for type of setup and click “Next”
- Select either Dracula or Light UI Theme then click “Next”
- Click “Finish”
- Setup Wizard will download components
- While downloading components, may ask user for password for HAXM Installer, follow prompts to allow HAXM installer
- Once components are downloaded, click “Finish”
- Click “Check out project from Version Control
- Select “Git”
- In the URL field, enter repo url
- To find repo url, go to GitHub link:
- Click “Clone or Download” button (green)
- Copy url
- Paste url in Android Studio prompt
- Click “Test” and a message should state “connection successful”; otherwise, double check url
- Click “Clone”
- Pop-up will state “You have checked out an Android Studio Project” and ask if you want to open it, select “Yes”
- Wait for Android Studio to set up.
To run the emulator/app:
- Go to Tools > AVD Manager > Select Nexus 6P
- For System image download Lolliopo/API 22 and/or above
- Accept License Agreement
- Wait for it to download. It'll take awhile depending on how many APIs you choose to download, but API 22 alone will work
- Click "Finish"
- If the "Next" button is not available, simply close the window and open up AVD Manager again > Select Nexus 6P and then click "Next" > click "Finish" > close window
- Now on the top middle of the screen next to the green play button, Nexus 6P API 22 should be shown as selected.
- Click on the green play button located on the top middle-right of the window. When the mouse hover over it, it should read “Run ‘app’(^R)” or go to top menu and click on "Run" > "Run 'app'"
- Emulator will show once Gradle Build is complete (you should see on the bottom something that reads "Gradle Build Running"
- If database is starting from null or empty:
- In Estimate section, click "Calculate/Update". This will set the categories' value to "0" to start. It will update the database for that branch.
- In Actual section, click "Save". This will set the categories' value to "0" to start. It will update the database for that branch.