For those looking to build muscle, macronutrient tracking is a great way to make sure you are eating the right ratio of nutrients! In this app, I put a user's stats into a database, and then calculate that user's daily macronutrient needs based on their weight and activity level. Users can add foods, which go into a separate table, and the total amount of each macronutrient is calculated to determine what percent of their daily goal has been hit. Users can track their daily progress on the homepage, and add as many foods as they want! This app utilizes API fetching with Axios, JavaScript, HTML5 and CSS on the front-end, and Python and PostgreSQL on the back-end.
See the Git respitory for this project here
In the coding bootcamp for which I interned, we worked on creating full-stack applications using the Django framework. In this personal project, I created a simple to-do list using JavaScript and HTML DOM, and connected it to a database with PostgreSQL on the backend to store completed tasks.
See the Git respitory for this project here
For this project, I created a log-in and sign-up page using cookies in Django. This app stores usernames and passwords in a database when users sign-up. It will only allow users to log-in with existing credentials that are stored in the database. Salting and hashing are being used to store the users' passwords, so if a hacker were to access the database, they could not see the real passwords. This app utilizes full-stack engineering by taking user input in the front-end and adding it to a PostgreSQL database in the back-end. I also utilized JavaScript to make sure users are putting in valid inputs, and displaying error notifications if not.
See the Git respitory for this project here
For this personal project, I created a weather app that fetches API data from Open Weather and displays the daily and weekly forecasts of the city the user enters. Creating this app was excellent practice in working with APIs, as well as improving upon my front-end and UI design/development skills.
See the Git respitory for this project here
For this project, I created a hangman game using React and Api fetching with Axios. This app grabs a random word from an Api, and then has users guess the letters. Users get 6 wrong guesses before they're out, and the game restarts.
See the Git respitory for this project here
Mobile User Experience was a course focused on front-end development. We were paired into groups and tasked with creating an app using React.js, with a focus on user experience. I was paired with two other students from Germany and Bulgaria. This was a great experience to work with other coders from around the world! I was responsible for creating the image carousels, creating an email using HTML that is sent to "customer's" email addresses when using the app, and assisting in the design and prototyping of the app. Here is the final result!
Principles of Computer Science 2 was an introduction to Object Oriented Programming and coding in Java. In this class, I expanded on what I learned in Principles 1, as well as learned about classes vs. objects, encapsulation, and more. Here are some examples of the coding projects I completed in this course.
Design a program to determine the monthly costs and total amount due for a telephone company's customers. There are two types of plans: voice plan and data plan. Customers can choose to purchase both, or either. If the customer has a contract, their cost per month is discounted 10%. Tax is charged for each plan. There is also a single fee applied to the plan after the cost is determined.
This project was an introduction to understanding the use and value of encapsulation.
Reprogram an existing vending machine simulation. The new vending machine program should be able to provide the following functionalities:
1. Deposit coins to add to or create a balance
2. Buy a drink if enough money has been added
3. Display the drink names, prices, and quantity available.
4. Restock the vending machine
5. Give change
This project was an introduction to super classes and subclasses.
Design a program to assist a credit card company with their customer accounts. There are three types of cards offered, standard, gold, and last-chance. The standard card has an annual interest rate of 15% and a limit of $5,000. The gold card has an interest rate of 10%, a limit of $20,000, and gives 1 reward point for every dollar spent. The last-chance card has an interest rate of 25% and a $1,000 credit limit, but if the card holder consistently pays their entire balance off 5 times in a row, their interest rate decreases by 5% and their limit doubles.
Lab 11 was an exercise in creating and implementing interfaces.
Create an interface "Bag". Classes that implement this interface must provide the following services: 1. Add an item to the bag 2. Return the number of items in the bag 3. Return a random item from the bag You must create two classes that implement the interface, the StringBag, which holds String objects, and the ProductBag, which holds Product objects.
Lab 12 provided practice for designing GUIs.
Design a GUI for the wheelchair problem from Lab 2. The GUI should enable the user to enter values and then display the distance the wheelchair can travel.
Lab 13 provided additional practice for designing and understanding GUIs.
Design a GUI to replace the print order interface in lab 6.
Principles of Computer Science 1 was my introduction to coding using Python. In this class, I learned about loops, lists, types, and more, as well as how to design pseudocode and stack trace. Here are some examples of the coding projects I completed in this course.
Lab 06 was an amalgamation of all of the Python skills I had learned thus far, including implementation of while loops, various functions, and if/else statements.
Create a program to play the game "Doubles"
Doubles is played using dice, and can be played with just one person. They player must select a number between 1 and 6. Then, the player will roll a pair of dice 100 times and keep count of the number of times the roll results in a double, with both die faces equal to the player's chosen value. The count is the player's score for that round. The game is played for a total of three times, and the final score is the highest score from those rounds.
Requirements:
1. Ask the user for the number they would like to play at the beginning of each round. Make sure to check for input errors.
2. Notify the player when a double has been rolled during each round.
3. Display the message "scoring double" when applicable.
4. Display the score at the end of each round.
5. Display the winning score at the end of the game
In Lab 07, I started to practice lists and list functions.
Design a program that will allow pre-registered users to vote for their favorite dish from a list of cuisines. Each voter can only vote once, and the participant with the most votes will win.
Project 02 implemented all of the skills we had learned thus far by creating a game of hangman.
Code a text-based version of the game hangman.
In Lab 08, I created a program that scraped a webpage. This was a good opportunity to practice reading data from webpages.
Design a program to scrape a webpage for lists of netpass ID's and faculty names.
Project 03 was our final project, and as such, the most challenging. However, working through the problem statement was extremely beneficial to my learning, because of how hard it pushed me. In this project, we needed to create filters for ppm images using code. We needed to use everything we had learned thus far, including for loops, while loops, lists, functions and if/else statements.
Edit a P3 PPM image using coded filters, including hopeify, horizontal flip, checkerboard, and a filter of your choice.