Hi. This is my repo for everything and nothing. It is used in several blog posts and for workshops.
This is a small collection of code I hope shows some good concepts. Please let me know what you think. 😄
This repo is updated continuously, so be sure to star and watch it for updates.
A few notes on things I am trying to show in this code. You can find links to the specific examples on each page (if there are any):
I used Claude to generate a visual representation of this. It is fairly accurate, but might not make much sense before you actually read the information here. You can find it here: TDD Concepts Overview - Visual guide showing how all concepts relate
Reach out:
A lot of this content has come out of endless discussions with fellow developers. But special thanks goes out to Asgaut Mjølne, Ola Hast, and Terje Heen for the regular discussions we have.
If you're looking for the workshop, you can find it here.
Install the latest versions from their new home:
npx skills install anderssv/ai/skillsThe skills previously here were:
- kotlin-sum-types 🔀 - Parse, don't validate with sealed classes for type-safe validation
- kotlin-tdd 🧪 - Test-Driven Development with fakes, object mothers, and Testing Through The Domain
- kotlin-context-di 🔌 - Manual dependency injection using SystemContext and TestContext patterns
- idiomatic-kotlin 🏛️ - Idiomatic Kotlin over Java-style patterns
Older versions remain in skills/ with redirect notices.
Install mise
Mise will make sure you have the right tools and versions. If not:
- Java 25
- Git
- Download this repository
git clone https://github.com/anderssv/the-example.git cd the-example - Install Java using mise:
mise install # This will install Java 25 as specified in .mise.toml - Build the project:
./gradlew build
It works with most editors, but I recommend using IntelliJ IDEA. Most stuff is good with default plugins, but I also recommend:
- Mermaid plugin
- Markdown plugin
- GitHub Copilot plugin