No ceiling on your docs.
Markdown caps what a thinking document can do. inkling doesn't. Your perf report renders its chart from a CSV. Your architecture explains itself on click. Your learning note is a real notebook, not a memo. Interactive. Computational. Aesthetic. Warm. Whatever the doc earns — built turn-by-turn by your agent as you think out loud.
Markdown is a ceiling. Your thinking deserves more.
You write the doc. The numbers go into a static table because markdown can't chart them. The architecture goes into ASCII art because markdown can't render diagrams. The decision tree gets flattened into bullets. The CSV gets pasted as a code block. The doc ships. It gets archived. You never reopen it — because there's nothing to reopen into.
- Perf reports with raw numbers in a static table when they deserved a chart bound to the source data — edit the CSV, watch the chart move.
- Architecture docs that describe systems in prose because markdown can't show a clickable diagram with click-to-explain panels.
- Decision walks flattened into nested bullets because there's no way to actually walk a decision tree in markdown.
- Learning notes that read like transcripts. No glossary popovers, no inline quiz, no interactive concept map. Just paragraphs.
- Vision docs that get shared once and never reopened. The format sets the ceiling for how alive the doc can feel — and markdown's ceiling is flat.
- The alternatives fail differently. Notion and Observable live on someone else's server. Idyll requires authoring a separate markup language. Claude Artifacts disappear with the chat. None of them give you a self-contained, portable, archive-worthy artifact that runs from your filesystem.
Below is the same Q1 funnel rendered two ways — flip the tab and see what the format actually costs you.
Q1 Onboarding Funnel
Hover any bar. Click for context. Toggle the view.
Bars and labels are computed from the JSON below — the doc reads its own data. Markdown can't do any of this. Inkling treats it as the default.
Let the agent build the doc your thinking deserves.
inkling is a Claude Code skill. You describe the document in natural language — no markup, no slash commands. The agent designs the chassis for this specific doc, invents the structural shapes it needs, writes the styles, wires the interactions, parses your data, and renders a folder of HTML + CSS + JS + data you can open offline, archive forever, or share.
Every render must hit five axes. None are negotiable. If any axis falls below threshold, the agent fixes it before declaring done.
Interactive
The doc reacts. Click-to-explain on diagrams, decision walks, drawers, focus mode, scroll-spy, glossary popovers. Things markdown literally cannot do.
Computational
The doc computes. Inline CSV parsing renders charts. Decision trees walk from source data. Numbers update when the data changes. Bound, not pasted.
Aesthetic
Typographic care, layout discipline, restraint. Real serif type for prose, mono for code, a warm-notebook palette inherited across every doc in the kit.
Warm
Paper tones, gentle interactions, no chrome-junk. The doc invites reopening — it reads like a notebook page, not a SaaS landing.
Originality
Every render must invent at least one structural shape the kit hasn't seen. No template menu — the agent designs what this doc earns. Below 5/10 is a hard fail.
The rest of this page shows how it actually works — the primary flow, a typical session, what a doc folder looks like inside, and the prompts to paste into Claude Code to start your own. This page was built by inkling. Scroll to the bottom to see its own event log.
What happens between your message and the live doc
Click any step to see what the agent does, and what you see.
Six turns that build a real doc
A simulated conversation with the agent — friend talks on the left, the agent reports on the right with the files it actually touched. Notice you never see a slash command.
docs/2026-05-14-onboarding-revamp/.
The chassis isn't decided yet — that gets designed on the first real content add.
Just told you what verb I picked: new
step,users
Landing,4200
Signup,2100
Verify,900
Activate,540data/funnel.csv so the chart
is reactive — edit the file, the chart updates on reload. Designed a
dashboard chassis because the first content was data-shaped,
not prose-shaped. Invented one new behavior: renderFunnelChart
with paper-warmed bars. add
runtime.js, so when you swap in new data later
the percentages recompute automatically. edit
remove event in the log so
we can replay or undo later. remove
docs/2026-05-14-onboarding-revamp/index.html.
Five-axis audit on the doc as it stands now —
Interactive 8, Computational 7, Aesthetic 8, Warm 9, Originality 8.
show
Anatomy of a doc folder
A doc isn't a file — it's a folder. Click any node in the tree to learn what each file does and why it's there.
Three docs inkling has rendered.
Each link below opens a real inkling artifact. Read the
doc-source.json inside each folder to see the event log that
produced it — provenance is part of every doc.
- Vision doc A project's vision rendered as an inkling artifact. Uses the starter visual vocabulary heavily; kept here as an honest reference for what the warm-notebook tokens look like and where templater drift can creep in (this render predates the originality contract).
-
The inkling skill explained
A learning-shaped doc with inline charts, glossary popovers, and
click-to-explain wiring. Demonstrates behavioral invention at the
runtime layer —
parseCsv,renderBarChart,clickToExplain,glossaryall written fresh. - Full gallery → All three reference renders side-by-side with originality scores and one-line notes on what each one demonstrates.
Start your first doc in two messages
Open Claude Code in any folder. Paste the first prompt. After it replies, paste the second. That's it.
Start the doc
Tell the agent what the doc is for. No slash commands. No template names. Just intent.
Add something real
Paste data, an image, a section, anything. The agent reads your intent and edits the live folder.
step,users
A,100
B,72
C,40
Iterate naturally
Change anything. Move things around. Drop sections. The agent maintains state across turns — you don't have to re-state which doc you mean.
See it
Ask to view it. The agent opens the rendered index.html in your browser.