https://github.com/RafaelGB/Obsidian-ZettelFlow
ZettelFlow is a plugin for Obsidian that helps you to create and manage your notes in a Zettelkasten way.
https://github.com/RafaelGB/Obsidian-ZettelFlow
obsidian-md obsidian-plugin workflow zettelkasten zettelkasten-methodology
Last synced: 4 months ago
JSON representation
ZettelFlow is a plugin for Obsidian that helps you to create and manage your notes in a Zettelkasten way.
- Host: GitHub
- URL: https://github.com/RafaelGB/Obsidian-ZettelFlow
- Owner: RafaelGB
- License: mit
- Created: 2023-07-30T16:31:05.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2025-01-28T17:32:11.000Z (4 months ago)
- Last Synced: 2025-01-28T18:27:22.308Z (4 months ago)
- Topics: obsidian-md, obsidian-plugin, workflow, zettelkasten, zettelkasten-methodology
- Language: TypeScript
- Homepage:
- Size: 39.4 MB
- Stars: 109
- Watchers: 7
- Forks: 4
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- Contributing: docs/contributing/Documentation.md
- License: LICENSE
Awesome Lists containing this project
README
# Obsidian-ZettelFlow
[](https://github.com/RafaelGB/Obsidian-ZettelFlow/releases/latest)
[]()- [Documentation](https://rafaelgb.github.io/Obsidian-ZettelFlow/)
- [Roadmap](https://github.com/users/RafaelGB/projects/9/views/1)
- [Examples](https://github.com/RafaelGB/Obsidian-ZettelFlow/tree/main/WorkFlow%20Test)# ZettelFlow: Unlock the Power of Custom Note Flows in Obsidian
Welcome to **ZettelFlow**, the ultimate plugin for Obsidian that empowers you to design and navigate your own personalized workflows for creating and editing notes. Whether you're a fan of the Zettelkasten methodology or simply seeking a flexible way to structure your ideas, ZettelFlow adapts to your needs and puts creativity in your hands.
---
## **What is ZettelFlow?**
ZettelFlow transforms Obsidian into a dynamic space for note-taking and knowledge management by using **canvas drawings** to create flows. These flows guide you through **step-by-step processes**, where each step can be a note, a group, or a card on the canvas, interconnected with arrows that represent their relationships.
ZettelFlow encourages you to:
- Embrace the **[Zettelkasten philosophy](https://zettelkasten.de/overview/)** while tailoring it to your unique workflow.
- Design **custom flows** that resonate with how you think and organize.
- Dive deeper into your notes, crafting them in a structured yet flexible way.---
## **How Does It Work?**
### **1. Root Notes**
Every flow begins with a **Root Note**. These are the starting points that appear when you initiate a new workflow. Think of them as entry points into your creative process.### **2. Steps**
A **flow** consists of multiple **steps**, which can be:
- **Notes**: Standard Obsidian notes.
- **Groups**: Collections of related items.
- **Canvas Cards**: Visual representations within the Obsidian canvas.These steps are linked with arrows, creating a clear visual representation of how your ideas connect and progress.
### **3. Actions**
Within each step, you can add **Actions** to enhance your notes. Actions are interactive elements that:
- Modify your final note.
- Edit existing notes dynamically.> [!IMPORTANT]
> The canvas editor flow is different from the canvas creation flow. It should be configured independently in the plugin settings.#### **Available Actions**
ZettelFlow provides a wide array of actions, including:- **[Prompt](https://rafaelgb.github.io/Obsidian-ZettelFlow/actions/Prompt/)**: Input custom text.
- **[Number](https://rafaelgb.github.io/Obsidian-ZettelFlow/actions/Number/)**: Add numeric values.
- **[Checkbox](https://rafaelgb.github.io/Obsidian-ZettelFlow/actions/Checkbox/)**: Include checkboxes for tasks.
- **[Calendar](https://rafaelgb.github.io/Obsidian-ZettelFlow/actions/Calendar/)**: Pick dates.
- **[Selector](https://rafaelgb.github.io/Obsidian-ZettelFlow/actions/Selector/)**: Choose from a predefined list.
- **[Dynamic Selector](https://rafaelgb.github.io/Obsidian-ZettelFlow/actions/DynamicSelector/)**: Generate lists dynamically.
- **[Tags](https://rafaelgb.github.io/Obsidian-ZettelFlow/actions/Tags/)**: Add or manage tags.
- **[Backlink](https://rafaelgb.github.io/Obsidian-ZettelFlow/actions/Backlink/)**: Create backlinks to other notes.
- **[CssClasses](https://rafaelgb.github.io/Obsidian-ZettelFlow/actions/CssClasses/)**: Apply CSS classes for styling.
- **[Task Management](https://rafaelgb.github.io/Obsidian-ZettelFlow/actions/TaskManagement/)**: Manage tasks directly.
- **[Script](https://rafaelgb.github.io/Obsidian-ZettelFlow/actions/Script/)**: Run custom scripts for advanced users.---
## **Relationships Between Steps**
In ZettelFlow, steps can be interconnected in different ways, allowing you to create meaningful relationships between your notes, groups, and actions. Here are the types of relationships available:
### 1. Arrow-Based Connections
Notes and cards can be linked using arrows, representing a direct relationship or flow between steps. These connections visually guide the sequence of actions or ideas.
### 2. Group-to-Nodes Relationships
Groups establish a one-to-many relationship with the nodes they contain. For example:
- A group can include multiple notes or cards as its children.
- Any action performed on the group can cascade or relate to its nodes.
- A group can act as a Root Node, serving as the starting point of a flow.### 3. JavaScript File Connections
JavaScript files can be linked to steps as if they were actions, executing custom scripts. These connections allow advanced users to:
- Extend ZettelFlow's functionality.
- Automate or customize specific parts of the workflow.> [!NOTE] Limitations
> JavaScript files cannot serve as Root Nodes. They can only appear in the middle or at the end of a flow chain.### 4. Root Node Eligibility
Steps that can serve as Root Nodes include:
- Groups
- Notes
- Cards> [!WARNING] Exclusions
> JavaScript files are excluded from being Root Nodes.These relationships give you the freedom to structure your workflows logically and intuitively, ensuring each flow adapts to your specific needs.
---
## **Why Use ZettelFlow?**
- **Freedom to Customize**: ZettelFlow adapts to your way of working, not the other way around.

- **Visual Clarity**: Flows on the canvas provide an intuitive overview of your thought process.
- **Deep Integration**: Seamlessly integrates with Obsidian, enhancing your existing workflow.
- **Powerful Actions**: Automate and enrich your notes with a variety of built-in actions.---
## **Getting Started**
1. **Install the Plugin**
- Download and install ZettelFlow from the Obsidian plugin marketplace.
2. **Create Your First Flow**
- Create a new Canvas file in Obsidian.
- Configure it as the principal Flow file in the plugin settings.
- Open a canvas and start designing your flow by adding steps and connecting them with arrows.
3. **Add Actions**
- Select a step and incorporate actions to modify or enhance your notes.
4. **Explore Examples**
- Check the [official documentation](https://rafaelgb.github.io/Obsidian-ZettelFlow/) for example flows and action guides.---
## **Learn More**
For detailed instructions, descriptions of each action, and tips for creating advanced flows, visit the [ZettelFlow Documentation](https://rafaelgb.github.io/Obsidian-ZettelFlow/).
If you have any questions or feedback, feel free to reach out via the Obsidian community forums or GitHub issues.
---
Unleash the full potential of your notes with ZettelFlow. **Your ideas, your flow, your rules.**
## Support
If you enjoy ZettelFlow, consider [buy me a coffee](https://www.buymeacoffee.com/5tsytn22v9Z) or [sponsor me](https://github.com/sponsors/RafaelGB) to support my work. Thank you](https://github.com/sponsors/RafaelGB)
[](https://www.buymeacoffee.com/5tsytn22v9Z)