
Vim as firmware: the pocket computer where the editor IS the OS
Vim as firmware: the pocket computer where the editor IS the OS
Two projects landed on Hackaday within nine days of each other this month, and read together they describe a genuine shift: the ESP32 is being treated less like a sensor peripheral and more like a small general-purpose computer with its own operating systems.
The first is ESP-Vim by Omwah — real Vim 9.2 ported to run directly on ESP32-S3 and ESP32-P4 silicon, covered by Hackaday on 1 October. The second is KryonOS, a JavaScript-based GUI operating system featured on 23 September, which has since pulled 148 stars and a v2.0 release. Different philosophies, same idea: boot a board and land somewhere useful, no laptop required.
Both live on the same hardware substrate, which is not a coincidence. Cheap boards with a display, battery input and enough flash crossed a threshold this year, and the software is catching up in public.
ESP-Vim: the editor as the entire machine
ESP-Vim is exactly what it sounds like. Flash it and the board boots straight into the familiar modal editor on an attached screen, with a filesystem, git access and MicroPython available alongside. There's no shell, no desktop, no OS underneath — the editor is the firmware.
The hardware requirements are unusually specific for the ESP32 world: an S3 or P4 board with 16 MB of flash and at least 8 MB of PSRAM. That's what makes running a full text editor with file system support practical rather than a stunt. Hackaday notes the list of supported boards includes the S3 variant of the Cheap Yellow Display — hook up a Bluetooth keyboard and you have a machine whose whole purpose is text. The repo is Apache-2.0 licensed and actively maintained, with the most recent commits landing on 3 October 2026.
Vim's design is older than most people's careers, built for slow terminals on scarce machines. That heritage is exactly why it suits a microcontroller: vi-style editing was engineered for environments where every keystroke and every screen repaint is expensive. The editor upstream at vim.org has spent three decades being squeezed onto machines that shouldn't be able to run it, and ESP32-class silicon is the latest stop on that tour.
What the 16 MB / 8 MB figure actually buys: Vim's runtime files (syntax definitions, help documents, indent rules) live in flash; the editor's working state and buffers live in PSRAM. Strip either and the port degrades into a toy. With both, you get real buffers spanning multiple files, windows split across the display, spell checking, and the :Esp command family that exposes the hardware — WiFi scanning, GPIO control, file transfer over SCP — without ever leaving the editor. The git support is the detail that convinced me this is a serious tool rather than a demo: clone a repo over HTTPS from a machine with no shell, edit, commit, push, all inside the editor that boots in under two seconds. For note-taking or field logging that's genuinely a usable workflow, not a novelty.
KryonOS: apps without reflashing
KryonOS takes the opposite approach. It's a touch-first GUI operating system with a JavaScript runtime built in, so you install and run apps dynamically on the device — no reflashing between projects. Boards including the CYD family run it, and the developer ships an app-store-style catalogue.
Version 2.0.0 pushed it further with what the project calls KryonCloud: native services exposed to the JavaScript runtime, including device-to-device messaging with offline store-and-forward, cloud storage sync, and streaming AI responses straight on the display. If that sounds ambitious for a $15 board, it is — and the 17-comment Hackaday thread contains plenty of scepticism alongside the enthusiasm. The honest assessment: KryonOS is a young, fast-moving project, and the cloud services angle means some of your data leaves the device by design. For a privacy-conscious household, the standalone GUI and local app runtime are the interesting parts; treat the cloud pieces as optional and read what they send before enabling them.
Where KryonOS genuinely earns its place: household instrument panels. A spare CYD running KryonOS becomes a thermostat face, a timer, a room sensor display — whatever app you install that week — and swapping roles takes minutes, not a reflash cycle. ESP-Vim would be terrible at that job, and KryonOS would be terrible at writing a novel. The contrast between the two projects is the useful part.
The app catalogue itself is thin but honest: a clock, a settings panel, a few games, a terminal for the underlying console. That's typical of a project at this age. What's more telling is that the developer documents the app API rather than hoarding it — an app is a JavaScript bundle the runtime loads at boot or fetches from the catalogue, and nothing stops you writing your own. For a household with one tame programmer, that's the difference between a gadget and a platform.
The badge heritage underneath both
Neither project appeared from nowhere. The idea that a small display board can host a coherent device OS has been kicking around since the electronic-badge community got going — Badge.Team's badgeOS work put a Python runtime, app store and mesh messaging on battery-powered ESP32 badges years ago, and the CYD's cheapness turned a conference-only idea into something anyone can reproduce on a kitchen bench. ESP-Vim and KryonOS are that lineage maturing: the badge ran interpreters on 4 MB boards; these run on 8-16 MB boards and don't apologise for it.
Why the pocket-computer trend matters
Between these two, the CYD PDA firmware we covered earlier this month, and the badge-OS heritage of projects like Badge.Team, a pattern is clear: enough flash and PSRAM on cheap silicon turns a display board into a destination, not a peripheral. The practical consequence for builders is that one board can hold several personalities — our StealthDeck Lite (A$69) runs exactly the CYD-class hardware that PDA firmware, KryonOS and Bruce tooling all target.
If you want the editor-as-machine experience, the hardware bar is the thing to check: 16 MB flash and 8 MB PSRAM. Our StealthPuter (A$59), built around the M5Stack Cardputer with its integrated keyboard, is the natural starting point for pocket text work — though confirm the flash/PSRAM spec against the ESP-Vim board list before committing. The ESP32-S3 itself maxes out at 16 MB flash on module, so anything advertised with more is either stacked flash or not the chip the firmware expects.
A decision rule if you're choosing between the two: if the device has a good keyboard, try ESP-Vim; if it only has a touch screen, try KryonOS. Fighting a modal editor through on-screen buttons is misery, and tapping through a GUI without a keyboard is fine — each OS is built for the input hardware its users actually have.
Lawful use
Nothing in either project touches radio beyond ordinary WiFi. KryonOS's messaging features travel between devices you connect; if you build a KryonBeam-style setup with friends, everyone involved should know what's being shared. Standard stuff, but worth saying.
Affiliate disclosure: products linked above are sold in our own store.
Sources: Hackaday — "The Whole Computer Is Vim" · omwah/esp-vim on GitHub · Hackaday — "A JavaScript OS For The ESP32" · Haris16-code/KryonOS on GitHub · Vim — vim.org · Badge.Team · Espressif ESP32-S3. Links verified live 2026-10-07.