+ + + +
Noctilucente — Selected Work
Noct. ×
Engineer · Founder · Product Builder
0%
portfolio · 2026

Software Engineer · Full-Stack Developer · Product Builder

Computer Engineering student turning ideas into shipped products — mobile apps, backend systems, algorithmic tools, and everything in between.

🇺🇸 English 🇨🇳 Chinese 🇧🇷 Portuguese 🇪🇸 Spanish
View My Work GitHub
scroll
// about me

I build complete
products, solo.

From concept to deployed — I handle every layer. Backend APIs, database design, mobile frontends, CI/CD pipelines, and algorithmic systems. No handoffs, no waiting.

Currently studying Computer Engineering at Cal State East Bay while building Curio — an AI reading app live on the App Store — writing the automation that feeds it, and shipping apps, agents and internal tools for a training company and a handful of independent clients.

12
Services live in production
1
App shipped to the App Store
4
Languages spoken
Solo
Every layer, no handoffs

Things I've built

// shipped & running in production
BEASTY PAGES
Client work · Live · 2026

BEASTY PAGES

An ordering app that behaves like an iPhone home screen. Every kitchen is an icon; open one, order from it, and a single cart carries the whole thing to one checkout. Launched as BEASTY PAGES, renamed from the original working title, The Home Screen.

  • Live and taking real orders. One cart spans several independent kitchens and splits into a separate ticket per vendor, with a state machine the kitchen moves each ticket through
  • Paid memberships run on real Stripe checkout, with the webhook signature verified against the raw request body
  • Card payment for food is the one part still switched off, and the switch is a constant in the source, not an environment variable — keying it off the presence of a Stripe key once let the app show "One charge of $X" while charging nobody
  • These are real businesses, so nothing is invented: no made-up menu item, price or photo
TypeScriptReact Node.jsExpress PostgreSQLStripe Render
ALLCPR
GOSVEA Inc · 2026 – Present

ALLCPR — iOS App

Sole developer of ALLCPR, the company's iOS app for CPR, BLS and first-aid students — class discovery, certification lookup, store, and site maps. Ships through TestFlight.

  • Rebuilt the app as an editable five-tab React codebase — Home, Map, Classes, Store, Profile — replacing a build that existed only as compiled output
  • Built a native in-app form system for volunteer signup, group training and certificate lookup, so students stop getting handed off to the website mid-flow
  • Capacitor 8 on Swift Package Manager rather than CocoaPods, with the iOS platform, icon and splash wired in and verified on device
ReactTypeScript ViteTailwind Capacitor 8Swift / SPM
GOSVEA Inc · 2026

ALLCPR Site Intelligence

Decides where to open the next training center. Scores 33,772 US ZIP codes on demand, competition and demographics, and shows the evidence behind every score — including where the evidence is thin.

  • Combines Google Places demand signals, competitor density and Census ACS demographics into a scored, source-tracked site report
  • The national layer recomputes entirely offline from stored rows, so the whole country can be re-scored without spending an API call
  • A validation harness scores the model against real class-enrollment history. It found the previous version's evidence was circular — the validation target had been injected into the rows before scoring — and the honest result is far weaker than the number it replaced. That is in the README
  • One map dashboard as the single decision surface, bilingual, with a per-ZIP panel that states the verdict, an honest range, what is known for and against, and what is still unknown. 1,300+ tests
PythonFastAPI PostgreSQLLeaflet Census ACSGoogle Places
Curio Automation
Curio · 2026 – Present

Curio Automation Platform

The content and distribution machine behind Curio. It writes, voices, captions and renders vertical video, paints image posts, runs the quality gates, and publishes to Instagram, Facebook and YouTube from one queue.

  • An autonomous video pipeline that runs a full build end to end at 1080×1920, with audit gates — prosody, caption fallback, listen-back scoring — that reject a run rather than ship it
  • A painted quote-post engine where the artwork is generated and the text is typeset in code, so producing the same post in another language costs nothing
  • A publisher split across a FastAPI queue on Render and a launchd worker on my Mac: credentials and media never leave the machine — the server only ever sees slugs
  • Best cut holds an 80.4% average watch ratio on traffic that is 97.8% cold algorithmic recommendation
PythonFFmpeg PillowFastAPI launchdElevenLabs Graph API
Continuity
Public repo · 2026

Continuity

