01 — Computer engineer

I build the whole thing.

Complete systems, end to end — from ESP32 firmware to production apps, and the computer vision in between.

One person · whole stack
  • InterfaceReact · Flutter
  • Service.NET · FastAPI
  • VisionYOLOv8 · OpenCV
  • FirmwareESP32 · C

02 — Selected work

Four projects, built end to end.

WWildcat OneUnofficial
Mon
Tue
Wed
Thu
Fri
7:308:309:3010:3011:300:301:302:303:304:305:30

CPE 401

Computer Networks

CPE 412

Embedded Systems

SAL 402

CPE 405

Digital Signal Processing

CPE 418

Software Engineering

CPE 401

Computer Networks

CPE 412

Embedded Systems

SAL 402

CPE 405

Digital Signal Processing

CPE 418

Software Engineering

NSTP 2

Civic Welfare Training 2

RTL 101

Faster, mobile-friendly WITS — you sign in with your own student login.

01Wildcat One

A faster front door to the university's student system.

An unofficial, mobile-friendly wrapper over CIT-U's WITS backend — students sign in with their own credentials and finally get a portal that loads fast and works on a phone.

Problem
The official student portal is slow and awkward on mobile, yet it's where students live for schedules, grades, tuition, and enrollment. The pain is universal on campus and nobody had rebuilt the front end.
Approach
Built a React + Vite PWA that logs into the real WITS API with the student's own login and re-renders what comes back — schedule as a real week grid, grades, tuition, curriculum, enrollment. The hard part was reaching WITS at all: it sits behind Cloudflare, so the production proxy is a session BFF on a non-datacenter host, since any cloud function gets challenged or blocked. Authorization stays per-user on the real backend; the wrapper never holds anyone's data.
Result
The only deployed system in the Wildcat One monorepo, and the one students actually reach for — the same information, but fast, installable, and built for the device it's read on.
ReactVitePWAWITS APIVal Town BFFVercel

Private build · unofficial · walkthrough on request

Gala Concierge

Connected to Google Places API

Select a sample prompt

Here is your proposed Plan for Tokyo, Japan — every Stop validated with an official Google Place ID.
  • 10:00 AMSenso-ji Temple & NakamiseCulture4.7ChIJm7...Asakusa
  • 01:00 PMTsuta Japanese Soba NoodlesFood & Dining4.8ChIJ...Shibuya
  • 04:30 PMteamLab Planets TokyoActivity4.9ChIJ...Toyosu

02Gala

Plan a group trip by talking, not filling forms.

A mobile app where a group plans a trip by talking to an AI concierge — the conversation becomes a shared, editable itinerary with a map and split expenses.

Problem
Group trips die in the group chat. The plan scatters across hundreds of messages, nobody can point to a single source of truth, and who-owes-whom gets settled from memory weeks after everyone gets home.
Approach
Built conversation-first: the concierge turns a plain-language brief into a full day-by-day plan, and every edit — swap a lunch stop, add a café — happens in the same thread. Expo and React Native on the front, Supabase with row-level security behind it, and every model call confined to an Edge Function so keys never touch the client. Concierge prompts are versioned like code and scored against a golden-set eval runner in CI.
Result
One place that holds a trip: the itinerary, the people and their roles, the map, and the money — so nobody has to scroll a group chat looking for the plan.
React NativeExpoTypeScriptSupabasePostgres RLSEdge Functions

Project lead (PM) · six-person team

Private build · walkthrough on request

VeraLovebetaVerified · 60

Today’s circle

A few hearts, quietly chosen for you

✓ Verified

Something lasting · Cebu City

Sofia 22

Art student who loves to travel. Always behind a camera.

Match

96/100

Verified · 4 of 4 stepsID, selfie, email, social presence — all confirmed.

Loves

ArtTravelPhotography

One face at a time — no rush, no endless rooms.

03VeraLove

A dating app built to disarm love scams.

