Custom Code. Pragmatic Solutions. No Bloat.

SpiesLabs builds small software products on one shared platform — including the design system this page is rendered with.

01 / PRODUCTS

Two products, two design languages.

Launching soon

Voice-recorded children’s stories pressed onto cards and mailed home as a real audiobook. Grandparents, family, and friends record a story in their own voice; the child plays it back whenever they want.

in-browser voice recordingStripe checkoutcontributor share linkslow-stimulation player mode
Visit luisterlink.nl
The Luisterlink player on a phone, showing a story being played

This section is rendered in Luisterlink’s storybook theme — same shared components, different design tokens.

Portfolio

In development

A learning-portfolio app built as a client project for a primary school. Teachers structure goals as thema → leerdoel → subdoel; children evaluate their own work on a four-smiley scale.

thema → leerdoel → subdoelfour-smiley self-evaluationbuilt for a primary school
voorbeeld

Ik kan in stappen van 10 tot 100 tellen.

Niet gelukt Een beetje Best goed Super!

This section is rendered in Portfolio’s neobrutalism theme — same shared components, different design tokens. The smiley scale is the app’s real score scale, imported from the same code.

02 / HOW IT’S BUILT

One platform underneath.

Both products run on the same platform: shared authentication, payments, file storage, typed API contracts, and one design system. The dark shell of this page, Luisterlink’s cream island, and Portfolio’s black-bordered island are the same components under three different sets of design tokens. The platform also runs a set of internal tools — chores, meal planning, stock signals.

12
apps in one monorepo
56
shared UI components
9
theme variants
three of them render this page
537
commits since Jan 2026

Angular · NestJS · PostgreSQL · TypeScript