Skip to content

Introduction to VIBE

VIBE is a document assembly system that turns templates into dynamic, guided interviews. You write a template in Markdown or Word (DOCX) with placeholders for variable content, define the questions users need to answer, and VIBE takes care of the rest: it figures out which questions are relevant, presents them in a clean interview interface, and generates the finished document.

The key idea is that your template is the source of truth. VIBE reads the template to discover which questions matter based on the user's answers so far. If a section of the template is inside a conditional block and the condition isn't met, the questions for that section simply don't appear. This keeps interviews short, focused, and directly tied to the final document.

What can you build with VIBE?

  • Contracts and agreements with optional clauses that appear only when relevant
  • Reports and proposals that adapt their structure to user choices
  • Document packages with a main document and conditional appendices
  • Form-driven workflows where answers feed into professionally formatted output

How it works

Template bundles

Each template is a self-contained bundle: a template file (template.md or template.docx) paired with a config.yml that defines the questions, their types, and any supporting configuration. Bundles are validated at load time, so you see errors early.

Smart question flow

VIBE determines which questions to show by actually executing the template with placeholder values and tracking which variables are accessed. If a variable is inside a conditional block that isn't active, its question stays hidden. When the user's answers change the conditions, new questions appear automatically. You never have to write visibility rules by hand.

Rich question types

Questions can be simple text and number fields, yes/no toggles, dropdowns, multi-select checkboxes, dates, email addresses, and more. For complex data, there are structured questions (groups of related fields) and list questions (repeating items). You can also define computable variables that calculate their values automatically from other answers.

Reusable building blocks

Templates can include reusable sections called components, and questions can share field layouts through reusable definitions. This lets you build modular templates where common patterns (like a contact card or signature block) are defined once and used across multiple documents.

Live preview

As users answer questions, VIBE renders the document in real time so they can see exactly how their answers appear in the final output. The interface updates instantly with each answer.

Validation and tooling

Before you run a template, VIBE can perform static checks for undefined variables, type mismatches, and other common errors. Command-line tools let you validate templates and inspect saved interview state without running the full web application.

Extensions

VIBE has two optional extensions that add capabilities beyond core template authoring:

  • Assistant adds AI-powered drafting, where a large language model helps users compose complex or creative sections through a guided conversation, using the same questions you define.
  • Review adds document analysis, where VIBE evaluates an existing document against requirements you specify and produces structured assessments.

These extensions require additional configuration and are covered in their own guides. Core VIBE works without them.

Template authoring at a glance

Template bundles by default live in templates/<template_id>/ and include:

  • template.md or template.docx
  • config.yml with questions: and optional definitions:

Templates in other locations can be enabled through the global config.yml file in the project root.

Next steps