Learn modern
web development
by building

Hands-on tutorials, open-source projects, and experiments. Follow along to learn Three.js, Nuxt, and TypeScript patterns.

30+
Tutorials
100%
Open Source
Marcus Nilsson
Gothenburg, SE
About

Hi, I'm Marcus

I'm a web developer, freelancer, former e-sports professional and digital creator from Gothenburg, Sweden.

I created this website as a place to document my coding journey and to share fun coding projects that hopefully will inspire you or teach you something new.

Vue / Nuxt TypeScript Three.js Firebase
Latest

Articles & Tutorials

Stay up to date with modern web technology. Deep dives, practical guides, and hands-on projects.

View all articles
Tool-Calling Trip Planner with Nuxt 4 + TypeScript + AI SDK + Mapbox GL JS
18 min
Aug 18, 2026

Tool-Calling Trip Planner with Nuxt 4 + TypeScript + AI SDK + Mapbox GL JS

Build a Nuxt 4 app where an LLM cannot invent a coordinate: Zod tool schemas in the shared/ folder, Mapbox geocoding and directions running server-side, and a map that redraws itself from the streamed tool results.

Read article
Passwordless Sign-In with Nuxt 4 + TypeScript + Passkeys (WebAuthn) + Nitro SQL
16 min
Aug 17, 2026

Passwordless Sign-In with Nuxt 4 + TypeScript + Passkeys (WebAuthn) + Nitro SQL

Ship real passkey authentication on a plain Nuxt 4 server: nuxt-auth-utils for the WebAuthn ceremony, Nitro's built-in db0 SQL layer for users and credentials, sealed cookie sessions, and the rpID gotchas that only appear once you put nginx in front.

Read article
Realtime Planning Poker with Nuxt 4 + TypeScript + Nitro WebSockets + Pinia
14 min
Aug 13, 2026

Realtime Planning Poker with Nuxt 4 + TypeScript + Nitro WebSockets + Pinia

Build a self-hosted realtime app with no third-party backend: Nitro WebSockets for the transport, Nuxt 4 shared types for one contract on both sides, Pinia for derived client state, and useStorage as a swappable persistence seam.

Read article
A Type-Safe Data Layer with Nuxt 4 + TypeScript + Drizzle ORM + SQLite + Zod
15 min
Aug 14, 2026

A Type-Safe Data Layer with Nuxt 4 + TypeScript + Drizzle ORM + SQLite + Zod

Build a Nuxt 4 backend where the database schema is the only source of truth: Drizzle for the tables, drizzle-zod to derive request validators from them, h3 validated handlers at every edge, and Nitro tasks for scheduled background work.

Read article
Nuxt 4 Mapbox: How to Add Interactive Maps with Mapbox GL JS
11 min
Jun 3, 2026

Nuxt 4 Mapbox: How to Add Interactive Maps with Mapbox GL JS

Learn how to use Mapbox with Nuxt 4. Add interactive Mapbox GL JS maps, markers, popups and GeoJSON layers in a Nuxt 4 + TypeScript app, step by step.

Read article
Nuxt 4 - Deploy with PM2 and Nginx (No Docker)
9 min
Dec 17, 2025

Nuxt 4 - Deploy with PM2 and Nginx (No Docker)

Production-ready Nuxt 4 deployment on a Linux server using PM2 and Nginx. Zero-downtime reloads, SSL with Certbot, logs, and best practices—no Docker required.

Read article
M
marcusn.dev

A place to document my coding journey and share projects that hopefully inspire or teach something new.

Get in touch

Have a project in mind or just want to say hi? Feel free to reach out.

marcus89n@gmail.com

© 2026 marcusn.dev. All rights reserved.

Built with Nuxt, Vue & Tailwind