This Portfolio
I created this portfolio first because my school asked me to, but it turned into a long-running playground I keep coming back to.
No HTML files, no CSS files, no JavaScript I wrote by hand, every page and every style rule is Kotlin compiled to JavaScript through Kobweb and Compose HTML.
June 2022
Started
100% Kotlin
Language
Kobweb + Compose HTML
Framework
Cloudflare Pages
Hosting
Why I Built It
My school asked for a portfolio to validate the first year, but I wanted more than a template someone could fill in a weekend.
Something that could explain what I do, how, and why, beyond a bare GitHub profile.
Designing It
The early visual identity started as mockups in Figma, with my internship tutor pushing me on layout and color while I focused on the code.
These days the design lives directly in Compose HTML: styling and layout are iterated on in Kotlin itself, no separate design tool.
Building It
Everything is Kotlin: pages, styling, and the build script itself, compiled to JavaScript through Kobweb and Compose HTML.
One typed language for the whole site means the compiler catches broken links and typo'd CSS colors before they ever ship.
Shipping It
The site is statically exported with kobwebExport, then deployed to Cloudflare Pages straight from GitHub Actions on every push to master.
No manual uploads, no dynamic server to maintain, just static files served from the edge.
Built With
Want the deep dive, the actual code samples, and why I'd still pick a boring stack for a team project? Read how this portfolio was built.