Design that moves
Drag the points: this is how every animation on this site feels before it exists.
I’m Pablo Sepúlveda. I design and build complete web products, from the database to the last detail of motion, and I leave them up and running on the internet.
23 projects between 2023 and 2026, across web, mobile, data and games.
¿Quién es ese
Pokémon?
function saludar(n) { return `Hola, ${n}`;}saludar('mundo');
Tecnología simple para tu
almacénpeluqueríatalleralmacén39Chile hoy
$ 12.45012.90013.35014.10012.450 ▲
API → Cloud Run → Pub/Sub → BigQueryI build whole products: the database, the API, the interface and every detail of motion. I ship them fast, accessible and tracker-free, so anyone can use them without reading a manual.
From idea to the internet
Every project goes through the same three steps. Play with them: they aren’t illustrations.
Drag the points: this is how every animation on this site feels before it exists.
$ npm test
✓ damage formulas match Showdown
✓ loop guard keeps line numbers
✓ solution passes, starter fails
✓ site links, titles and alt text
pass 128 · fail 0
If a formula, a link or a challenge fails its tests, it doesn’t ship.
3,300pages published
by GitHub Actions
On Cloudflare’s edge, with automatic backups and no servers to maintain.
Featured projects
Each demo runs in your browser with the same idea as the real project, in Spanish like the original. Then visit it where it lives.
01Web product · 2026 Live
The Pokédex in Spanish, made in Chile: all 1,025 Pokémon, a daily challenge, eight minigames, battle tools and a trading card section with collections, trades and prices.
¿Quién es ese
Pokémon?
The hard part
Damage and stat formulas are tested against Pokémon Showdown on every release; if one differs, it doesn’t ship.
Built with
02Web product · 2026 Live
An HTML, CSS, JavaScript and Python playground in Spanish for teaching programming: challenges with tests, live classrooms in stages and a collaborative whiteboard.
function saludar(n) { return `Hola, ${n}`;}saludar('mundo');
The hard part
Before running, the JS is parsed with Lezer and every for/while gets a guard on the same line: line numbers don’t change and the loop is cut off after 1.5 s.
Built with
03Web + Android app · 2026 Live
A platform for learning to code in Spanish with 19 hands-on tracks, plus its Android app with Capi as your guide.
The hard part
In the testing lab, the student’s tests must pass against the correct implementation and catch 19 faulty variants, cross-checked with node:assert.
Built with
04Web platform · 2026 Demo on request
Real-time fleet management: a live map, automatic trips, estimated arrival times, mileage, geofences and alerts.
The hard part
Every position travels with a uid; a unique index means resending never duplicates, and the device only deletes what the server has confirmed.
Built with
05Web product · 2026 Live
Simple technology for neighborhood businesses: the corner store, hair salon or repair shop tells us what’s hard, and we set up the tool that helps, for free and side by side.
Tecnología simple para tu
almacénpeluqueríatalleralmacénThe hard part
The language, the large type and the “we’ll call you” button matter more than any effect: every screen was written the way you’d explain it to your neighbor.
Built with
06Lab · 2026 Lab
Artificial life in the browser: five pattern-formation models, from Turing to Lenia, computed on the GPU.
The hard part
The grid is split into about forty tiles, each running its own simulation with its own F and k: Pearson’s boundaries aren’t drawn, they emerge.
Built with
“No accounts when they aren’t needed. Less personal data, less risk.”
Everything I’ve built
23 projects: live products, prototypes, labs, a video game and academic work.
¿Quién es ese
Pokémon?
function saludar(n) { return `Hola, ${n}`;}saludar('mundo');
Tecnología simple para tu
almacénpeluqueríatalleralmacén39Chile hoy
$ 12.45012.90013.35014.10012.450 ▲
API → Cloud Run → Pub/Sub → BigQueryNo projects match that combination.
Lab
No slides: every tile is the technology itself, running.
WebGL2 · GLSLMove the cursor. Tap to change the palette.
Web Audio APITap the pads or use the A–K keys.
Web WorkersFind primes with and without a separate thread.
Canvas 2D · DeviceOrientationDrag and throw. On a phone, tilt it.
View Transitions APIShuffle the tiles.
Web Speech APIType it and hear it in English, Spanish or Japanese.
Web Crypto · SHA-256Every letter changes the whole fingerprint.
WebSockets · Durable ObjectsAnyone here will see your reactions.
Container QueriesDrag the right edge.
SVG filtersHover over the drops.
Service Worker · Storage APIThis site works without internet.
Intl APIChile’s time and date, live.
Want more? There are seven bigger toys: a fluid, the mascots in 3D, WebGPU, music… Go to the experiments
“Motion supports, never distracts. And it switches off if you ask.”
Timeline
My path on a video editor’s timeline. Scroll to move the playhead, or drag it.
The whole team. You can drag them around.
About me
I started with Python in 2023 and never stopped: websites, APIs, mobile apps, GPU labs, a video game and data analysis. Today almost everything I make ends up published, with people using it.
I care about things working without asking for more than they need: no accounts when they aren’t needed, no ads, no tracking cookies, and motion that always helps you understand, never distracts.
Contact
Tell me the idea, even if it’s only half thought out. I’ll reply from Chile.