eigenhändig · German — “with one’s own hands”

Software by your own hand.
Data on your own iron.

I’m Christoph, and eigenhand is where I build tools that run on infrastructure you control — native apps without middlemen, and AI models that live on your own GPU instead of someone else’s.

4projects
4platforms
0accounts needed
0trackers
// work

Built by hand, one at a time.

Each project solves one thing properly — and none of them needs an account with me.

Spind

Your own cloud drive — on your own Storage Box.

pre-releaseSwiftmacOSiOSApache-2.0

A native sync client for the Hetzner Storage Box or any SFTP server. It delivers what the big drives sell as a service, against storage you already rent for a few euros a terabyte.

  • Finder drive with Files-on-Demand
  • Version history, thinned over time — every version a plain file
  • Link sharing with its own web viewer
# the way out, whenever you want it
$ rsync -a storagebox:spind/ ~/backup/

Fundus

Photograph a shelf, get an inventory.

in developmentSwiftiOSbring your own modelApache-2.0

An inventory for the iPhone that brings nothing but the interface: your model reads a shelf, a drawer or a box and suggests entries. Nothing lands in the inventory without a tick — and “cannot be determined” is a valid answer.

  • Suggestions, not entries — every find reviewed
  • Part numbers and barcodes looked up, never swapped in silently
  • No servers, no accounts, no telemetry
{ "name": "MP1584EN buck converter 3 A", "qty": 4 }
{ "unidentified": "grey box, label blurry" }

Faden

An AI chat for the iPhone — your model, your search, no middleman.

in developmentSwiftiOSbring your own modelApache-2.0

Speaks the Anthropic and OpenAI wire formats, so it works with almost any provider or your own server. The assistant searches on its own, reads pages and remembers — and if your search API is unusual, Faden writes itself a parser for it and then runs it on the device.

  • Streaming, tool calls and reasoning
  • Recipes for Brave, Tavily, Serper, SearXNG, Exa
  • No external dependencies
→ POST /v1/chat/completions  # your endpoint
← tools: web_search · fetch_page · remember
// principles

Own your tools. Own your data.

The usual clouds are excellent — right up until the subscription ends, the terms change, or the export button stops working. Everything here is built the other way round.

01

Your hardware is the platform

Files live on storage you rent or run yourself, models on your own GPU. The provider stores bytes; the relationship belongs to you.

02

Open protocols, no lock-in

SFTP, plain files, OpenAI- and Anthropic-compatible APIs, GGUF. Leaving takes rsync, not an export wizard.

03

Native, small, handmade

Swift and SwiftUI on Apple platforms, C++ and MLX for the models — real apps, not a browser tab pretending to be software.

04

Measured, not promised

Claims come with numbers and the scripts that produced them. Where something is weak, the README says so.

// toolbox
SwiftSwiftUIC++17ggmlVulkanMetalMLXPythonPyTorchPEFT / LoRAWhisperSFTPWebSocketGGUFHugging FaceSwiftSwiftUIC++17ggmlVulkanMetalMLXPythonPyTorchPEFT / LoRAWhisperSFTPWebSocketGGUFHugging Face
// contact

One developer, building in the open.

Questions, ideas, a bug, or a project that should exist — happy to hear it.