Klaat

Kodelabs As A Thing

Convert Google Docs and Markdown into interactive codelabs. A fast, native command-line tool built with Kotlin and GraalVM for creating beautiful, step-by-step tutorials.

Features

description

Multiple Input Sources

Convert from Google Docs or Markdown files with full formatting support

palette

Multiple Output Formats

Export to HTML, Markdown, or self-contained offline bundles

bolt

Native Performance

GraalVM native image for instant startup and low memory usage

preview

Live Preview Server

Built-in web server for real-time preview during development

public

Cross-Platform

Available for Linux (x64, ARM64) and macOS (ARM64)

settings_suggest

Zero Configuration

Works out of the box with sensible defaults

Release (Stable)
Snapshot (Alpha)

Download

download Homebrew (macOS & Linux)

The easiest way to install snapshot builds (latest from develop) on macOS and Linux:

brew tap kartikarora/klaat-snapshots
brew install klaat-snapshot

Note: If Homebrew requires trusting the formula, run:

brew trust --formula kartikarora/klaat-snapshots/klaat-snapshot

package_2 Direct Download

Download binaries from the CDN:

Snapshot builds (Alpha): latest

https://distribute.kartikarora.me/bin/klaat/snapshot/VERSION/klaat-snapshot-macos-arm64-VERSION

Selected platform: macOS ARM64

curl -L -O https://distribute.kartikarora.me/bin/klaat/snapshot/VERSION/klaat-snapshot-macos-arm64-VERSION

After downloading, make the binary executable:

chmod +x klaat-snapshot-macos-arm64-VERSION
sudo mv klaat-snapshot-macos-arm64-VERSION /usr/local/bin/klaat-snapshot

download Homebrew (macOS & Linux)

The easiest way to install stable releases on macOS and Linux:

brew tap kartikarora/klaat
brew install klaat

Note: If Homebrew requires trusting the formula, run:

brew trust --formula kartikarora/klaat/klaat

package_2 Direct Download

Download binaries from the CDN:

Stable Release: latest

https://distribute.kartikarora.me/bin/klaat/release/VERSION/klaat-macos-arm64-VERSION

Selected platform: macOS ARM64

curl -L -O https://distribute.kartikarora.me/bin/klaat/release/VERSION/klaat-macos-arm64-VERSION

After downloading, make the binary executable:

chmod +x klaat-macos-arm64-VERSION
sudo mv klaat-macos-arm64-VERSION /usr/local/bin/klaat

Quick Start

0

Create Source File

Write your content in Markdown or structure a Google Doc following the required templates. Refer to the Markdown Format Guide or Google Docs Format Guide to set up frontmatter, step headers, and info boxes.

1

Export from Markdown

Create a codelab from a Markdown file:

klaat-snapshot export my-tutorial.md -o output -f html
2

Export from Google Docs

Convert a Google Doc to a codelab (requires one-time authentication):

klaat-snapshot export https://docs.google.com/document/d/YOUR_DOC_ID -o output -f html
3

Preview Locally

Start a local server to preview your codelabs:

klaat-snapshot serve -dir output -addr localhost:9090

Open http://localhost:9090 in your browser

0

Create Source File

Write your content in Markdown or structure a Google Doc following the required templates. Refer to the Markdown Format Guide or Google Docs Format Guide to set up frontmatter, step headers, and info boxes.

1

Export from Markdown

Create a codelab from a Markdown file:

klaat export my-tutorial.md -o output -f html
2

Export from Google Docs

Convert a Google Doc to a codelab (requires one-time authentication):

klaat export https://docs.google.com/document/d/YOUR_DOC_ID -o output -f html
3

Preview Locally

Start a local server to preview your codelabs:

klaat serve -dir output -addr localhost:9090

Open http://localhost:9090 in your browser

About

Klaat is a Kotlin reimagining of Google's claat tool. It provides the same functionality with improved performance through GraalVM native compilation, making it faster to start and more memory-efficient.

Why Klaat?

Built With

Support & Feedback

For questions, bug reports, or feature requests, please contact:

Kartik Arora

Email: dev[at]kartikarora[dot]me

Website: kartikarora.me