HNHacker News
TopNewBestAskShowJobs

elitan

445 karma · joined March 17, 2019

https://x.com/elitasson
submissionscomments
elitan··on An Update on Heroku
Heroku's git-push-to-deploy was magic in 2012. Sad to see it go out like this.

I've been building Frost https://github.com/elitan/frost, open source and self-hosted. Same idea, git push to deploy, automatic SSL, custom domains, but on your own VPS. Docker-native, no vendor lock-in, no pricing surprises.

The angle that's a bit different: it's designed for AI coding agents. Simple config they write correctly, clear errors, no K8s complexity to hallucinate. You give your agent the install URL and it sets up the whole server.

elitan··on Ask HN: What are you working on? (January 2026)
Building Frost, a simple self-hosted deployment platform. Docker-only, single-user, no Kubernetes. You point it at a repo or image, it handles the build → health check → deploy → stop old container flow.

Stack: Bun, Next.js, SQLite, Kysely. Been building it almost entirely with Claude Code which has been a surprisingly effective workflow for this kind of infra tooling.

https://github.com/elitan/frost

elitan··on CLI agents make self-hosting on a home server easier and fun
Been using Claude Code to build a small deployment tool (Frost) for exactly this use case. The meta experience is interesting - using an AI agent to build tooling that makes self-hosting easier.

What I've found: Claude Code is great at the "figure out this docker/nginx/systemd incantation" part but the orchestration layer (health checks, rollbacks, zero-downtime deploys) still benefits from purpose-built tooling. The AI handles the tedious config generation while you focus on the actual workflow.

github.com/elitan/frost if curious

elitan··on Creators of Tailwind laid off 75% of their engineering team
Amazon (AWS) is not cheap! :D
elitan··on Instant database clones with PostgreSQL 18
interesting, you have a link?
elitan··on Instant database clones with PostgreSQL 18
Plagiarized from what? Happy to address if you can point to what you're referring to.
elitan··on Instant database clones with PostgreSQL 18
For those who can't wait for PG18 or need full instance isolation: I built Velo, which does instant branching using ZFS snapshots instead of reflinks.

Works with any PG version today. Each branch is a fully isolated PostgreSQL container with its own port. ~2-5 seconds for a 100GB database.

https://github.com/elitan/velo

Main difference from PG18's approach: you get complete server isolation (useful for testing migrations, different PG configs, etc.) rather than databases sharing one instance.

elitan··on The unexpected effectiveness of one-shot decompilation with Claude
helpful
elitan··on Show HN: Allein - Markdown editor with AI autocompletion, completely offline
This looks really good, love the local LLM support. Will try this instead of Notion which is my current note taking app. Thank you!
elitan··on Show HN: Velo – Git-like branching for PostgreSQL databases using ZFS snapshots
It's a killer feature indeed. Glad you liked it! :)
elitan··on Show HN: Velo – Git-like branching for PostgreSQL databases using ZFS snapshots
Hey HN! I built Velo to solve a problem I kept running into: testing database migrations and debugging production issues without copying around massive database dumps or waiting for slow clones.

The core idea: use ZFS copy-on-write snapshots to branch PostgreSQL databases the way you branch Git repos. A 100GB database branches in ~2 seconds and takes ~100KB of space initially. Each branch is a complete, isolated PostgreSQL instance running in Docker.

How it works:

- Runs CHECKPOINT to flush PostgreSQL buffers (ensures consistency)

- Creates a ZFS snapshot (filesystem-level, instant)

- Clones the snapshot to a new dataset (CoW means no data copying)

- Spins up a new PostgreSQL container pointing at the clone

The mental model is: Project = Git repo, Branch = Git branch. Commands like `velo branch create api/test-migration` or `velo branch reset api/dev`.

I also added point-in-time recovery using WAL archiving, so you can create branches from specific timestamps (e.g., "5 minutes before the incident").

Requirements: Linux + ZFS + Docker.

Built using Bun and TypeScript.

Let me know what you think :)

elitan··on Ask HN: What are you working on? (October 2025)
Sure is! Thank you :)
elitan··on Ask HN: What are you working on? (October 2025)
Two things related to Postgres:

* Velo - Postgres with instant branching (https://github.com/elitan/velo)

* Terra - Declarative schema management for Postgres (https://github.com/elitan/terra)

Some fun side projects i hack on during the evenings and weekends.

elitan··on AI tools I wish existed
I'm building #4:

> A hybrid of Strong (the lifting app) and ChatGPT where the model has access to my workouts, can suggest improvements, and coach me. I mainly just want to be able to chat with the model knowing it has detailed context for each of my workouts (down to the time in between each set).

here: https://j4.coach/

Still early, have ~30 min per day to work on it but it's usable and improving every week :)

elitan··on New research reveals longevity gains slowing, life expectancy of 100 unlikely
I have the opposite feeling.
elitan··on If you have a Claude account, they're going to train on your data moving forward
i'm fine with it. happy to seed.
elitan··on Claude Sonnet 4 now supports 1M tokens of context
have you ever hired humans?
elitan··on Rethinking CLI interfaces for AI
For sure.
elitan··on Rethinking CLI interfaces for AI
I had the same thought when I was dog fooding a CLI tool I've been vibe coding. It's a CLI for deploying Docker apps on any server. An here is the exact PR "I" did.

https://github.com/elitan/lightform/pull/35

One of the advantages of vibe coding CLI tools like this is that it's easy for the AI to debug itself, and it's easy to see where it gets stuck.

And it usually gets stuck because of:

1. Errors 2. Don't know what command to run

So:

1. Errors must be clear and *actionable* like `app_port` ("8080") is a string, expected a number. 2. The command should have simple, actionable and complete help (`--help`) sections for all commands.

elitan··on Show HN: I made a free tool to sync Strava activities with your calendar
Thank you! :)
elitan··on Zed AI
I hope all our competitors find your answer inspirational!
elitan··on A Swiss town banned billboards. Zurich, Bern may soon follow
This is the #1 feature of my Meta Ray-Ban glasses.
elitan··on Use a work journal
I follow the same structure, and I use Notion, Google Calendar, and Flow App.
elitan··on Legal models hallucinate in 1 out of 6 (or more) benchmarking queries
What's the same rate for humans?
elitan··on 'Right to roam' movement fights to give the commons back to the public
It works well here in Sweden: https://en.wikipedia.org/wiki/Freedom_to_roam
elitan··on Ontario family doctor says new AI notetaking saved her job
I wouldn't be surprised if Region Blekinge were using something much worse and much more expensive than Whisper for their transcription.

I've been transcribing A LOT of SR (Swedish Radio) shows as part of https://nyheter.sh/, and Whisper (self-hosted) has been very accurate.

elitan··on I’m writing a new vector search SQLite Extension
Vector search in SQLite is what's keeping me from switching from Postgres.
elitan··on The failure of self-checkout technology
same
elitan··on A look into the finances of SpaceX
Great take!
elitan··on Ubicloud – open, free and portable cloud
Is there a demo available?
Page 1 of 4Next →