A persistent memory layer for AI work. When one session ends, expires or runs out of context, the next one resumes from a written checkpoint instead of from nothing.

  • Holds the project state outside the model: goal, plan, task queue, decisions, checkpoints, and a handoff any agent or person can pick up
  • Local-first and runs with no LLM required — it is infrastructure above the tools, not another wrapper around one
  • Tested in CI on GitHub Actions
TypeScriptNode.js CLIGitHub Actions
Scenara
Past project · Oct 2025 – Apr 2026

Scenara

A bilingual prediction-market simulation platform targeting Brazil — positions on real events across crypto, sports, politics and macro news. Architected and built solo: frontend, backend, infrastructure and the market pipeline.

  • Trading engine with probability-based pricing, position tracking, balances, payouts, PnL and automated market resolution
  • AI market generation from breaking news every two hours, producing bilingual YES/NO markets in English and Brazilian Portuguese
  • KYC onboarding and compliance-oriented user management modeled on real fintech platforms
  • Wound down in April 2026. Prediction markets remain tightly regulated in the markets Scenara targeted, with little sign of that easing, so I stopped rather than keep building toward a launch that could not happen
React NativeExpo TypeScriptFastAPI PostgreSQLVercel Render
// agents & internal tools
GOSVEA Inc · 2026 – Present

ALLCPR Student Help Agent

A student-facing help agent built from the CRM manual, the Smart Manikin manual and the operations log. Answers course, certificate and equipment questions in English and Chinese.

  • Runs with no AI API key, by design — lexical retrieval over pre-written bilingual answers, ~7ms round trip, $0/month to operate. Adding a key only lets a model rephrase what was retrieved; it never adds knowledge
  • The 911 emergency redirect lives in code, upstream of retrieval. It was originally in the prompt, which meant that in the shipped no-key configuration it did not exist — "my baby is not breathing" returned an infant-manikin card
  • Three gates before any commit: a schema and PII scan, a coverage check that every source block is either cited by an entry or excluded with a written reason, and a question suite asserting emergencies divert to 911 while equipment questions do not
Node.jsJavaScript ExpressRender
明途
Public repo · 2026

明途 — Gut Health Advisor

A Chinese-language RAG agent for gut-microbiome questions. It does two things: explains the evidence graded by how much it can be trusted, and decides when to tell you to see a doctor. It does not diagnose.

  • A deterministic safety screen runs first. Alarm symptoms described in the first person route straight to fixed see-a-doctor wording, with no model anywhere in the path
  • Hybrid retrieval — BM25 and vector, fused with RRF — weighted by evidence grade, population and regulatory class, with quotas so specific categories cannot be crowded out
  • Every substantive claim must carry a source number, and an exit check verifies the citations exist and that the text makes no health claim banned under Chinese advertising and food-safety law. Failing text is rewritten; if it fails twice, the agent declines to answer
PythonFastAPI RAGBM25 Render
GOSVEA Inc · 2026

ALLCPR Site Operations Agent

A bilingual staff tool for Smart Manikin training sites — site inspections, incident triage, new-staff onboarding, and the SOP knowledge base behind all three.

  • A deterministic SOP answer engine with an optional model summary layer on top, so the answer does not change when the API key does
  • Fully bilingual English and 中文, matching how the sites actually operate
  • Staff view behind a PIN; FastAPI service auto-deploying to Render
PythonFastAPI OpenAIRender
GOSVEA Inc · 2026

Yelp Review Desk

Watches for new Yelp reviews, classifies each one against a configurable issue taxonomy, and drafts a fact-grounded reply for a human to approve. It never posts.

  • Never auto-posts, on purpose. Yelp has no reply API and automating the business portal risks the listing, so the flow stops at "copy and open Yelp" and a person pastes. The Gmail credential is draft-only, with no send scope
  • Yelp's notification emails turned out to be useless as a source of truth — truncated to about 80 characters and missing most reviews. The real refresh is a scrape from a logged-in browser; the email poll survives only as a tripwire for brand-new reviews
  • Slack alerts on anything at or below four stars, plus anything escalated regardless of rating. Clean five-star reviews stay quiet
  • Paired Chrome extension pre-fills the approved reply on Yelp for Business and syncs posted status back. It never clicks Send
PythonFastAPI Gmail APISlack Chrome Extension
ONPECY
Client work · 2026

ONPECY AI Lab — 3D Proposal

