Skip to content

Emil Krebs

Software engineer at TypeFox in Kiel, Germany. I build frontends, DSLs, and IDEs, ship my own products like Prami and Healthstack, and contribute to open-source projects.

Emil Krebs, Software engineer

Thinking...

Field

I build the tools that read, understand, and transform code. At TypeFox that means custom vscode-extensions, the LSP, and the IDEs around them. On my own time it means products: Prami, a spaced-repetition app; Healthstack, an IDE with its own language; and VailNote, zero-knowledge note sharing. Upstream, I contribute to Eclipse Langium.

What I do

Developer tooling

Extensions, Langium DSLs, and custom IDEs: the tools that let editors understand code. The Healthstack language runs its own language server in your browser.

Products and frontend

Products built and run end to end: VailNote is live, Prami is in testing. At TypeFox I also build components for Baukasten and interfaces for client projects.

Security & privacy

Zero-knowledge encryption in VailNote, phone locking from the watch in WatchLock, and the CSP and security-header middleware I contributed to the Fresh framework.

Open source

Eclipse Langium: the state machine, arithmetics, MiniLogo, and domain model showcases on langium.org, its playground upgrade to Langium 4.1, and fixes in the core. And various contributions to other open-source projects.

Work

Software engineer in a full role since October 2025, on client projects with large, international teams. Before that, an internship at fifteen and a year and a half part-time. Alongside the job, a full-time Bachelor's in Computer Science and Sociology.

TypeScriptLSPLangiumTheiaNode.js

Projects

Prami screenshot

In testing - prami.app

Prami

Preview

Active recall and spaced repetition, engineered so the review schedule fades into the background.

Next.jsPWATypeScript
Healthstack screenshot

Live - emilkrebs.dev/playground

Healthstack

Preview

A specialized IDE for lifestyle optimization on Eclipse Theia: biomarker tracking, unit conversion, and a purpose-built DSL for intervention protocols. The DSL's language server runs on the project page.

TheiaLangiumTypeScriptElectron

Live - langium.org/showcase

Langium Showcase

I built the state machine, arithmetics, MiniLogo, and domain model showcases on langium.org: each one a live editor for its language.

LangiumTypeScriptDSLs
VailNote screenshot

Live - vailnote.com

VailNote

Encrypted note sharing with zero-knowledge encryption and self-destructing notes.

TypeScriptFreshDenoMongoDB
WatchLock screenshot

Source - github.com/emilkrebs/WatchLock

WatchLock

Lock your phone with your smartwatch. WearOS and Android, built for personal security.

KotlinAndroidWearOS
This site screenshot

Live - emilkrebs.dev

This site

Static export. No server, no database. Typeset per the spec you are reading.

Next.jsTypeScriptTailwind CSS

Contact

For roles, collaborations, or questions about anything on this page, write to me.

[email protected]