Skip to content

Journal

Notes on Svelte, sprints, and shipping.

Notes on Svelte, SvelteKit, accessibility, performance, and shipping web work.

Svelte

Migrating from Svelte 4 to 5, one component at a time

Move a SvelteKit app from Svelte 4 to 5 gradually, convert a component to runes, and test for a server-rendering mistake that a build can miss.

Read entry

Why Generic "We Can Do Anything" Positioning Is Killing Your Agency (And How Strong Opinions Build Your Business)

One lesson I've learned running an agency is that your well-being as a founder, the success of your company, and the quality of work you deliver to your clients are all directly related to the strength of your opinions.

Read entry
SvelteKit Updated

SvelteKit authentication: what fits in a two-week sprint

Plan SvelteKit authentication with Better Auth, server-side session checks, authorization tests and a realistic two-week scope for an MVP.

Read entry
Updated

KitForStartups: evaluating the SvelteKit SaaS boilerplate

What KitForStartups includes, its dependency and maintenance status, and what to test before using this SvelteKit SaaS starter for a production application.

Read entry
Case Studies

Building an MVP Fast with SvelteKit: How We Created a Google Analytics Dashboard in 3 Weeks

Learn how our team leveraged SvelteKit to build a Google Analytics dashboard MVP in just 3 weeks. This case study covers our tech stack, development experience, key learnings around state management, and how SvelteKit enabled rapid prototyping.

Read entry

How to embed Svelte apps inside PHP?

Learn how to embed interactive Svelte components into PHP apps and WordPress themes. See code examples of fetching data from the WP REST API, building search/filters, using stores, Rollup bundling, and more. Modernize legacy PHP without a huge rewrite.

Read entry

How to debounce in Svelte?

Learn how to debounce functions in Svelte to limit how often they run. Implement a debounce utility to rate limit API calls for search boxes and other inputs.

Read entry
SvelteKit

Programmatically navigate in your SvelteKit app with goto

Lear how to programmatically navigate in your SvelteKit app using the `goto` function

Read entry
Svelte

