> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://documentation.celestory.io/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# Choosing your template: Chatbot, Visual Novel, Blackbox, Draft

# 🧩 Choosing your template: Chatbot, Visual Novel, Blackbox, Draft

Every module rests on a **template**. This is your very first decision: **Add module** asks for a name, then for a template. It *"determines how information scrolls on screen"*, says the help text — so **how your content is displayed** and **which blocks you will have**. 🎬

🔺 This choice is final: see below.

---

## 📊 The four templates at a glance

| Template | Who for | What for | What you gain |
|---|---|---|---|
| **Chatbot** | Training courses, quizzes, assistants | Rolling out messages and inputs in a feed | The feed, the characters, the stages |
| **Visual Novel** | Illustrated stories, narrative games | Animating a scene | The scenes, the characters and their moods |
| **Blackbox** | Any graph that grows | Isolating a piece of logic and **reusing** it | One input, several outputs, callable from anywhere |
| **Draft** | Sandbox, older projects | Laying out logic outside production | Nothing more: no characters, no rendering |

In the picker, only **Chatbot** (preselected) and **Visual Novel** are offered. The other two are obtained differently. 👇

---

## 💬 Chatbot — the discussion feed

The default template, and the most complete one. The player displays a **feed** that stacks events and scrolls on its own: dialogues, narrator, images, alerts, text input, number input, microphone, camera, files…

Four settings tabs are specific to it: **Characters**, **Stages**, **App style**, **Block style**.

---

## 🎭 Visual Novel — the animated scene

No scrolling feed here: a **scene** fills the screen, and characters appear in it, move around, mirror themselves and change mood during the dialogues. Its own settings: **Characters**, **App style**, **Block style**.

👉 A dedicated article already exists on the helpdesk: please refer to it.

---

## 📦 Blackbox — your reusable logic

**Yes, the Blackbox really is a piece of reusable logic called from elsewhere.** It is not in the picker: create it with **Add graph**, or by right-clicking a selection of blocks → **Blackbox the selection**. The blocks then move into the new graph and an **Open a graph** block replaces them, already rewired. ✨

It contains two special blocks: **Input** (only one, neither copyable nor removable) and **Output** (at least one). The points you add to them are the parameters and the results of your "function". The same graph can be called by **several** *Open a graph* blocks, across several modules.

🔺 Do not confuse **Open a graph** (calls a Blackbox and comes back) with **Open module** (switches to another module).

---

## 🗒️ Draft — and the "zero blocks" trap

Named **Draft** and described as *"free-form structure"*, it **no longer appears in the picker**; you still run into it in older projects. It is **excluded from compilation**: never published in the application.

🔺 You sometimes read that it has "zero blocks". That is wrong. Roughly **80 blocks are common to every template**: conditions, variables, lists, objects, HTTP, Baserow, Airtable, AI, audio, HTML5, JavaScript… Each template then **adds** its own: Chatbot **+17**, Visual Novel **+11**, Blackbox **+2**, Draft **+0** — so still the 80 common ones. A Draft has **no rendering**, it is not empty.

---

## 🔒 Can you change template afterwards?

**No.** The name can be edited, the module can be duplicated or removed — but in its settings, the template is shown **read-only**. No command changes it, and duplicating keeps the original template.

🔺 So take thirty seconds before confirming: going from a Chatbot to a Visual Novel means **recreating a module** and redoing all of its display, since the dialogue and character blocks are not the same on either side.

---

→ Next step: create your first Chatbot module, then discover the graph interface. 🚀
