[03]ABOUT> whoamionline

I started in web design and frontend development. Now I build products end to end, from interface to infrastructure, together with the AI systems that help build and run them.

role
AI Developer / Product Engineer
focus
agents, automation, products
based
the Netherlands

[01]> cat bio.txt

I'm Wesli Miggels, a developer from the Netherlands. I drew and painted long before I wrote code; I have been building for the web since around 2018. For years that meant websites: design, frontend, full builds for clients under the wesli.dev name.

That is still where my eye for detail comes from, but it is no longer where I stop. Since 2025 my own work has been products: FWRD Studio, a platform for websites that maintain themselves; Sponsorboard, a creator–brand sponsorship marketplace; and Atlas, the always-on AI operator that runs on my homelab.

A lot of my code is now written by coding agents that I direct and check. The work moved from typing every line to deciding what to build, setting the constraints and verifying what comes back.

Wesli MiggelsAI Developer / Product Engineer

[02]> tail career.log

Oldest first: from pencils to products, and the agents that now help build them.

phase 0 · analogpre-web

  1. 01drawing, painting, experimenting with colour and shape

phase 1 · the web~2018 → 2024

  1. 02starts building for the web; mostly self-taught, at home
  2. 03first wesli.dev: static HTML, C#, SQL, JavaScript, Java, PHP
  3. 04wesli.dev v2: web development & design
  4. 05wesli.dev rebuilt with PHP routing and Bootstrap
  5. 06wesli.dev 3.0 on Tailwind; UX/UI design, builds and support for clients

phase 2 · products + agents2025 → now

  1. 07founds Sponsorboard; v1 in Laravel with a small team
  2. 08FWRD Studio: websites that maintain themselves// ongoing
  3. 09rebuilds Sponsorboard alone on Expo + Supabase; built, not launched
  4. 10names Atlas, a personal AI operator; running daily since// ongoing
  5. 11rejects three WebGL concepts; rebuilds this site in Canvas 2D
  6. 12reclassified: AI developer / product engineer// ongoing

12 entries03 phases03 running

[03]> ls ~/stack --evidence

What I work with, and where you can check it. Every group points to the work that shows it.

grep -l skill ./evidence/*: which project shows which skill area
SourceAIPRODUCTINFRADESIGN
Atlasyesnoyesno
Sponsorboardyesyesnoyes
FWRD Studioyesyesyesno
WESLI.DEVnoyesnono
earlier sitesnononoyes
  • AI / AGENTS

    06
    • directing coding agents (Claude Code, headless)
    • LLM pipelines with structured output
    • model routing + fallback
    • MCP servers
    • embeddings + retrieval (pgvector)
    • prompt-injection guards

    // proof:AtlasSponsorboardFWRD Studio

  • PRODUCT / FRONTEND

    09
    • TypeScript
    • SvelteKit
    • Astro + Sanity
    • Expo / React Native
    • Next.js
    • Supabase (Postgres, RLS, edge functions)
    • Stripe subscriptions + credits
    • Canvas 2D, GSAP
    • Tailwind CSS v4

    // proof:FWRD StudioSponsorboardWESLI.DEV

  • INFRASTRUCTURE

    06
    • Cloudflare Pages / Workers / Workflows
    • Node.js, Bash, systemd
    • Proxmox (LXC)
    • Home Assistant
    • git-synced notes vault (Obsidian)
    • performance budgets

    // proof:AtlasFWRD Studio

  • DESIGN / UX

    04
    • UI / UX design
    • product flows (sitemap, onboarding, deals)
    • graphic + 2D / 3D design
    • token-based theming, WCAG contrast

    // proof:earlier sitesSponsorboard

// earlier, no longer leading with:PHP / MySQLC# / ASP.NET MVCJavaXAMLReact

[04]> cat principles.md

Five rules, each with the place it was tested.

  1. Brief first, then code

    The brief comes before any code, and I drop working versions that miss it.

    proof:three WebGL concepts for this site, dropped in one day: two for poor contrast and an invisible swarm, one for about 336 KB of JS against a 300 KB budget

  2. Verified, not claimed

    Agents do a lot of my work, so checking it is part of the work. Systems should be reliable when nobody is watching, and failures should turn into tests.

    proof:Atlas reviews its own failures every night and adds guards

  3. Model output is data

    A model answer is input for code, not the final word. JSON only, values clamped on the server, user text treated as data.

    proof:Sponsorboard match pipeline, with a prompt-injection test

  4. A human signs off

    Anything public or hard to undo waits for a person to approve it.

    proof:FWRD Studio publishes nothing until the owner approves

  5. Performance is a requirement

    Budgets are set up front and measured, not checked at the end.

    proof:the home page of this site: about 80 KB of gzipped JavaScript, under a 90 KB budget

[05]> whoami --verbose

Small, true, a little dry.

species
human (apparently)
origin
pencils and paint, then code
uptime
goes to the gym; Atlas watches the deploys
languages
Dutch, English, TypeScript
coffee
sufficient; see the home page
local time
NL
caffeinate
caffeinate: --

the last two rows are live: my local time, and caffeine modelled on my daily rhythm.

[06]> git log --oneline

Every commit to this site is an evolution. The newest ones, straight from git.

EVOLUTION 0034