A renovation proposal for a second-floor AI lab, delivered as an interactive 3D page: the LiDAR scan of the real room on one side, the renovated model on the other, on the same camera so the comparison is honest.

  • The room was scanned with LiDAR and then rebuilt parametrically at its measured dimensions rather than shipped as raw scan mesh
  • Every object in the 3D maps to exactly one purchase line — click it and you get the item and its price. Proving that held required dumping all 355 model node names and checking each family against the budget
  • A layout audit script measures real clearances and prints the clash list, so the drawing can be checked rather than trusted. It found five furniture collisions and a 0.70 m walkway against a 0.90 m minimum
  • One Python estimator is imported by both the written report and the 3D page, so the two documents cannot drift apart on a number
PythonBlender three.jsglTF LiDAR
// sites & smaller builds
FLORES Boxing Gloves
Client work · 2026

FLORES Boxing Gloves

Brand site for a Bay Area maker of hand-stitched leather boxing gloves, in business since the 1920s.

  • Static site, no framework and no build step — it loads on a phone in a gym
  • Responsive product galleries served at three image widths
  • Heritage typography and a hand-drawn oval mark, drawn as SVG so it stays sharp at any size
HTML5CSS3 JavaScriptSVG
ALLCPR 安安 sticker pack
GOSVEA Inc · 2026

安安 — WeChat Sticker Pack

A 24-sticker WeChat pack for ALLCPR's Chinese-speaking students, in Chinese and English, with a download page.

  • Captions are typeset in code instead of baked into the artwork, so producing the second language cost nothing
  • Transparent PNGs sized for WeChat, generated by a Python pipeline rather than by hand
  • Hosted download page, because WeChat has no bulk install outside its own store — the honest answer was to make saving 24 files easy, not to pretend otherwise
PythonPillow HTML5Render
Noctilucente
Personal · 2026

Noctilucente

The site for my own music — an EP page under an animated night sky. The only thing I make with no metric to hide behind.

  • Hand-built, no framework, single page
  • The animated sky is deliberately cheap to draw: no backdrop-filter anywhere, because it destroyed the frame rate on mobile
  • Links out to Spotify
HTML5CSS3 JavaScriptCanvas
Leon Kelvin Li — services
Personal · 2026

Services Site

My own services page — every service I build, with a starting price next to it, across web, AI, operations, growth and data.

  • Prices stated up front rather than "contact for a quote"
  • Static, hand-written, deploys from a push
HTML5CSS3 JavaScriptRender
// earlier work
ExpertFlow
Pinned · 2025

ExpertFlow

A clickable prototype of an expert-network CRM for research teams — request intake, expert matching, consultation pipelines and SLA tracking, all in one file.

  • Nine full screens in a single HTML file with no build step. Open it from disk and it runs
  • Kanban pipeline, expert-matching views, a working dial pad, and separate Admin, Manager and Associate role views
  • Charts through Chart.js; everything else is hand-written CSS and vanilla JavaScript
  • A design prototype, not a running system — the AI panels and the dialer are mocked, with no backend behind them
HTML5CSS3 JavaScriptChart.js
Orryin Investment
Pinned · 2024

Orryin Investment

A platform letting people outside the US invest using their own country's ID — a Brazilian CPF instead of a US SSN — generalised across countries. Backend MVP with KYC, FX and brokerage flows, plus a React Native onboarding app.

  • KYC verification pipeline with document upload and identity checks
  • FX exchange and brokerage integration flows
  • React Native (Expo) mobile MVP validating onboarding and funding readiness
  • Stopped on the regulatory documentation burden, not on the engineering
PythonFastAPI React NativeExpo
MIDAS
Personal · 2024

MIDAS

Research-oriented trading system for market data processing, strategy prototyping, and historical backtesting.

  • Market data ingestion and normalisation pipeline
  • Strategy prototyping harness with historical replay
  • Performance-sensitive core in Rust and C++, analysis in Python
RustC++ Python
AIngle
Personal · 2024

AIngle

Full-stack experimental platform for AI-assisted image analysis, combining a FastAPI backend with a React Native mobile client.

  • FastAPI backend serving a visual processing pipeline
  • React Native (Expo) client for capture and review
  • Built as an experiment in end-to-end model plumbing, not as a product
PythonFastAPI React NativeExpo
catnap
Personal · 2024

catnap

