-
IMDb Clone: Movie App
Web development
This web app gives users the ability to favorite, rate, filter, and search movies, while also implementing AWS Lambda and DynamoDB TTL to send reminders via SMS for movie releases in theaters. Additionally, JWT Authentication and Redis caching were implemented, leading to an 80% reduction in response time for user data. It also has a movie stats page that updates in real-time, which utilizes server-side events.
MongoDB
Express.js
React
Node.js
Redis
AWS Lambda
DynamoDB
-
Bronco Marketlpace
Web development
In this project, I led a team of 2 developers following Agile methodologies to create a customized online marketplace exclusively for Cal Poly Pomona students. The platform enabled easy buying and selling of items and services, with real-time messaging and secure school-specific email authentication, while implementing a CI/CD pipeline using GitHub Actions, Junit, and Mockito for automated testing and deployment on an EC2 instance using Docker for scalability. While leading the project, I fully developed the frontend and helped with the backend.
Spring Boot
Kotlin
Firebase
EC2
Docker
TypeScript
Angular
CI/CD
Unit & Integration Testing
-
Senior Project: Autonomous Trash Pickup
Web development
As part of a team of 5, our goal was to make SPOT more autonomous, where we chose to address the issue of littering on campus. Our group trained SPOT to autonomously look for trash, pick it up, search for the nearest trash bin, and then drop the trash in the bin. My role was implementing the algorithm using OpenCV for the SPOT robot to navigate towards the identified trash and pick it up
Python
OpenCV
TensorFlow
-
Mini Twitter Clone
Web development
This mini Twitter clone project includes functionalities for users to follow others and post tweets with real-time newsfeed updates. The system is designed with various design patterns, such as Singleton, Observer, Visitor, and Composite, to ensure code reusability and extensibility. It includes a centralized admin control panel allows the creation of users and user groups, and it provides analysis features like displaying the total number of users, groups, tweet messages in the news feed, and the percentage of positive tweet messages containing specific positive words.
Java
Swing
Design Patterns
-
Panda Express Survey Automator
Web development
This web app automates the process of filling out the Panda Express Survey Form using Selenium, benefiting over 2000+ students at Cal Poly Pomona and others. By eliminating the need for manual survey completion, it significantly reduces the time to get a redemption code for a free entrée, making it more efficient and convenient for daily diners. The deployment on render.com using Docker and Nginx as a load balancer further ensures smooth performance and handles static assets seamlessly. I posted a demo of it on TikTok, where it recieved over 800,000 views.
Python
Flask
Selenium
Docker
-
Multiplayer Pokemon Typing Game
Web development
A fun and interactive web-based game developed with two game modes for my younger sisters, Co-op and Battle. Using WebSockets, the game synchronizes the state and logic, allowing players to engage in multiplayer sessions and join different game rooms. In Co-op mode, two players collaborate to catch Pokémon together, while in Battle mode, two players compete against each other, racing to type the Pokémon name before their opponent. This educational game not only provides an enjoyable experience but also helps younger players improve their typing skills in an engaging and entertaining way.
Node.ts
TypeScript
Vue.ts
-
Study Room Scheduler
Web development
The Study Room Scheduler is a program designed to automate the process of booking optimal, available study rooms for the next day. Utilizing a greedy algorithm based on room size, allotted time, and other factors, the program runs a daily cronjob at midnight to ensure seamless and efficient scheduling, relieving users from the need to manually book study rooms every day. I posted a demo of it on TikTok, where it recieved over 14,000 views.
Python
Selenium
GitHub Actions
-
3x3 Sliding Puzzle Solver and Game
Web development
The 3x3 sliding puzzle solver and game utilizes the A* search algorithm to find the shortest number of moves required to solve the puzzle. The implementation includes a user-friendly GUI built with Pygame, providing a visual representation of the board during the solving process, enhancing the user's experience and interaction with the game.
Python
Pygame
A* Algorithm
-
AI Solves Snake Game
Web development
This project is a snake Game is a where the user can choose to have the snake moves autonomously, powered by the Breadth-First Search algorithm. Users can adjust the board dimensions, and the game offers the ability to restart when the snake dies. To control the snake's movement, players can use the arrow keys on their keyboard.
JavaFX
Breadth-First Search
-
PDF Bookmarker
Web development
Amidst the challenges of learning and reading textbooks in online PDF formats during the COVID-19 pandemic, I created the PDF Bookmarker Chrome extension as a tailored solution for students. This extension empowered over 500+ college students to easily title and bookmark pages in their PDF textbooks, providing them with a user-friendly tool to overcome the difficulties of navigating and organizing digital materials, ultimately enhancing their learning experience and making education more accessible.
JavaScript
HTML
CSS
-
Pomona Transit System
Web development
The Pomona Transit System is a Java-based application implemented using JDBC and SQL, to handle various transactions such as displaying and editing schedules, adding and deleting buses, drivers, etc. I utilized ERwin to create entity-relationship diagrams for planning, ensuring schema flexibility and normalization, resulting in a well-structured database capable of handling various transactions with efficiency and data integrity.
Java
SQL
SQL Server
JDBC