ADA Projects

libawesome (capstone)

LibAwesome is a book-tracker app geared towards book-lovers who want to see what they want to read and what they've read over time in an uncluttered phone app -- especially for book-lovers like me, who don't have a lot of time to read and end up with long, unorganized lists of books they want to read.

LibAwesome is a native iOS app written with Swift and SwiftUI. It is supported by a backend API I wrote in Python that uses a Postgresql database and is hosted on Heroku.

See more about LibAwesome at https://galaxylaughing.github.io/capstone-site/.

bEtsy

bEtsy was a large team project where our team built an e-commerce website called Plantsy over the course of two weeks.

The website allows users to browse all products, or see products by category or by merchant. Users can add products to their cart, checkout, and leave a review.

Merchants for the site can log in using Github as an OAth provider.

Once logged in, merchants can see a dashboard page where they can view and edit their products, add a new product, add a new category, and see a list of orders and their confirmation status.

They can mark the products in an order as shipped, and the order will automatically be marked as shipped. Merchants can also see their total earnings on this page.

I mainly worked on the merchant dashboard view, the shopping-by-merchant view, and the OAth authentication feature, but I also built the homepage, the header and footer elements, and the 'about us' page.

Video Store API

This was a pair project to build a RESTful API with Rails that could be used by a video store to manage their inventory, rentals, and list of customers.

We built an entity-relationship diagram to design the models for our database and worked with Trello as a kanban board to organize the project. We also used Postman smoke tests to supplement our unit tests.

Media Ranker

The main goal of this project was to replicate an existing example site's funcationality, with optional enhancements to this site.

Based on the example, I created this website. Like the original, this website allows a guest to login, creating a new account for each new username, and upvote pieces of media (guests cannot upvote without logging in).

There is a main page, listing the pieces of media in each category (album, movies, book) that have the most votes, and a spotlight section for the piece of media with the most votes overall.

There is a list of all the pieces of media, as well as individual pages describing each entry. The site also has a list of all the users and an individual page for each showing what that user has voted on.

As enhancements, I prevented a user from editing or deleting a piece of media without being logged in. I also allowed logged-in users to delete their own accounts. Furthermore, on an invidual user's page, their list of votes includes information on the category of the piece of media they voted for. I changed this to a link that takes the user to an anchorpoint on the media index page for that category.

Rails Rideshare

An update to oo-ride-share, this was a two-person team programming project where my teammade and I built a site to see, add, and edit passengers and drivers in an Uber/Lyft-style ride-sharing app.

Rails Rideshare is up on Heroku!

Rails Zoo

My second Rails project, Rails Zoo was a designed to reinforce the concepts introduced in Tasklist.

The website keeps track of animals in a zoo.

Rails Zoo is up on Heroku!

tasklist

My first Rails project, tasklist is a web app for making and completing tasks.

The website keeps track of the tasks in a database and the user can enter tasks, mark them complete and incomplete (an action which automatically assigns them a date), and can input and see details on each task.

Tasklist is up on Heroku!

portfolio site

This project was to build my own personal portfolio static site. galaxylaughing.com is based on this project.

As per requirements, my portfolio site has a front page, a page that includes a little bit about me, a page with details on all my projects at ADA (aka, this very page), and a page that simulates a list of blog posts.

I wrote the HTML, designed the site, and wrote the CSS.

startrly

This project was a website for a fictional startup called "Startlry". I was given an HTML document and a set of wireframes, one for the website's desktop view and one for its mobile view.

I implemented the CSS necessary to structure the HTML to match the wireframes. I also designed and implemented visuals not specified by the wireframe, such as colors, fonts, and backgrounds.

slack cli

In this pair programming project, we built a program that will communicate with the Slack API.

The program utilizes a command-line interface to get input from a user. It can get information about channels and Slack users and it allows the user to post new messages as 'Slackbot'.

This program also allows the user to customize the name and icon of 'Slackbot'. These attributes are saved in a JSON file and loaded into the program as it starts.

hotel

'Hotel' was an individual project where I designed and built the back-end of a hotel booking system from scratch.

A user of the system can make reservations, check room availability, and create and reserve room blocks.

oo-ride-share

This was a pair programming project where we built a ride-share program using object-oriented design.

The project involved converting data stored in CSV into objects and creating methods to interact with this data and request trips.

grocery store

'Grocery store' is a back-end program designed to keep track of data from a grocery store, including data about customers and their orders.

solar system

This project is a command-line interface for interacting with data regarding solar systems.

The user of the program can view information about the solar system and view details about specific planets. The user can also add additional planets and find the distance between two planets.

Furthermore, I extended this system on a git branch to allow the user to see, switch between, and interact with multiple solar systems.