Understanding the {#await ...} block in Svelte

Unravel the power of the {#await ...} block in Svelte! Explore how it improves code readability, and efficiently handles loading states & errors in data fetching.

Read entry
Svelte

How to re-render Svelte components?

Get hands-on with Svelte! Learn how the {#key ...} block lets you control re-rendering and breathe new life into your components.

Read entry
Svelte Updated

Companies using Svelte: documented applications and adoption

Explore documented Svelte and SvelteKit use at Stack Overflow, Hugging Face, Windmill and Cyfrin, plus Appwrite’s historical use and announced migration.

Read entry
SvelteKit

404 Not Found? A Guide to SvelteKit Custom 404 Pages

Turn 404 errors into memorable experiences with SvelteKit! Uncover the secrets to custom 404 pages, and save internet kittens, one 404 at a time.

Read entry
SvelteKit

Is SvelteKit a full-stack framework?

Wondering if you can use SvelteKit as a full-stack framework? You landed at the right place. Let's dive in!

Read entry
SvelteKit Updated

SvelteKit SEO: metadata, canonicals and indexing checks

A practical SvelteKit SEO checklist for server rendering, metadata, canonicals, robots, sitemaps and structured data, with a tested Svelte 5 example.

Read entry

Top 5 React Alternatives for Web Applications Development

Explore the alternatives to React such as Svelte, Vue, Angular, and more. Learn why they matter and how they can drive your project's success.

Read entry
Svelte Updated

Hire Svelte developers: scope, costs and how to choose

How to hire a Svelte or SvelteKit developer: assess relevant work, define a paid trial, compare scope and costs, and choose a specialist or employee.

Read entry
SvelteKit

Can SvelteKit be Used for Landing Pages? Absolutely, Here's Why and How

Discover the power of SvelteKit in creating high-converting landing pages. Learn why SvelteKit is the go-to choice for developers at Okupter, a leading Svelte development agency

Read entry
Svelte

Conditional Classes in Svelte

Discover how conditional classes in Svelte can streamline your app design process. Includes a detailed guide on managing active navigation links in SvelteKit.

Read entry
SvelteKit

How to upload files to Cloudflare R2 in SvelteKit

Dive into our step-by-step guide to master file uploads in Cloudflare R2 with SvelteKit. Learn about the R2 service, set up projects, and optimize your cloud storage experience!

Read entry
SvelteKit

How to deploy a SvelteKit website to GitHub pages

Learn how to streamline your SvelteKit app's deployment to GitHub Pages in our step-by-step tutorial!

Read entry
SvelteKit

How to fix the "window is not defined" error in SvelteKit

Overcome the "window is not defined" error in SvelteKit with ease! Learn effective solutions like using the SvelteKit browser module and onMount lifecycle function.

Read entry
SvelteKit

How to fix the "document is not defined" error in SvelteKit

Eliminate the frustrating "document is not defined" error in SvelteKit with our helpful guide. Understand why it occurs and apply proven solutions for smoother development.

Read entry
SvelteKit

Mastering Client-Side Authentication with Firebase and SvelteKit

Mastering Client-Side Authentication with Firebase and SvelteKit

Read entry
Svelte

Svelte vs. React: A Comprehensive Comparison

Explore the differences between Svelte and React, comparing architecture, reactivity, syntax, and developer experience to make an informed choice.

Read entry
Tips

How to fix the duplicate meta tags issue in SvelteKit

Get your website's meta tags back on track with our step-by-step guide to fixing the duplicate meta tags issue in SvelteKit

Read entry
Svelte

How to implement file upload with SvelteKit

Looking to implement file uploading in your Svelte project? Check out this tutorial for an easy-to-follow guide and start uploading files like a pro.

Read entry
SvelteKit Updated

Headless WordPress with SvelteKit and WPGraphQL

Build a SvelteKit frontend for WordPress with WPGraphQL: a server-rendered post example, safe HTML, previews, caching, redirects, and deployment checks.

Read entry
TypeScript

Why you should use TypeScript in your next SvelteKit projects

TypeScript and SvelteKit make a powerful duo. Get the benefits of type safety and easy integration with this guide to using TypeScript in your SvelteKit projects. See why it's worth making the switch.

Read entry
SvelteKit

E2E testing with SvelteKit and Playwright

Learn how to set up E2E with Playwright in your SvelteKit app. Ensure your app works as expected for your users and automate testing.

Read entry
SvelteKit Updated

SvelteKit URL state: filters, sorting and pagination

Build a SvelteKit dashboard with server-loaded filters, sorting and pagination. Includes a complete Svelte 5 example, validation and browser history.

Read entry
SvelteKit

I want to know more about you

Become a part of the conversation on Svelte and SvelteKit. Connect with like-minded developers and learners.

Read entry
Tips

Fix the 'Cannot stringify arbitrary non-POJOs' error in SvelteKit

Solve the "Cannot stringify arbitrary non-POJOs" error in SvelteKit with this quick and simple guide. Learn how to fix the issue by serializing non-POJOs with JSON or structuredClone.

Read entry
SvelteKit

Add a sitemap to your server side rendered SvelteKit website

Learn how to add a sitemap to your server side rendered SvelteKit website.

Read entry
Svelte

Svelte and CSS

Learn how Svelte handles CSS and styles, and how you can take advantage of that for your Svelte and SvelteKit applications.

Read entry
SvelteKit Updated

SvelteKit query parameters: read, update and validate

Read and update query parameters with Svelte 5 and SvelteKit 2. Includes reactive page state, goto, server validation and history behavior.

Read entry
SvelteKit Updated

Svelte vs SvelteKit: the difference and when to use each

Svelte builds components; SvelteKit adds routing, data loading and deployment. Compare use cases, rendering options and current Svelte 5 examples.

Read entry
SvelteKit

Building this website with SvelteKit and DatoCMS

Explore the journey of building a website with SvelteKit and DatoCMS, including the challenges and successes I encountered.

Read entry
SvelteKit

SvelteKit Internals: the handle hook

Learn about the handle hook in SvelteKit and how it can be used for authentication, route protection, and more.

Read entry
SvelteKit

SvelteKit Internals: Load function

Discover how SvelteKit's load function simplifies data loading in your web app.

Read entry
SvelteKit

Introducing the "SvelteKit Internals" series

Get practical advice on using SvelteKit from a developer who has built projects with the framework. This blog series provides tips and insights to help you succeed with SvelteKit projects.

Read entry
SvelteKit

Build a SvelteKit application with Docker

One of the most interesting pieces of software in modern web development is Docker. It allows building, shipping, and running applications in a container. In this article, we will learn how to build a SvelteKit application with Docker.

Read entry
SvelteKit Updated

SvelteKit form validation with Zod 4 and Svelte 5

Validate SvelteKit forms on the server with Zod 4, return field errors with fail(), and keep submitted values in a complete Svelte 5 example.

Read entry
SvelteKit

Understanding environment variables in SvelteKit

Environment variables are an important feature of NodeJS applications. In this article, we will learn how SvelteKit makes use of them and how to use them effectively.

Read entry
SvelteKit

Handling authentication and authorization with JWT in SvelteKit

In this article, we will learn how to handle authentication and authorization with JWT in SvelteKit.

Read entry
Astro

The case about Astro

This article describes what I learned, what I like about Astro, the static site generator, and what makes it an interesting tool to consider.

Read entry