AI phone and SMS intake for small businesses. Customers call or text, an AI collects their details, and the owner gets notified.

  • Telephony and SMS intake with structured field extraction
  • Owner notification on a completed intake
  • Built for businesses that lose leads to an unanswered phone
PythonAI/NLP Telephony APISMS
GX
Open Source · 2023

GX-Ambient

A Chromium extension that loops ambient tracks inspired by Opera GX, and gets out of the way the moment you play something else.

  • Five looping tracks with a picker, play/pause, and a volume slider
  • Watches every open tab and fades itself out when anything else starts playing audio, then fades back in when that stops
  • Vanilla JavaScript against the Chrome extension APIs — no libraries, no build step
JavaScriptBrowser Extension HTML5 Audio
M4L
Freelance · 2023 – 2026

Freelance Builds & Max4Live Devices

Prototypes, small business sites, automation tools and interface work for independent clients — plus custom Max4Live MIDI devices for Ableton Live with audio processing and interactive controls.

  • Small business sites built and deployed end to end, including a dog-walking service site
  • Web automation and internal tooling for one-person operations
  • Max4Live MIDI devices for Ableton Live, and LED strip control over MIDI on Teensy
JavaScriptPython Max4LiveAbleton Live C++

Always shipping

Less
More

How I got here

Jun 2026 – Present
Founder
Curio · Self-employed · San Francisco Bay Area
  • Building a full-screen reading and discovery app that turns scrolling into learning — swipeable, bite-sized reads across psychology, science, history, and endless rabbit holes
  • Architected the AI content engine behind the app: card generation, quality filtering, factual-risk screening, multi-language translation, and continuous replacement of weaker cards
  • Shipped a native iOS app from a single React + Capacitor codebase; launched on the US App Store on July 22, 2026
  • Built the automation around it — an autonomous video pipeline, a painted image-post engine, and a publisher that queues to Instagram, Facebook and YouTube while credentials never leave my machine
Apr 2026 – Present
AI Agent Development & Web Development
University of San Jose · Part-time · San Jose, CA
  • Built AI agents leveraging LLMs, prompt engineering, and workflow orchestration
  • Designed and integrated APIs, databases, and system pipelines for production use
  • Developed full-stack web platforms (React, JavaScript, backend services) supporting AI systems
  • Created dashboards and user interfaces for interacting with AI-driven applications
  • Contributed to applied AI innovation projects and deployment-ready systems
Oct 2025 – Apr 2026
Founder & Sole Engineer
Scenara · Self-employed · California
  • Architected and built a bilingual prediction-market simulation platform targeting Brazil — trading engine, probability pricing, position tracking, payouts, PnL and automated market resolution
  • Designed an AI market-generation system (GNews + Groq Llama 3) producing bilingual YES/NO markets from breaking news every 2 hours, removing manual market authoring
  • Built 9 production REST endpoints on FastAPI/PostgreSQL; migrated SQLite → PostgreSQL on Render under live load with zero data loss
  • Owned full CI/CD across Vercel and Render — deploy-to-production under 90 seconds, zero-downtime releases
  • Wound it down in April 2026: prediction markets remain tightly regulated in the markets it targeted, so I stopped rather than keep building toward a launch that could not happen
May 2025 – Apr 2026
Robotics Development Intern
GTSP Special Projects Group · Santa Clara, CA
  • Assisted in design, development, and optimization of robotic systems for specialized engineering projects
  • Supported engineers in calibrating automated machinery and improving actuator response for precision tasks
  • Identified control logic inefficiencies that reduced setup time for new system configurations
May 2022 – Apr 2024
Founder & President, Coding Club
Green River College · Part-time · Auburn, WA
  • Founded and led a student coding club focused on building real-world projects and developing technical skills
  • Organized workshops, collaborative coding sessions, and introduced members to Python and web development
Apr 2019 – Dec 2019
Max4Live Plugin Developer
Ableton · Seasonal · Brazil (Remote)
  • Developed a custom plugin for Ableton's Launchpad using Max4Live, enhancing visual performance and MIDI interactivity
  • Integrated audio processing logic and interactive user controls into the device interface

Where I study

BS.
B.S. Computer Engineering — In Progress
California State University, East Bay · Hayward, CA
Sept 2024 – May 2027
// let's connect

Got an idea?
Let's build it.

Open to internships, freelance projects, collabs, and interesting conversations about products, design, and technology.

Hayward, CA 510-826-7735 leondragon3798@gmail.com