Skip to content

Projects

Here is a selection of what I built and maintained during my years at an agency, for clients in both the private and public sectors. Last come my own development projects in design-to-code, agent architecture and semantic search, which I have been working on since July 2026.

Dbase and web

Our own WordPress foundation for the agency's websites: a base theme and a library of ready-made modules. New sites could start from tested building blocks instead of from scratch, which gave a shorter path from design to finished site and the same quality across projects. Most of the agency's web projects from this period are built on Dbase.

Dbase

Our own WordPress foundation, behind most of the agency's websites

  • WordPress
  • PHP
  • SCSS
  • JavaScript

Evida

Independent financial advice, with development, content and security for more than a decade

  • WordPress
  • PHP
  • Dbase platform
  • Elementor

Inor

A long web partnership around a large product catalogue in four languages

  • WordPress
  • PHP
  • JavaScript
  • WooCommerce
  • Linux/hosting
  • Statens konstråd

    Public art database and website for a Swedish government agency, WCAG-driven

  • Tekniska Museet

    Built in SiteVision rather than WordPress, the museum's public site plus a search across its collections

  • Tetra Pak — Onboarding

    Onboarding site for new Tetra Pak employees

  • Dynamic Cookie

    Self-built cookie/GDPR consent management plugin for multisite WordPress

An improvement made once should benefit every client. That is the idea behind both InPublix and Dbase.

InPublix

The agency's platform for publishing annual, quarterly and sustainability reports on the web, not only in print. I initiated it to get rid of slow PDF proofing, and was responsible for all of it, from development to support and training. It has been in use since 2014, and several clients have produced their reports on it for a decade or more.

InPublix

The agency's SaaS platform for digital annual reports, which I initiated and owned end to end for over a decade.

  • WordPress
  • PHP
  • JavaScript
  • SCSS
  • Highcharts
  • Visual Composer

Peab

Annual and quarterly reports since 2016, and much of InPublix's development history.

  • WordPress (InPublix)
  • InDesign integration

Alfa Laval

Annual reports 2022–2024, digital and print, kept up to date through an Excel import

  • WordPress (InPublix)
  • Excel import
  • InDesign
  • DUX Digital Price Lists

    DUX's yearly reseller price list was produced in InDesign in 13 currency versions, each with its own proofing round. I moved the product data to Excel and imported it into WordPress, where every table and version is built dynamically, and the texts come from a separate Excel file in the same way. Every change is now made in Excel and one import regenerates all price lists, which meant far fewer proofing rounds and the same quality in every version.

  • Brand Source

    Tetra Pak's logos, illustrations and brand guidelines used to reach partners worldwide on thousands of DVDs. Together with the team we proposed one central, always up-to-date service instead, and I handled all the technical implementation and the requirements: a brand portal on InPublix, with downloads in several languages and an onboarding flow with automatic registration for invited guests, used by thousands of people globally.

  • Svedab

    Annual and sustainability reports and quarterly reports since 2015, ongoing

  • Perstorp

    Annual reports 2019–2025, InPublix used as a proofing tool

  • Duni

    Annual reports 2015–2023, digital and InDesign

  • Castellum

    Annual report, 2023

  • Arjo, Atos Medical, LKAB

    Annual/digital report production

Design, content and code each tend to keep their own copy of what a module is. Much of what goes wrong in a web project starts there.

Exploration and concepts

Ideas I am exploring and concepts in development. My own projects, not client work. Here I design and build myself with Claude Design and Claude Code, starting from a written requirements document and moving in small, tested steps. The decisions stay with me.

In Development · Own project

Modern web stack

From WordPress to TypeScript, React and headless Umbraco, learned by building real projects

  • TypeScript
  • React
  • Next.js
  • Node.js
  • Umbraco
  • Python

Own project

Design Bridge

One shared design system for design and code, with a faster way from brief to working prototype, without losing control

  • Design tokens
  • Radix UI
  • Claude Design
  • Claude Code

Concept · Own project

Content Studio

A way of working where content, design and code are produced in parallel, with tools that hold it together

  • Umbraco
  • Claude Code

Concept/In Development · Own project

LangGraph Engine

One engine that runs a team of AI agents, where configuration decides what the team does

  • Python
  • LangGraph
  • FastAPI
  • PostgreSQL
  • Claude API