Hey, I'm Ritvik!

I'm studying EE with potential minors in Engineering Entrepreneurship, Math, and South Asian Studies. I hope to build impactful, innovative, and equitable medical device technologies.

I like creating projects and doing work that have applications in my everyday life, use a little creativity, and teach me new skills.

If you're looking into embedded, robotics, medtech, or systems work, my projects are where I show what I can do. If you're just browsing, hope you enjoy some of the things I've created.

Let's connect: rellen26@seas.upenn.edu
Ritvik Ellendula

Ritvik Ellendula

Building stuff I find cool.

Move your cursor to play with the desk

Recent work

Projects I'm especially proud of

All projects
SystemsFeatured
P01
Systems·Spring 2026

C Compiler

OCaml compiler pipeline from C source to x86-64 assembly.

Motivation: As I gained a deeper interest in understanding lower level systems, I realized that I never understood the basis behind compilers, the actual foundation of programming. Thus, I researched what I could about compilers, and I stumbled upon Nora Sandler's book on writing compilers. Here, I learnt the principles behind developing a compiler starting with a real lexer -> parser -> IR -> codegen pipeline where I could inspect every stage. One cool thing is that the book didn't spoonfeed me the code; rather, it gave the foundations, which I had to apply to the best of my ability.

Challenge: Memory-to-memory instructions in x86 required explicit scratch-register fixups.

OCamlRecursive DescentTACKY IRx86-64Make
IteratingActively expanding language features
Machine LearningFeatured
P02
ML Systems·Spring 2026

MiniTorch-OCaml

Reverse-mode autodiff engine with custom computation graphs.

Motivation: I wanted to understand backprop beyond framework APIs, so I implemented graph nodes, reverse traversal, and gradient checks in OCaml.

Challenge: Gradient bugs were subtle and rarely obvious from forward outputs.

OCamlAutodiffComputation GraphsGradient Checking
IteratingExtending toward richer tensor operations
EmbeddedFeatured
P03
Robotics·Spring 2026

BloomBot IoT

IoT robotic flower with servos, sensors, LCD, and remote control.

Motivation: This project came from wanting something expressive and physical, not just another board demo. I integrated Blynk controls, servo choreography, sensor feedback, and display output into one system.

Challenge: Power rails had to be stabilized to avoid brownouts during concurrent servo loads.

Arduino UNO R4 WiFiBlynkWiFiS3ServosUltrasonicI2C LCD
ShippedShipped demo + iterating on next hardware revision
Lightsaber Build media 1
HardwareFeatured
P04
Hardware·Spring 2026

Lightsaber Build

CAD + circuitry + soldering to ship a handheld lightsaber build.

Motivation: I used this as a hands-on integration project: sketching, CAD, soldering, wiring, and iteration until the final object felt robust in-hand and not like a fragile prototype.

Challenge: Wire management inside the hilt was harder than schematic planning.

Fusion 360LED StripSoldering3D PrintingCircuit Design
ShippedShipped physical build

Also worth a look

More builds

Apps, tools, and experiments that still taught me a lot.

Full-Stack
P05
Full-Stack·2026

SnapFuel

Photo-first calorie logging with AI estimation and human confirmation.

Motivation: I built SnapFuel to reduce food logging friction while keeping the user in control. The core idea is: AI suggests, user confirms, dashboard reflects confirmed values.

Challenge: Model confidence needed transparent communication, not fake precision.

Next.jsTypeScriptSupabaseOpenAI VisionVercel
IteratingMVP shipped, improving reliability and integrations
Machine Learning
P06
ML + Tools·2026

LabReach AI

Research outreach copilot: scrape, summarize, draft, review, then send.

Motivation: LabReach started as a script to reduce repetitive outreach prep. I kept a human-review checkpoint as a hard requirement so automation helps without blindly sending.

Challenge: JS-heavy faculty pages broke simple scraping logic.

PythonOllamaBeautifulSoupPlaywrightSQLite
IteratingCLI pipeline working, expanding campaign tooling
Video
Full-Stack
P07
Signal + Web·2025-2026

Count Coach

Dance practice tool with waveform selection and BPM analysis.

Motivation: Built from a dance practice pain point: finding the right section and tempo quickly. The app combines waveform interactions with server-side tempo analysis.

Challenge: Syncing waveform selection with backend analysis boundaries.

Next.jsWaveSurferLibrosaPythonVercel
ShippedShipped and used as a personal practice tool
Video
Embedded
P08
Embedded·2026

Arduino TFT Tetris

Bare-metal handheld Tetris on Arduino Nano + ST7735 display.

Motivation: I built this to practice embedded game loops and real hardware debugging. Everything runs on-device: rendering, input handling, collision checks, scoring, and sound cues.

Challenge: Intermittent display issues required solder-level debugging.

Arduino NanoC++ST7735SPIAdafruit GFX
ShippedPlayable prototype complete
Video
Machine Learning
P09
CV + ML·2026

Bhangra Coach

Computer vision dance coach with pose comparison feedback.

Motivation: This project explores whether movement feedback can feel useful instead of robotic. The pipeline compares user dance clips against references and surfaces actionable differences.

Challenge: Movement alignment is hard when tempo differs between performers.

Next.jsFastAPIMediaPipeSupabaseComputer Vision
In progressActively iterating on feedback quality
Video
Full-Stack
P10
Product·2026

Penn Plates

Campus dining social app built through Penn SPARK.

Motivation: A real product-focused build with practical constraints, team collaboration, and user-oriented iteration. The goal was connecting students around dining in a way that felt lightweight and usable.

Challenge: Balancing feature ambition with limited project timeline.

Next.jsSupabaseReact
ShippedDemo-ready build completed

What I'm usually thinking about

How can I create things that can provide utility to life? Whether its practical application or just fun usage.

Medical devicesEmbedded & roboticsSystems & compilersMachine learningDance & music