Solutions

Four shapes of work, and what each one is worth

Below are the solution types we actually sell, described with their limits. The projects underneath are real builds from our own and our partners' repositories — named, dated, and linked where the code is public.

Solution types

What you are actually buying

Automation pipeline

Two tools that should already be talking to each other

We connect the systems you already pay for, automate the re-keying between them, and leave you a measured before and after. Nothing new to buy, nothing new to learn: the deliverable is the pipe and the number that proves it.

  • Typical duration: two to four weeks.
  • You keep every tool and every export.
  • No proprietary platform, on purpose.
Proof of concept

Answer the risky question before you sign anything

A small real build that settles the one thing you cannot decide by reading a vendor deck. It runs on your own data or on a representative sample, it is measured, and it is deliberately short enough to fail cheaply.

  • Typically four weeks from first meeting.
  • A written answer, including a negative one.
  • The code and the measurements are yours.
Training and measurement

Teach the team to tell a gain from a press release

Short sessions for your staff or your clients, plus the measurement framework that lets them prove an automation gain themselves — the one that survives a board meeting without us in the room.

  • Two-hour modules, in English or French.
  • Open to clients and to the public.
  • Indicators you can run without us.
Managed hosting

Run it in Europe, and answer when something breaks

Deployment, updates, backups and monitoring on infrastructure inside the Union, behind Cloudflare. We take the on-call rotation, publish the abuse channel with its 72-hour first-response commitment, and write down the retention limits.

  • EU regions only, by construction.
  • Abuse contact with a 72-hour first answer.
  • 14-day logs, no profiling, no ad network.

Builds

Five projects, described as they were

Tallinn · European Union

Rust services ChosenImpact MTÜ · 2025

A transparency backend with zero personal data by design

Five Rust crates and services behind citizen-science compute funding: a provider comparator that ranks offers by price, CPU, GPU and grid carbon intensity, and a telemetry service that turns container heartbeats and donated computing hours into a public feed. The design constraint that shaped everything: no personal data is collected, so there is nothing to leak and nothing to redact.

Rust · 1.75+ PostgreSQL 15+ Docker · Dokploy Hetzner · Scaleway · OVH adapters Zero-PII tracing
Policy data platform VEIS MTÜ · 2025

An open dashboard for evidence-based Estonian policy

A Go service over PostgreSQL with PostGIS, fronted by a React and deck.gl map that turns public datasets into something a municipality can argue with. The rule that matters: the whole repository is auditable, and any deployment that removes the attribution notice is a licence violation rather than a matter of preference.

Go 1.22 React 18 · Vite deck.gl · MapLibre PostgreSQL 16 + PostGIS AGPL-3.0 · attribution required

Released pre-1.0. Not recommended for official policy use before v1.0.

Packaging 2026

A scanner driver that Linux had quietly given up on

The Epson Perfection 3170 speaks a proprietary protocol that needs a 32-bit interpreter stack, while every modern app is 64-bit. We packaged the bridge — old library shim, systemd unit, firmware blob — into an amd64 package and verified it on Ubuntu 26.04. Small work, concrete outcome: a scanner that works again.

Ubuntu 26.04 · amd64 SANE net backend systemd socket activation .deb packaging
Automation Self-hosted · 2026

Every form on this site is one self-hosted pipeline

Contact requests, data subject requests and abuse reports go to three webhooks on a server we run in the Union, each tagged with the page, the language and the timestamp. If the server is down the form says so and keeps your text in the page instead of losing it.

n8n self-hosted Dokploy Webhook + JSON payload No third-party form service
Web 2026

A site with two visual systems in one codebase

This site, built as its own case study. Day mode is an offset-print grammar — screened paper, misregistered ink, hard shadows. Night mode runs Conway's cellular automaton on a full-window canvas, with the colour of a cell encoding its age and the brightness of the three lamps driven by the live population of the grid. Six languages, no cookie, and a contrast budget measured rather than guessed.

Static HTML · no framework Canvas cellular automaton 6 languages · 507 strings each WCAG AA verified

How we work

Same method every time

Four steps, written down before the work starts, and the same four steps whether the project is a four-week pilot or a two-year platform.

Week 0

Find the task that costs you the most hours

One workshop, three questions: which task is repeated, how many people pay for it, and what a good result looks like. The answer becomes the number we will try to move.

45 minutes
Weeks 1–2

Measure before touching anything

Processing time, error rate, cost per operation. Without a baseline there is no result, only an impression — so the baseline comes first, even when it is inconvenient.

Instrumentation
Weeks 2–4

Build the smallest thing that answers the question

A pipeline or a pilot, on infrastructure inside the European Union, with the human decision kept in the loop. If it needs a proprietary platform to run, it is the wrong design.

Pilot
Week 4+

Measure again, then hand it over

Same indicators, same method. You get the code, the runbook and the rights to present the result without us. If the gain is small, we say so in writing.

Handover

Pipelines

Four pipelines we actually run

These are the diagrams of pipelines built for real clients and for our own projects. Hover a block to see the tool behind it; open the details for the reasoning. The Mermaid source for each one is on the site, so you can read the pipeline rather than take a picture of it.

Research & content

The pipeline behind our own shows. Two human gates, and nothing is published on the strength of a first pass.

3 - Research & publish2 - Ground & choose1 - DiscovernoyesSourcesfeeds, search, pagesRead & extractpage contentAgent on crongrounded, cheap-firstWiki + memoryapproved sourcesHuman gate 1worth picking?Deep researchper subjectHuman gate 2good enough?Episode + notesAI draft, humans sign off
Flowchart in three lanes: sources are read and extracted by a scheduled agent grounded in a wiki, a human decides what is worth picking, deep research runs per subject, a second human signs it off, and an episode with notes is produced. A rejected result loops back to the agent.
  1. Sources are collected — feeds, search, pages.
  2. A scheduled agent reads them, grounded in our wiki.
  3. A human picks what is worth going deeper on.
  4. Deep research is written, with sources.
  5. A human signs off — or it goes back to the agent.
  6. Episode and notes are published.
Details8
  • SourcesRSS/Atom · SearXNG · RSSHub

    A real feed where one exists, a self-hosted metasearch where it does not; we don't pay an aggregator for what can be read directly.

  • Read & extractn8n

    The page is fetched, the noise stripped and clean text exported. Nothing is paraphrased before it is stored.

  • Agent on cronLiteLLM · Tela wiki

    A scheduled agent reads the day's new material and ranks it, grounded in the wiki so it reuses what we already validated.

  • Wiki + memoryTela · OpenViking

    The approved sources and the subject pages live in the wiki; the durable memory of what we already concluded lives beside it.

  • Human gate 1

    The candidates are posted as a numbered list and people choose. This is where taste lives.

  • Deep researchAgent, per subject

    Only the chosen subjects get a full treatment, with sources and citations, and a page each.

  • Human gate 2

    If the material is thin the loop restarts and we keep searching. Nothing is published on a first pass.

  • Episode + notesAI draft, humans sign off

    The agent drafts the show notes and the presentation; the hosts rewrite and speak.

Why it works for you

  • Grounded in approved sources, not guessed
  • Token cost controlled by design — cheap model triages, expensive model only for chosen subjects
  • The humans decide; the machine only brings candidates

Risks & limits

This pipeline is only as good as the sources that exist and are read carefully. We cannot invent primary research we do not have.

First engagement

Discovery & setup — 2 weeks

Feed and source list, one cron, one pick channel, wiki structure, handover doc.

The pipeline itself

Download the .mmd source

The graph, the lane names and the two human gates are one plain-text file you can read, fork and re-render yourself.