Hi. I'm John Carmack.

I'm a software engineer focused on production LLM/AI and geospatial/GPU systems. Rust and TypeScript, deck.gl and luma.gl, and the cloud infrastructure that runs them. Lately: primary author of a safety-critical aviation desktop application, lone architect of a real-time analytics platform.

Not the Doom guy. Different guy.

Day Theme BackdropNight Theme BackdropJohn Carmack

Skills

Languages

RustRustTypeScriptTypeScriptJavaScriptJavaScriptPythonPython

GPU & geospatial

deck.gldeck.glWebGLWebGLMapLibreMapLibreD3.jsD3.js

Frontend & apps

ReactReactNext.jsNext.jsViteViteTailwind CSSTailwind CSSNode.jsNode.jsTauriTauri

Data

PostgreSQLPostgreSQLSnowflakeSnowflake

Cloud & DevOps

AWSAWSTerraformTerraformKubernetesKubernetesGitHub ActionsGitHub Actions

Projects

LLM / AI

promptward

promptward

RustRustTypeScriptTypeScriptReactReactViteVite
An LLM gateway that blocks prompt injection and proves the detection rate.

Web

seo-kit

seo-kit

PythonPythonAWSAWSTerraformTerraform
Real-data SEO + GEO audits: does Google rank you, do LLMs cite you.

Command Line Interface (CLI)CLI

Geospatial & GPU

Stormdeck

Stormdeck

RustRustTypeScriptTypeScriptReactReactTailwind CSSTailwindViteVitedeck.gldeck.glMapLibreMapLibreWebGLWebGLluma.glluma.glAWSAWSAWS CDKCDK
Live weather on a deck.gl map, served from the AWS free tier.

Web

deck-wind-layer

deck-wind-layer

TypeScriptTypeScriptdeck.gldeck.glWebGLWebGLluma.glluma.glViteVite
A deck.gl v9 wind-particle layer, advected on the GPU.

Web

glslint

glslint

RustRustTypeScriptTypeScriptdeck.gldeck.glluma.glluma.gl
A GLSL checker for the deck.gl and luma.gl shaders stock tools can't parse.

Command Line Interface (CLI)CLILibrary

geo-desktop-bench

geo-desktop-bench

RustRustTypeScriptTypeScriptdeck.gldeck.glMapLibreMapLibreWebGLWebGLluma.glluma.glTauriTauri
Finding the fastest geospatial desktop stack.

Web

typed-geojson

typed-geojson

RustRustTypeScriptTypeScript
Strongly-typed GeoJSON for Rust.

Library

Apps

Lux

Lux

RustRustAxumAxumTypeScriptTypeScriptReactReactTailwind CSSTailwindTauriTauriTerraformTerraform
A DMX lighting controller: multi-fixture engine, sACN streaming, cloud sync.

macOSmacOSiOSiOS

Download on the App Store
vegify.app

vegify.app

RustRustAxumAxumTypeScriptTypeScriptReactReactTailwind CSSTailwindViteViteTauriTauri
Micronutrition tracking & recipe sharing for plant-based cooking.

WebiOSiOS

Download on the App Store

Infrastructure & tooling

Manifest

Manifest

RustRustAxumAxumTypeScriptTypeScriptReactReactTailwind CSSTailwindViteViteAWSAWSAWS CDKCDK
Self-hosted AWS cost & inventory dashboard.

Web

accept-payments

accept-payments

RustRustAxumAxumStripeStripeTypeScriptTypeScriptReactReactAWSAWS
A Rust payments & invoicing API on AWS Lambda.

Web

tauri-typed-ipc

tauri-typed-ipc

RustRustTauriTauriTypeScriptTypeScriptViteVite
Type-safe Tauri IPC from a single Rust trait.

Library

Deep Freeze

Deep Freeze

RustRustAWSAWSTerraformTerraform
Migrate from Dropbox Business to S3 Deep Archive.

Command Line Interface (CLI)CLI

Open source

Merged into other people's codebases. Each title links to the pull requests on GitHub.

Merged work toward 2.0: the OpenAPI paths layer, OAS 3.1 by default, and a bigint remapper the maintainer now uses in his own serde_json tests.
Cargo workspace-dependency support, plus follow-on work on workspace-root version bumps.
Sharpening the useSortedClasses lint rule for Tailwind class order, including how same-utility values sort.
A macOS test-reliability fix and a Claude Code integration guide.