Available for new projects

Spiros Raptis · Software & systems engineer

Software that ships.Systems that stay up.

I design, build, and run web products, native apps, and automation. You work directly with the engineer who writes the code, ships it, and keeps it healthy afterwards.

Independent · Based in Thessaloniki, Greece

Since 2012
Shipping code in the open on GitHub
100+
Public repositories, from small utilities to full products
4 platforms
Web, macOS, Android, and Linux, all in active use
Since 2015
Technical reviewer and mentor at Udacity

01 / Services

What I can build for you.

One engineer across the whole stack, from the interface people see to the systems underneath.

Web products

Fast, data-driven web apps that hold up under everyday use, from the catalogue pipeline to the screen your customers see.

  • Product interfaces in React and modern JavaScript
  • Data pipelines with scheduled, verified refreshes
  • Performance budgets enforced in the build
See Καλάθι Τιμών

Native apps

Desktop and mobile software that feels at home on its platform and keeps working offline or on a poor connection.

  • macOS apps in Swift
  • Android apps in Kotlin and Java
  • Linux desktop apps with GTK4 and libadwaita
See Fleetlight

Systems & automation

Monitoring, maintenance, and internal tools that take recurring work off your plate and tell you when something needs attention.

  • Fleet monitoring and verified updates over SSH
  • Browser extensions and workflow tooling
  • Deployment, CI, and practical recovery paths
See the project index

AI-assisted workflows

Agent and LLM workflows with visible logic, explicit guardrails, and outputs you can inspect, used where they help.

  • Tooling and integrations for coding agents
  • Evaluation loops, with human review where it matters
  • Automation that shows its work
How I approach it

02 / Selected work

Built. Used. Improved.

Three products in active development. All are public, and you can read the source.

Consumer web product

Live · v0.38.2
Καλάθι Τιμών / Daily bargains, desktop and phoneWeb

Καλάθι Τιμών

A shopping list becomes a better buying decision.

Compare the cost of your whole basket across Greek supermarkets. Choose up to four stops, explore price changes, and see when an extra trip is worth the saving.

9,000+
products in the live catalogue
Hourly
price refresh, checked before publishing
64 KiB
startup JavaScript budget, enforced
  • React
  • Vite
  • Web Workers
  • PHP
  • GitHub Actions
Latest: catalogue refreshes that survive an outage

Version 0.38.2 keeps the other chains updating when one small retailer feed disappears. Affected products stay in saved baskets without stale prices, with a visible warning until the source recovers. Version 0.38.1 added health checks that catch failed refreshes, prices older than three hours, and a stalled scheduler.

The interface moved to a warmer palette with Greek-native type on 29 September 2026. The public health page explains catalogue coverage; price history makes changes inspectable and exportable.

Native operations software

macOS 4.52Linux 0.4.0Android 1.15.6
Fleetlight for Linux fleet overview: four computers online, with disk, memory, load, and available updates for each
Fleetlight for Linux 0.4.0 / Fleet overview, demo dataGTK4

Fleetlight

Know what needs attention. Verify what changed.

Native apps for monitoring and maintaining Macs and Linux machines: a macOS menu-bar app, a GTK4 desktop app for Linux, and a read-only Android companion. Health checks, incident history, and confirmed updates in one place.

3 editions
macOS, Linux, and Android, each native
SSH only
uses the access you already have
Verified
every update is checked after it runs
  • Swift
  • Kotlin
  • Python
  • GTK4 / libadwaita
  • SSH
Latest: a native edition for the Linux desktop

Fleetlight for Linux 0.4.0 is a native GTK4 and libadwaita app that monitors Linux and macOS hosts directly, with no Mac controller required. It brings a fleet overview, disk and memory sparklines, a CPU load and temperature card, and desktop notifications when a computer goes offline or a service stops.

On macOS, version 4.52 supports native Omarchy update checks and unattended jobs, and refreshes Linux desktop app status on a schedule.

Self-hosted media

Android 0.22.3Web 0.26.0
Plex OpenWeb + Android

Your library. Wherever you watch.

Connected

Browse your library
Resume across devices
Find subtitles

Offline

Saved video & artwork
Local subtitle tracks
Managed device storage

Playback paths / Shared server, private local copies
Playback model / Online and offlineAndroid · Web

Plex Open

Media that keeps working when the connection changes.

A web interface and native Android client for a self-hosted media library. Offline downloads keep video, artwork, and subtitles together, with visible storage use and confirmed removal.

Offline
video, artwork, and subtitles saved together
Resume
synchronized position across devices
Background
picture-in-picture and lock-screen playback
  • Java
  • Media3
  • Python
  • JavaScript
  • HLS
Latest: offline subtitles and clearer sign-in recovery

Saved titles can acquire additional subtitle tracks while connected and retain them for offline playback. An expired session now leads to sign-in with a clear explanation, and the keyboard gets out of the way after a search.

In progress on Android: more reliable seeking for transcoded titles. The web app remains on 0.26.0 with its browser download manager.

03 / Process

How a project runs.

