ZainLink: Full-Stack URL Shortener
Purpose: Personal Project Duration: May 13, 2024 – OngoingObjective: ZainLink is a full-stack web application designed to securely shorten URLs with optional custom aliases. The website features include CAPTCHA protection, user authentication, and a live dashboard for managing links which the user has created. There is also an admin account which can manage all links created by other users straight from the dashboard on the website.
I handled both the frontend and backend architecture. The backend is built using the python framework Flask and connected to a MongoDB Atlas database. For deployment, I used Render for backend hosting and IONOS to point a custom domain (zainlink.com) to the app using DNS records. The frontend is built with HTML and CSS. I also added Google Analytics tracking to measure real user engagement.
Skills/Softwares Used
- HTML/CSS
- Flask (Python)
- MongoDB Atlas
- CAPTCHA Integration
- Google Analytics
- Render & IONOS DNS
Rocketry Payload Electronics
Purpose: First Nations Launch Rocketry Competition Duration: October 13, 2024 – April 26, 2025Objective: The First Nations Launch (FNL) is a NASA-sponsored high-powered rocketry competition where teams must design, build, and launch rockets with scientific payloads. This year’s payload specifications required us to create a payload system to record environmental data and demonstrate real-time onboard sensing.
As the Payload Lead, I decided putting an atmospheric pressure and a 9 degrees of freedom sensor into our rocket. I programmed and calibrated the BMP280 sensor for pressure/altitude data, the ISM330DHCX sensor for acceleration and gyroscope data, and the MMC5983MA sensor for magnetometer measurements. I led breadboarding and final assembly of the electronics payload where I coordinated with the avionics team to ensure proper fit and thermal safety.
I had to conduct extensive ground testing and debugging to ensure the payload could handle real launch conditions without crashing or corrupting data. We also had two testing launches of the payload bay before the competition date where I made revisions to the payload after each test. After these test launches I created MATLAB scripts to plot the data which the sensors were collecting after launch. I delivered detailed technical write-ups and system diagrams for the competition through the different phases of development for the rocket.
Skills/Softwares Used
- MATLAB
- Arduino programming (C++)
- Sensor integration (I²C)
- RockSim & OpenRocket
PCB Design Project
Course: Digital Electronics Duration: March 4, 2024 – March 30, 2024Objective:This was an individual project and I decided to create a coin flipper that gives one of two outcomes randomly. To begin this project I first created a proof of concept by bread boarding the design and creating it on a simulation software called Multisim. Then I created the PCB design on Fusion 360 manually connecting and placing all of the components how I wanted them on the board. After printing this layout on a mask I transferred the mask onto a copper board using an iron. Then after washing away the excess copper using ferric chloride, I drilled holes in all of the places where I would place my components. Then I soldered all of the components to the board. This project challenged me to use my prior knowledge to create a brand-new circuit. During the project, I encountered some challenges. For example, during the creation of the PCB layout I had to figure out a format that would involve the least amount of jumper wires. I enjoyed working on the project and it gave me experience with creating a PCB circuit from scratch.
Skills/Softwares Used
- Fusion360
- Soldering
- NI Multisim
- PCB Design
Circuit Design Project
Course: Digital Electronics Duration: October 11, 2023 – October 21, 2023Objective: The purpose and goal of the project was to create a circuit that solves a problem utilizing both combinational and sequential logic. Our project needed at least three inputs and one output. We created an automated soccer referee system that determines whether a foul is a red or yellow card. I was specifically tasked with completing the combinational logic portion of both the Multisim simulation and breadboard. This challenged me to implement my understanding of AOI logic components into a practical scenario. We began the project by listing all inputs and outputs needed to function. I created a truth table and a system of logic gates to meet desired outputs. I simplified gate use for easier completion in Multisim. Overall, I enjoyed this project and gained real-world circuit design experience.
Skills/Softwares Used
- Logic Gates
- NI Multisim