About Me
I anticipate earning my degree in Software Engineering from Utah Valley University in May 2026. I love programming, long-distance running, and cycling.
Bible Family Tree
A comprehensive and interactive family tree of the Bible, from Adam and Eve down to Jesus Christ. Uses HTML Canvas and d3-force graph.
QR-Universe.com
A dynamic QR code management tool
Book of Mormon Editions Project
The Book of Mormon Editions Project makes it easy to read older versions of the Book of Mormon, and to easily and meaningfully compare them. As well as view a list of changes between editions.
Learn Markdown Game Tutorial
A level-based game tutorial to learn and master markdown, complete with a cheat sheet and live editor. Built with React.
This Portfolio Website
A portfolio website written in HUGO, deployed on Netlify with Decap CMS
Book of Mormon Languages
Developed a website for transitioning between languages while reading the Book of Mormon.
TempleDB.org
A community-run, open-source database with free API for live data on all temples of the Church of Jesus Christ of Latter-day Saints.
Media Marketing Company Website
A 3 page NextJS website for Alba Creative Company, a Utah-based media marketing company. Uses TinaCMS for content managment. Generates leads with embedded email form.
Device Frames
API and web app to render a phone device frame around a screenshot.
Playboard App
Cross platform app to track statistics for any basketball game - from pickup to pro league.
LDS missionary calendars
LDSMissionaryCalendars.com
Resumake
Resumake.me
Using Branch and Bound to solve 0/1 Knapsack Problem
Using Branch and Bound to solve 0/1 Knapsack Problem
Dynamic Programming Basic Exercises
Finding the smallest continuous subset of a list, and Fibonacci sequence
Sequence Alignment (Dynamic Programming)
Needleman-Wunsch to find optimal alignment of strings, in this case for genetic instructions (ACTG)
Finding strongly connected components of a graph (Kosaraju Algorithm)
Github Kosaraju’s algorithm Project 4 for Analysis of Algorithms This algorithm finds strongly connected components in a directed graph. A strongly connected component is a portion of a graph where you can get from any one node to any other node within that portion. The graph is stored like this in a txt file 1 4 2 8 3 6 4 7 And as problem 8.10 describes in https://www.algorithmsilluminated.org/ , the files describe the edges of a directed graph. Vertices are labeled as positive integers from 1 to 875714. Each row indicates one edge of the graph (the tail and head vertices, in that order). For example, the eleventh row (“2 13019”) indicates that there is an edge directed from vertex 2 to vertex 13019. What are the sizes of the biggest five strongly connected components? ...
Choosing Pivots in Quicksort
Comparing how many comparisons are required in quicksort for various pivot selection methods.
Contacts in Common App
React Native Mobile App with Expo and Supabase backend. Emphasizes privacy and security with anonymous sign ins, automatic data deletion after 15 minutes, and encryption. This app allows users to join a “room” with others by scanning a QR code and then they can see what contacts are shared in common between members of the group.
The Unit Circle App
Reference the unit circle with ease! The Unit Circle App makes trigonometry simple and interactive. Drag points around the circle to instantly see sine, cosine, and tangent values, radians, degrees, and coordinates. Perfect for homework, school, or brushing up on your math skills. Features: Interactive unit circle you can explore by touch Instantly see angles in degrees and radians Automatic calculation of sin(θ), cos(θ), and tan(θ) Clear visualization of coordinates on the circle Simple and distraction-free design for studying Whether you’re preparing for exams, doing homework, or learning trig for the first time, The Unit Circle App is your go-to tool for mastering trigonometric functions.
Karatsuba Algorithm
Multiply numbers in less than O(n^2) time.
Temple Tracker App
A mobile app to track temple attendances and statistics for members of the Church of Jesus Christ of Latter-Day Saints
C++ Online Grocery Order Processing System
Built a C++ program to process customer orders and payments from files using OOP, polymorphism, and file I/O.
Book of Mormon Searcher
React frontend, python backend. Hosted on Heroku. Now deprecated
Course Survey AI Chatbot Website for Professors
Team project with react frontend, django backend, and AI integration
Using Artifical Intelligence to create new episodes of The Office
A failed attempt of using python and a large data set of lines from The Office to try and generate new episodes.
Computer with Keyboard and Screen on Logism
16 bit CPU with keyboard and screen interactivity on Logism. Shows an image, gif, and game of pong.
Basic MIPS Assembly Programs
Homework assignment for CS2810 in which I add 3 integers, print out a complex equation using user inputs, and take the average of 4 integers using MIPS Assembly
Bubble Sort and N Fibonacci Numbers in MIPS Assembly
Complex algorithms in MIPS
Custom CPU in Logism
A custom CPU in Logism
Custom Shell
With gradle in Java, built a custom Shell in which you can make, remove, and change directories and run other programs.
MIPS Assembly - Is User Input Positive, Negative, or Zero?
In MIPS Assembly, determine if a user-inputted integer is positive, negative, or zero
Multi-Threaded Java Program to compute 1000 digits of Pi
Multi-threaded program that computes the first 1000 digits of Pi. Utilizes all system CPU cores simultaneously, using a task-based scheme to distribute the work.
Custom ALU built in Logism
Created a custom Bit component, 16-bit Register, and ALU in Logism
Custom Half and Full Adders in Logism
Custom half adder and full adder. 16 bit incrementor. 8 and 4 way multiplexers and demultiplexers.
Custom RAM and Program Counter in Logism
Custom created many different sized RAM, a program counter (PC), and Register File in Logism
Python Snowman Drawing
Drew a snowman in python with drawly
Using NAND gates to build custom logic gates in Logism
Custom AND, XOR, OR, NOT, Mux, DMux using only NAND Gates. Also custom 8 way and 16 way OR, 16 bit and, mux, not gates.
ChatGPT Translations of the Book of Mormon
Open AI API used to make a southern, western, and simplified translation of the Book of Mormon
Memory Game with Javascript
Simple memory game in Javascript
Typing tutor in React
Typing tutor in React
Activity Tracker in Django
Track activites in this Django app
Sessions in Django
Django application that uses sessions to keep users logged in.
Web Server from scratch in Python
Created a simple web server from scratch in Python
Quotes website
Use this api: https://usu-quotes-mimic.vercel.app/api/search?query=steve to make a search quotes website
Recipe Card Builder
A project for CS1410, this website creates recipe cards. It’s focus is on accessibility. It also works well with a screen reader.