About

Why this project exists

Born out of frustration with drafting long-form applications one question at a time.

Motivation

It all started with a program application that used Typeform. Typeform has a beautiful, polished UI — there's no question about that. But its signature one-question-at-a-time experience becomes a real obstacle when you're working on a serious application where you need to think carefully about each answer.

You can't easily see what's coming next, you can't draft all your responses in a separate document without first clicking through every single question, and going back and forth to review your answers is tedious. For short surveys it's great. For multi-page applications where you want to prepare thoughtful responses? It's a terrible experience.

So I built this tool. It extracts the full structure of any Typeform — every question, every branch, every condition — and lays it all out so you can see the complete picture at once. You can export it as a Markdown table to draft your answers in any editor, or explore the form flow as an interactive graph.

Then I decided to make it public so anyone facing the same frustration can use it too.

What it does

Extract

Paste any Typeform URL and the tool fetches the embedded form schema, parsing out every field, logic branch, and thank-you screen.

Visualize

See the full form flow as an interactive graph with conditional branches highlighted, powered by React Flow and Dagre layout.

Export

Copy or download the form structure as a Markdown table, Mermaid flowchart, or rendered SVG to use anywhere.

npm Package

The extraction and rendering logic is available as a standalone npm package you can use in your own projects.

The npm package is not yet published. Check back in a couple of days.

npm install typeform-extractor
View on npm

GitHub Repository

The entire project is open source. Browse the code, open issues, or contribute.

View on GitHub

Open Source

This project is free and open source. If you find it useful, consider starring the repository, sharing it with others, or contributing back. Bug reports, feature requests, and pull requests are all welcome.