Skip to content
Full-stack & integration developer

I make web.From the silicon up.

I design and develop end to end — bare-metal server, network, routing, observability, deployment, backend, frontend, and the side trails in between. Not because a project needs it, but because I want to know exactly how every layer works.

01 — Selected projects

4 projects

A curated Finnish word puzzle published fresh every day. Desktop and mobile apps that can be synced to one another, user statistics and sharing. Live at sanakenno.fi with thousands of plays.

ReactNuxtSQLitePWACI/CD
Sanakenno.fi · app screenshotSanakenno.fi · app screenshot

A custom-made admin suite for building daily puzzles, managing word lists and reading player stats. LLM-filtered recommendations propose puzzles to approve or reject; puzzles can also be assembled by searching the space of valid combinations directly.

GPTReactTypeScriptAnalytics
Sanakenno Admin tools · dashboardSanakenno Admin tools · dashboard

This site and its admin panel: i18n content management, a real-time monitoring dashboard with logs, Grafana and Loki. Built with Nuxt, Flask/Python and SQLite — and deployed onto my own server.

NuxtFlaskSQLitenginxGrafanaLoki
erez.ac · admin + observabilityerez.ac · admin + observability

A more versatile search for Finnish dog-show results than the Kennelliitto's own service. Data is served from a server-side database, which is populated from the Showlink service.

NuxtFlaskSQLiteScraping
/dog · results search/dog · results search

02 — The stack

self-hosted · self-built

Instead of reaching for a managed platform, I built the whole pipeline myself — everything a professional production environment has, running on a mini-PC in my living room. Read it bottom to top.

L7
InterfaceFrontend
Nuxt 3 SSG/SPA, i18n, dark/light, accessibility baked in — what you are looking at.
L6
ApplicationBackend
Flask/Python APIs, SQLite, auth with key-based sessions, content + analytics.
L5
DeliveryCI/CD
Automatic build, test and deploy pipeline — push to live only with the full suite green.
L4
QualityTest suite
Unit, integration and end-to-end (Playwright) coverage across every level.
L3
OperationsObservability
Full metrics and logging with Loki, Prometheus and Grafana. Fail2Ban for additional security. Alerts live to Telegram.
L2
PlatformRouting & containers
Nginx reverse proxy, multi-container setup, iptables firewall on Red Hat Linux.
L1
HardwareBare metal
Intel NUC mini-PC at home; home network exposing only HTTP to internet, SSH locked to LAN.

// Because everything runs on my own machine, in my own home network, it has been even more important to understand what I am doing and why. This has guided me to make efficient and secure choices that do not depend on external services.

03 — Terminal

try it · type help
konsta@erez.ac: ~

// Originally this site's main attraction. It earned its place here — just not the starring role.

erez.ac

Konsta Janhunen — full-stack & integration developer who likes to know how things work. From the bottom to the top of the stack.

Sitesanakenno.fi/dogAll fine and dandy.