No End Insight
An online social media platform for sharing uplifting insights! Only the front-end (HTML and Bootstrap CSS) was completed for school, and I've since hooked it up with a back-end with live data as a fun side project!
Retain
A clone of the popular online notetaking app, Google Keep! I'd been meaning to make a full stack website for a while with client-side React and a Node.js API to show my skill at that stack, and this turned out to be just the project to do it! I loved working on this project because I use Google Keep every day, so it was fun to make something I'll actually use.
Portfolio (This Website)
This portfolio was built with the purpose of helping prospective clients/employers get a feel for who I am and the work I do. Though the site looks pretty simple, I've added a lot of optimizations so that images load quickly and there's no lag across the experience. This website has gone through many iterations, being my main home page. It was originally made in React and styled with Material UI, but I realized that I could reduce load times and have a better tool for my use case by going back to just standard HTML and CSS, so I did just that. Pro tip -- try changing your device settings between light and dark mode! You'll notice that my website will appear in light or dark mode accordingly!
React Portfolio
So this portfolio website was actually first created in React! I had been using it for my work and naturally I wanted to practice my skills with it. Over time however, I realized that it wasn't the right tool for the job, so I remade the site in HTML and CSS. This project still is a great showcase of the pros of React such as intuitive JSX syntax that is both declarative, readable, and reusable. It was also made using Material UI. For such a simple project, I realized that I could just do my own styling, so I eventually moved away from that as well.
Silver Fund Web App
Silver Fund Web App - A Stocks/Trades Performance Tracker/Predictor Site. I created this while working as a Software Engineer for Silver Fund (BYU's MBA Finance Program) during the second half of 2020. After I left the project broke, so I recreated the front-end side of things on my domain as a side project.
Approachable App
My friend Taylor English and I are two entrepreneurial-minded Computer Science grads. We've had plans to do a startup together at some point, and this was our first stab at it. Approachable aims to facilitate meeting new people in public settings, whether in spaces like libraries and networking events. Get recommendations about who you need to meet around you based on shared interests/talents, and also be reminded of people's names and previous conversation details when you talk with them again! For this project Taylor was on the iOS Swift front end side of things, and I was on the backend, working with Node.js (Express.js, SQLite, and Prisma). It's still a work in progress, but see the repo link below to see my progress on the back end!
Adobe
For my Senior Capstone at BYU I'm on a team with 4 other developers working for Adobe. We specifically work on Adobe Analytics. Corporations like Walmart and Best Buy use it, but managers doing basic analytics aren't the most technical, so we've been tasked with enhancing their React front-end by revamping the workflow for building out visualizations like line and bar charts.
Pecos Solutions
A full-stack web app used to preview and download records/documents by county. Features user authentication, custom theming, an Admin Dashboard, and dynamic routing. Back-end is AWS, front-end is React, using Styled Components and Material UI for styling.
Tweeter
For BYU's CS 340 Software Design Patterns class, we made a Twitter Clone using Android on the front-end then Java and AWS (EC2, S3, API Gateway, Lambdas, SQS, DynamoDB) on the back-end. We learned how to not only make a working full-stack app, but how to design it so you can reuse code and follow best practice.
Venmo Tithing Calculator
Automatically find out how much tithing you pay from your venmo income in just a few clicks! My mom came to me, tired of manually tallying up her income from Venmo by hand, then calculating the tithing on it. I made this site to automate that whole process. Uses Flask with HTML and CSS.
Scoreboard
Birthday present for my dad (he loves sports and stats, so he naturally loves scorekeeping). I've made many sites in React, but this was my first website made using Material UI for styling.
Optiplex Web Server
I got sick of paying AWS, Digital Ocean, Vercel, and other web hosting companies to host my websites. As you may have already realized, I tried a good amount of services but for my use case of using it for personal projects, they didn't get a ton of traffic so paying $5 a month or more seemed ridiculous to me. I got an old Dell Optiplex Mini PC for cheap then went through the process of figuring out router configurations, dynamic DNS, exposing IP addresses, port forwarding, HTTPS Certification, NGINX configurations, bash scripting, and other networking concepts along the way. It took a while to get everything set up, but it was a great learning experience for me and now I don't have to pay recurring fees to host my websites (our internet/electricity is also free where I live). Now I can easily host static and full stack websites on my server. I have scripts to easily pull changes from all my repos and redeploy all my sites. For security reasons I've chosen to leave my repo with all my optiplex server configurations private, but contact me if you'd like specific access.
Tutorials
I love teaching! Especially being able to teach people how to code! I loved teaching fellow students in college and then when I went on to graduate and have a full-time position as a Software Engineer, I still made time to do a part-time gig as a coding tutor. I've also done lots of volunteer tutoring, whether it be for local elementary schools, online seminars, or most recently as a tutor for refugees! I love looking for ways that I can share my love for coding. There's nothing more satisfying than seeing that light bulb go off in someone's head when things click and they understand a hard concept because of what you taught! The links below will redirect you to my YouTube channel where I do some tutorials as well as the GitHub repo where I store tutorial instructions and example code.
Jolt
Enhancing a React Native application that's optimized both for tablet and mobile. This app helps fast food companies like Chick-fil-A and McDonald's with timeclocking, food safety, printing labels, and more. For company privacy reasons I can't share the repo we work in, but I can share snippets of code I've written there upon request.
iRecognize
For BYU's CS 356 UI/UX Design class project, my group of 3 made a mobile app throughout the second half of the semester. We found that it's hard to remember people's names, and sometimes important details about where you two met or other relevant info about them. We made a Figma prototype and then a Flutter app that demos how you could use your GPS to locate those around you and be able to put names to faces.
CS 312: Algorithm Design & Analysis
In this class at BYU, we went over several general approaches to algorithm design, including Divide and Conquer, Graph-based, Greedy, Dynamic Programming, Linear Programming, and Intelligent Search. We tackled projects which solved the famous traveling salesman problem, basic cryptography, primality testing, convex hulls, gene sequencing, and networking routing. See the link for project write-ups.
Hack Overflow
For CS 356 UI/UX Design class at BYU, my group of 3 had to make a website prototype using Figma to solve a pain point. We noticed that coding resources are mostly geared towards experienced developers, so we made Hack Overflow, which simplifies resources like Stack Overflow and W3 Schools into an all-in-one resource.
Instruct.Me
For an on-campus internship at BYU's Business School, I helped out the Instruct.Me startup with designing their app from the ground up. We used Figma to build high-fidelity interactive prototypes.
Jokester
A website which displays random coding and dad jokes, then allows you to save your favorites so you can view them later. Uses Vanilla JavaScript, HTML, and Bulma CSS (decided I'd try a different CS framework on this one).
Melting Pot
For my final project for BYU CS 356 UI/UX Design class, we had to make an app that fills a need for the Coloured People of South Africa. After doing extensive research, I found that the those people struggle to find their identify due to their mixed heritage. I made a Figma prototype of how an app could scan their face using facial recognition and then help them identify which facial features correspond with their ancestral tribes.
VBB Mentoring Portal
International Mentoring Booking Site used by Nike and Oracle. I did full-stack development on this project, but focused primarily on front-end. This project has been unstable since I left, so in the cases that the Official Website (https://portal.villagebookbuilders.org) is down or people want to take a look at site features w/o making an account, I recreated the front-end side of things on my domain as a side project.
Weather Rain or Shine
A weather app that lets you search by city, then interacts with an API to display current weather conditions, 5-day, and 3-hour forecasts. Uses Vanilla JavaScript, HTML, and Bootstrap CSS.
Photography
Have an exciting event coming up and want to make sure you capture those memories? Here's an photographer informational site where you look into hiring a photographer. Created using HTML and Bootstrap CSS.
Piano
On the go but dying to pound some horse teeth? Here's this online mini piano (1 octave) created using Vanilla JavaScript, HTML, and CSS.
Snake
A blast from the past, this retro snake game will give you some serious nostalgia. Made using Vanilla JavaScript, HTML, and CSS.
Tic Tac Toe
Don't have a pen and paper but one play some good 'ole Tic Tac Toe? Here you go! This website was made using Vanilla JavaScript, HTML, and CSS.
NBA Insider Hub
4 words: Basketball Player Search Index. Front-end client which connects the balldontlie API, allowing users to see a table of NBA Teams, then search by player name to see latest player stats. Uses Vanilla JavaScript, HTML, and Bootstrap CSS.
On The Line
A scorekeeper game built specifically around the basketball mini game "9 On the Line". I made this in React after getting frustrated of keeping track of game scores on my own. This was just a fun proof of concept, so I didn't bother with styling but just focused on capturing the business logic.