The same loop on every project, whether it takes a week or keeps going for years.

  1. Understand

    I start from the real workflow: who uses it, what goes wrong today, and what done looks like.

  2. Build

    Small, reviewable increments in a repository you can read. Every release is versioned and comes with notes.

  3. Ship

    Tested where it is actually used, then verified live. A deploy only counts once the result is confirmed.

  4. Maintain

    Monitoring, updates, and a practical path to recovery, so the software keeps working after launch.

04 / Recent work

The work
between releases.

Recent improvements across products, workflow automation, and the systems underneath.

Fleetlight

Fleetlight arrives on the Linux desktop.

Version 0.4.0 rebuilds the Linux edition as a native libadwaita app with a fleet overview, trend sparklines, and desktop notifications. Agent quota cards now show the subscribed plan next to what remains.

View the Linux edition
Καλάθι Τιμών

A warmer face for Καλάθι Τιμών.

The shopping app moved to a calmer palette, Greek-native type, and cleaner cards in light and dark mode, with no change to how baskets and plans are computed.

Open the app
Καλάθι Τιμών

One missing feed no longer stalls the catalogue.

Version 0.38.2 keeps the other chains updating when a small retailer source disappears. Its products stay in saved baskets without stale prices, behind a visible warning, until the source recovers.

View the change
Καλάθι Τιμών

Health checks that notice a quiet failure.

Version 0.38.1 restored reliable catalogue synchronization and taught the health check to detect failed refreshes, prices older than three hours, and a stalled scheduler, even when the server still answers normally.

View the release
Fleetlight

Quota at a glance, updates on autopilot.

Fleetlight for Linux shows the remaining Codex and Cursor quota from the signed-in sessions, with Claude added a few days later, and can install tool and package updates as soon as checks find them. Restarts always stay manual.

View the source
Fleetlight

Native update checks for Omarchy machines.

Fleetlight on macOS now runs Omarchy's own update checks and unattended jobs, and refreshes Linux desktop app status on a schedule instead of waiting for a manual check.

View the change
Earlier work
Καλάθι Τιμών

Undo for the basket, and a faster way to find things in it.

Version 0.38.0 added undo and redo for up to 20 basket edits, search inside the basket by name, brand, or barcode, and a filter for products that fall outside the selected plan.

View the release
Fleetlight

Fleetlight meets more Linux setups.

Added pacman package awareness and native mise updates. The controller verifies the installed result and reconciles earlier update warnings.

View the release work
Desktop integration

Bringing Mac and Wayland desktops together.

Recent integration work covers remote viewing, shared input, and clipboard transfer between macOS and a Hyprland desktop. Recovery across restarts is an ongoing focus.

Workflow automation

More resilient review workflows.

Improved recovery when browser routes time out or a review tab needs to be restored. The work keeps evidence, workflow state, and the final handoff aligned.

Καλάθι Τιμών

Small labels. Meaningful price clarity.

Kalathi Timon now separates package prices from normalized unit prices. Catalogue checks also adapt to persistent retailer changes after repeated confirmation.

View the change
Plex Open

A smoother return to the media library.

Plex Open Android handles expired sessions explicitly and gets the keyboard out of the way after searching. Offline subtitles received attention earlier in August.

Explore Android releases

05 / Project index

A wider body of work.

More apps and utilities, each built around a real everyday need.

Camera Sentinel

Python · Raspberry Pi

Camera monitoring with bounded background processing and power history that distinguishes current faults from past incidents.

Source

Italian Coach

macOS · Android

Local-first language practice with mistake review and optional self-hosted synchronization.

Source

Review tooling

Browser extension

Browser tools and companion apps that make review work easier to track, inspect, and recover.

Source

Screenshot Bridge

Swift · macOS

A menu-bar utility that brings screenshots into a coding workflow with fewer manual steps.

Source

Markets Lab

Rust · Earlier work

Research and execution tooling from an earlier trading focus, retained as part of the engineering record.

Source

Everything else

100+ repositories

CLI tools, scripts, dashboards, and experiments going back to 2012, all on GitHub.

Browse GitHub

06 / About

The details matter
after launch, too.

Based in
Thessaloniki, Greece
Practice
Independent software and systems engineer
Also
Technical reviewer and mentor at Udacity since 2015
Education
Aristotle University of Thessaloniki
Open source
github.com/spirosrap, since 2012

I'm an independent engineer who likes turning a recurring frustration into something useful, then refining it through actual use.

My work spans consumer apps, native tools, automation, and Linux systems. Years of reviewing other people's code have made me strict about clear state, honest error handling, and software that explains what it is doing.

Make the state clear.

Show what is happening, what changed, and what needs attention.

Follow through.

Test the result where it is used, and keep a practical path to recovery.

Simple first.

Build the simplest thing that survives real use. Abstractions have to earn their place.

Keep it inspectable.

Use AI where it helps, and never to hide the logic.

Languages

  • Python
  • JavaScript
  • Swift
  • Kotlin
  • Java
  • Rust
  • PHP
  • Shell

Platforms

  • Web
  • macOS
  • Android
  • Linux
  • Raspberry Pi

Tooling

  • React
  • Vite
  • GTK4
  • Docker
  • GitHub Actions
  • SSH
  • systemd

Have something worth building?

Let's make it work.

A product idea, a workflow that keeps getting in the way, or a system that could be easier to run. Tell me what you are trying to get done.