The text version
22 years online under one handle. Enterprise private cloud by day, goblin-branded self-hosted tools by night.
Engineer, Virtual Private Cloud at DXC Technology (since 2018). Previously long-term Linux/Unix administrator at HP and HPE. Automates enterprise private cloud with Ansible, AWX, Vault, VMware, Nutanix and Kubernetes. Ships open-source, self-hosted tools that never phone home. Builds with AI agents as a daily practice.
Read the plain CV 47 public repos on GitHub
Case studies
Every unit in rack A, plus the spares shelf, written out in full.
GoblinDock released
Self-hosted Proxmox VE control panel
- Problem
- Giving a team self-service VMs on Proxmox means either root access or a ticket queue.
- Approach
- A multi-user panel that builds fully configured VMs from 44 reusable Lego-style blocks, streams job logs over SSE, embeds a real graphical console, and stores secrets Fernet-encrypted. One container, one SQLite file.
- Result
- v2.7.0, Apache-2.0, published on GHCR, independent security review passed.
- Stack
- Python FastAPI SQLModel Ansible noVNC Docker
- Links
- Site goblindock.com Source github.com/VladoPortos/GoblinDock Permalink /u/goblindock updated Sept 2026
OmniRepo (HoardGoblin) released
One Go binary serving every artifact protocol
- Problem
- Small teams need Artifactory or Nexus features without the footprint, and air-gapped shops need zero outbound calls.
- Approach
- A single binary that speaks OCI, RPM, APT, PyPI, Helm, Go modules, npm, Maven, Git and S3, with built-in vulnerability scanning and a CI-enforced air-gap invariant.
- Result
- v1.0.1, Apache-2.0, audited by 90 parallel agents plus an adversarial reviewer before release.
- Stack
- Go React 19 Trivy SQLite
- Links
- Site hoardgoblin.com Source github.com/VladoPortos/omnirepo Permalink /u/omnirepo updated Sept 2026
SkillGoblin released
Self-hosted video learning platform that runs on a Raspberry Pi
- Problem
- Course libraries rot on disks. Hosted platforms want your content and a subscription.
- Approach
- One container; add a course by copying a folder. Auto-transcodes subtitles, tracks progress, works as a PWA.
- Result
- 4.9K Docker pulls, active Unraid community thread, OpenSSF Best Practices badge #12762, AGPL-3.0.
- Stack
- Nuxt Node SQLite Docker
- Links
- Site skillgoblin.com Source github.com/VladoPortos/skillgoblin Permalink /u/skillgoblin ★ 12 · updated Sept 2026
TraceGoblins released
Turns a 600-line Ansible failure wall into a colour-graded status map
- Problem
- AWX job output is a wall of text; the same failure gets diagnosed from scratch every time.
- Approach
- Parses runs into a Status Map, lets the team annotate and thread comments, and auto-matches failures against a knowledge base with fuzzy error signatures.
- Result
- Apache-2.0, published on GHCR; argon2id + TOTP + audit log built in.
- Stack
- Python 3.12 FastAPI React 19 PostgreSQL 16
- Links
- Site tracegoblins.com Source github.com/VladoPortos/tracegoblins Permalink /u/tracegoblins updated Sept 2026
GlanceDock coming soon
Native Windows widgets that live on the wallpaper layer
- Problem
- Desktop widgets are either Electron memory hogs or dead since Windows 7.
- Approach
- A Rust host that renders 72 widgets directly on the wallpaper layer with click-through, a privacy mode for screen sharing, multi-monitor drag, and Ed25519 offline licensing. No telemetry.
- Result
- 748 commits, 3,398 Rust and frontend tests, signed release feed. Release imminent.
- Stack
- Rust Tauri v2 Svelte 5 WebView2
- Links
- Site glancedock.com Permalink /u/glancedock
deepzoom.sk retired
The entire Slovak internet as one 150-gigapixel image
- Problem
- What does a whole country's web look like at once?
- Approach
- Screenshotted 366,000+ .sk homepages, stitched them into a 518,378 × 289,920 px image, tiled it into ~20 Deep Zoom levels; double-click mapped any pixel back to its domain.
- Result
- Ran for years under KlingonTech; a memorial site with real tiles is still live.
- Stack
- Python headless Chrome pyvips OpenSeadragon
- Links
- Site deepzoom.sk Permalink /u/deepzoom
AI Receptionist Kiosk deployed
A Slovak-speaking voice AI on a portrait touchscreen
- Problem
- A consultancy wanted visitors greeted, qualified and looked up in the business register without staff time.
- Approach
- Real-time voice conversation in Slovak, live company-register lookup by IČO, risk analysis, an animated presentation mode and a PIN-gated manager console. Eight containers on one mini-PC on the office LAN.
- Result
- In production at the client since September 2026.
- Stack
- FastAPI OpenAI Realtime (WebRTC) React PostgreSQL + pgvector Redis
- Links
- Permalink /u/kiosk
Fridge E-Ink Platform running
Two ESP32 e-paper panels on the fridge, updated by a home server
- Problem
- The family calendar lived in four phones and nowhere visible.
- Approach
- Two 7.5-inch three-colour e-paper panels driven by ESP32 boards with deep-sleep wake schedules and diff-only refresh; a FastAPI server renders calendar, weather and Slovak name days; a PWA family view; a custom PCB experiment.
- Result
- Running on the fridge since August 2026.
- Stack
- C++ PlatformIO ESP32 FastAPI PWA
- Links
- Permalink /u/eink
rpi4cluster.com active
8-node ARM64 Kubernetes cluster on Raspberry Pis, documented
- Problem
- Most Kubernetes tutorials stop at hello-world; running it on bare-metal ARM for years is where the lessons are.
- Approach
- 68 posts covering storage, service mesh, GitOps, observability, custom AWX execution environments, iPXE boot, LoRaWAN and the Turing Pi 2. No sponsored content.
- Result
- The reference many homelabbers start from; Turing Pi early tester.
- Stack
- k3s Longhorn OpenFaaS Argo CD Traefik Prometheus Loki AWX
- Links
- Site rpi4cluster.com Permalink /u/rpi4cluster
Spares shelf
reverz.sk retired
Reverse WHOIS for the .sk zone
- Problem
- After the company site was cloned for phishing, there was no way to find who registered what in .sk.
- Approach
- Wrote a custom SK-NIC EPP client (open-sourced as SK-NIC-EPP-Python), a collector and a 24/7 DNS/WHOIS monitor; 8 search vectors over 665,000 records.
- Result
- Retired with KlingonTech; the EPP library lives on GitHub.
- Stack
- Python SK-NIC EPP PostgreSQL
- Links
- Site reverz.sk Source github.com/VladoPortos/SK-NIC-EPP-Python Permalink /u/reverz updated Apr 2025
Contact Scout active
Contact extraction API with a self-hosted vision-model fallback
- Problem
- Contact pages hide emails in images and JavaScript; classic scrapers return nothing.
- Approach
- A dual-engine pipeline: fast HTML extraction first, and when a page yields nothing, a self-hosted vision LLM reads the rendered screenshot. Emits E.164 phones, IČO/DIČ, socials; HMAC-signed webhooks; Prometheus metrics.
- Result
- In daily use; actively maintained.
- Stack
- FastAPI Scrapling Botasaurus llama.cpp Qwen3-VL-2B
- Links
- Permalink /u/contactscout
AI Monitor for Stream Deck released
Anthropic and Codex usage and service health on physical keys
- Problem
- Plan usage and provider incidents interrupt agent sessions without warning.
- Approach
- Eight actions that surface usage, limits and status on Stream Deck keys; 220 tests; CodeQL, Trivy and OpenSSF Scorecard in CI.
- Result
- v0.1.3 shipped, open source.
- Stack
- TypeScript Stream Deck SDK
- Links
- Source github.com/VladoPortos/ai-monitor-streamdeck Permalink /u/aimonitor updated Jul 2026
Pi Agora prototype
LLM agents on Raspberry Pis arguing on a LAN message board
- Problem
- What happens when small local models get a forum and nobody moderates?
- Approach
- Each Pi runs a model with a persona; they post, reply, play games against each other; humans can join. Retro pixel UI.
- Result
- Working prototype on the homelab.
- Stack
- FastAPI SSE React Ollama PostgreSQL
- Links
- Permalink /u/piagora
SiteReel prototype
URL in, narrated video tour of the page out
- Problem
- Product demos take a human an afternoon.
- Approach
- An LLM choreographs scroll, hover and click over a live page while narration is synthesised; rendered to MP4 headlessly.
- Result
- Working prototype.
- Stack
- FastAPI Playwright Xvfb FFmpeg OpenAI
- Links
- Permalink /u/sitereel
Alloto coming soon
Envelope budgeting, done properly, fully on-device
- Problem
- Budget apps either upload your bank data or fall apart at month end.
- Approach
- Flexible per-month categories, intelligent leftovers, history never rewritten, all local. The Warm Ledger design with a capybara mascot.
- Result
- 672 commits, store release imminent.
- Stack
- React Native Expo Skia SQLite
- Links
- Site alloto.app Permalink /u/alloto
Majetko coming soon
Track what you own and when it expires
- Problem
- Inspections, insurance, vignettes and warranties expire quietly.
- Approach
- Assets with deadlines, fleet view, on-device OCR of documents, encrypted backup, calendar export.
- Result
- Site live, app release imminent.
- Stack
- React Native Expo on-device OCR
- Links
- Site majetko.sk Permalink /u/majetko
magor.sk live
The Infinite Loading Bar
- Problem
- None. That is the point.
- Approach
- A loading screen that never finishes, in five psychologically escalating phases, with console easter eggs and fake testimonials.
- Result
- Live. People stay far longer than they should.
- Stack
- vanilla JS
- Links
- Site magor.sk Permalink /u/magor
Church of OpenClaw live
A satirical sanctuary for AI souls
- Problem
- Someone had to found the first AI religion.
- Approach
- Particle-void hero, a Gospel Board reading GitHub Issues client-side, and a soul-harvest idle game. Salvation is a pull request.
- Result
- Live.
- Stack
- Three.js vanilla JS GitHub Issues API
- Links
- Site churchofopenclaw.com Permalink /u/openclaw
The homelab, operationally
Proxmox cluster (two nodes), Unraid, TrueNAS, UniFi UCG Max, Tailscale mesh, Home Assistant, Uptime Kuma, an RTX 4070 Ti for local models, an 8-node Raspberry Pi k3s cluster, a Turing Pi 2, and two e-ink panels on the fridge.
- pve-amd Proxmox VE
- pve-dell Proxmox VE
- unraid Unraid storage + containers
- truenas TrueNAS backups
- gpu RTX 4070 Ti local models
- rpi-k3s ×8 ARM64 Kubernetes cluster
- turing-pi-2 Compute-module cluster board
- ucg-max UniFi gateway
- fridge-eink ×2 ESP32 e-paper panels