Hello, I'm

Anton
Ödman.

I'm a software developer at Layer 10, currently working at Volvo Group. I've written for Better Programming, I write guides on Banjo Code, and my side projects live on GitHub.

Portrait of Anton Ödman
Companies
Coding stats

Coding stats

Where my hours go.

Since 2019, WakaTime has counted every hour I spend actually writing code. Here it is, week by week.

–coded since 2019
–of it in TypeScript

Loading coding stats...

Who am I?

Who am I?

From Excel to code.

I didn't plan on becoming a developer. I found my way into it by accident, at a job I'd picked for the wrong reasons.

Anton Ödman looking out of a window
  1. Growing up

    The plan was economics

    I was sure I'd end up in economics, with my own office and lots of Excel. Making Flash games and websites on the side was just for fun. Or so I thought.

  2. University

    The wrong path

    I graduated with a degree in economics, then lasted about three long months at work before I realized I'd picked the wrong path.

  3. At work

    Automating my job

    I started automating my tasks with small Python scripts. Before I knew it, I was automating everything I could find.

  4. One year

    Teaching myself

    Three more years of school felt like too much, so I spent a year teaching myself to code online.

  5. Today

    Coding for a living

    I landed my first developer job, and today I work across the whole stack. Probably the best decision I've ever made.

Writing
Projects

Projects

Things I've built.

Games, apps and tools. Most of them full-stack, all of them built for fun. The ones marked pre-AI were made by hand.

pre-AI
Ordkupan logo

01

Ordkupan

A Swedish take on Spelling Bee from the New York Times. Find as many words as you can from a handful of letters, and compete with everyone else on the daily leaderboard. Built for phones, and you can install it like an app.

TypeScriptReactTailwindPostgresPrismaDocker
lanelint logo

02

lanelint

Keeps coding agents in their lane. A fast architecture linter for TypeScript that tidies up your project structure after every edit.

TypeScriptOxcNodeVite+npm
pre-AI
Banjodraw logo

03

Banjodraw

Excalidraw with a few extra features. Save your drawings, sync them with your Google account, and share a link to draw together with friends.

TypeScriptReactTailwindPostgresExpresstRPCPrismaFirebaseDockerTurborepo
contextfiles.nvim logo

04

contextfiles.nvim

A Neovim plugin that finds the AI rule files that apply to the file you have open, so your chat gets the right context. Works with Cursor-style rules, GitHub Gists and CodeCompanion.

LuaNeovimCodeCompanion
pre-AI
Banjoreader logo

05

Banjoreader

A full-stack RSS reader. Follow your favorite blogs and feeds in one clean, simple place.

TypeScriptTurborepoHonoReactTailwindPostgresPrismaFirebaseDocker
pre-AI
banjo/utils repository card

06

@banjoanton/utils

The utility functions I kept copying between projects, collected in one package on npm.

TypeScriptnpmNodeVitest
pre-AI
Banjo Deck cards

07

Banjo Deck

A deck of cards for the most popular card games, designed from scratch by me. More than 250 copies sold.

IllustratorPhotoshopWordPress