Online dating runs on trust, and romance scammers weaponize it. VeraLove lets everyday daters match, chat, and video-call inside one verified space — so a real connection never has to mean real risk.

Problem
Romance scams drain victims of billions every year. Mainstream dating apps optimize for matches, not for proving the person behind a profile is real — and the moment a chat moves to WhatsApp, the safety net is gone.
Approach
Built trust into the core, four ways: identity and profile checks so accounts can't be hollow, video-call verification scammers won't sit through, in-app chat and calls that stop people being lured off-platform, and scam-pattern detection that flags money-request scripts in real time — all on a clean, tested .NET architecture with separate user and admin apps.
Result
A dating experience where chat and video aren't bolted-on extras — they're the safety layer, keeping people inside a verified space built to make a scammer's usual playbook impossible.
C#.NETIdentity checksVideo callsReal-time chat

Private build · walkthrough on request

Banter— #generalF1 Help
▀█████████▄     ▄████████ ███▄▄▄▄       ███        ▄████████    ▄████████
  ███    ███   ███    ███ ███▀▀▀██▄ ▀█████████▄   ███    ███   ███    ███
 ▄███▄▄▄██▀    ███    ███ ███   ███     ███   ▀  ▄███▄▄▄      ▄███▄▄▄▄██▀
▀▀███▀▀▀██▄  ▀███████████ ███   ███     ███     ▀▀███▀▀▀     ▀▀███▀▀▀▀▀  
  ███    ██▄   ███    ███ ███   ███     ███       ███    █▄  ▀███████████
▄█████████▀    ███    █▀   ▀█   █▀     ▄████▀     ██████████   ███    ███

where modernity embraces tradition

<maria> is the build green yet?

<adrian> just pushed, give it a sec

<maria> ok pulling now

>
normalizeddamnthatwasfastcensored**** that was fastmatcheddamn

04Banter

A real-time chat app that lives in your terminal.

Retro BBS on the surface, modern cloud underneath — a fully featured chat client that never makes you leave the command line.

Problem
People who live in the terminal shouldn't have to switch apps to chat — but a text interface usually means giving up real-time sync and rich features.
Approach
Built a complete text UI with Terminal.Gui over Google Firestore for live sync, with local caching, Firebase auth, group chats, message pinning, and profanity filtering that even catches leetspeak.
Result
A mouse-aware, fully featured chat client running entirely in the terminal — proof that a constrained surface doesn't have to mean a basic product.
C#.NETTerminal.GuiFirestoreFirebase

03 — What I do

One person you can hand the whole problem to.

Full-stack product builds

From the database to the interface — I design, build, and ship complete applications that stay fast and are ready for real users, not just demos.

Embedded & hardware

ESP32 firmware, sensors, and devices that bridge code and the physical world — the layer most developers never touch.

Applied computer vision

Detection and tracking systems built on YOLOv8 and OpenCV — and packaged so a non-technical person can actually run them.

Prototyping & technical advice

Planning, drafting, and quick working prototypes — plus a straight answer on what's worth building and what to skip.

Hardware

I don’t stop at the screen.

Microcontroller firmware, a working smart-plug system, and a Flutter app to configure it — the hardware that keeps “end to end” honest.

  • ESP32 firmware (C++)
  • Smart-plug system
  • Flutter config app

04 — About

About

I care about the part most people skip — the last stretch where software stops merely working and starts feeling finished.

I’m a Computer Engineering student who builds across the entire stack of a real product: the firmware on the board, the service behind it, the interface in front of it, and the computer vision that ties it to the physical world. I’m drawn to problems that don’t fit neatly inside one discipline.

I learned the fundamentals the hard way — data structures and systems hand-written in C — and it shows in what I ship: software that installs in one click, runs fast, and is documented well enough for someone else to pick up. Hire me and you get one person who can plan it, build it, and hand it over clean.

05 — Contact

Have something worth building? Let’s talk.

Tell me what you’re trying to make. I’ll tell you the most direct way to build it.