Hi, I'm Immanuel.
I am a UI Designer
I design and build user interfaces and website front-ends, from mobile to desktop, that look sharp, feel fast, and scale effortlessly.
Design, from craft to code.
I'm a UI designer who builds. Years of shipping Nuxt and Vue applications means I understand what design actually costs to implement — so I design for the system, not just the screen.
I'm drawn to technically complex products where the interaction model matters as much as the visual layer: developer tools, infrastructure UIs, and design systems that have to scale from an end-user to an entire engineering team.
Component-driven, pattern-first design — built to be handed off, implemented, and scaled.
I build in Vue and Nuxt, with experience in other frontend frameworks like React. I know what ships and what doesn't before we get to review.
I'm comfortable designing for everyday users, power users, developers, and infrastructure operators where precision beats polish.
I use AI tools daily — Claude Code and Cursor IDE — to collapse the distance between idea and final, polished, working product.
What I work with
Design and code are the same discipline to me — one informs the other at every step. AI is part of my workflow, from rapid prototyping and tooling to exploring new interaction patterns.
Front-End Development
Component-driven UIs with a focus on performance, accessibility, and maintainability.
- Vue 3
- Nuxt 4
- TypeScript
- Edge Functions
UI Design & Systems
Interface design, component libraries, and design systems built for real engineering teams.
- Figma
- Sketch
- Design Systems
- Component Libraries
- Prototyping
Backend Development
REST APIs, auth patterns, and data modeling.
- Node.js
- Express
- REST APIs
- Supabase
- PostgreSQL
Platform & Tooling
Deployment pipelines, developer experience, and infrastructure.
- Vercel
- GitHub
- Vite
- Docker
Featured projects
Why Vue — and why it matters.
I know React. I've shipped in it. But after years of building with Vue and Nuxt, I've come to a clear conclusion: Vue is a better-designed framework for most of what I build, and Nuxt is the best full-stack frontend environment in the JavaScript ecosystem.
Vue's SFC format keeps template, script, and style in one file. Logic lives where you expect it, styles are scoped by default, and there's no JSX overhead or context-switching between files.
Nuxt gives me file-based routing, auto-imports, server routes, SSR/SSG, and a composable-first data layer with zero config. What takes days to wire up in a bare React project ships in an afternoon.
Vue's reactivity model (ref, reactive, computed) is explicit and predictable. React's hooks require internalizing closures and stale state in a way Vue simply doesn't impose.
Vue has clear, opinionated answers for state, animation, and component patterns. React leaves those choices open, which sounds like freedom but means re-deciding the same questions on every project.
Let's build something.
I'm open to the right opportunity — a team where design and engineering work as one. If that's you, let's talk.