Back to home

zuorn

Tydora

Let Your Ideas Flow — Tydora is a modern desktop Markdown editor combining WYSIWYG editing, bidirectional links, mind maps, and an infinite canvas — empowering deep thinking and effortless expression.

Stars
23
Language
TypeScript
Created
Jun 19, 2026
Updated
Aug 15, 2026

Introduction

Tydora

A modern desktop Markdown editor

GitHub Stars Release License Platform Tauri React

中文 | English


Screenshot 1Screenshot 2
Screenshot 3Screenshot 4

Core Features

  • Dual-Mode Editing — Seamlessly switch between WYSIWYG (TipTap) and Source mode (CodeMirror 6)
  • WikiLink Bidirectional Links — Obsidian-style [[backlinks]] with backlink panel and autocomplete
  • Knowledge Graph — D3.js force-directed graph visualizing relationships between documents
  • Mind Map — Auto-generated interactive mind map from Markdown heading hierarchy
  • Infinite Canvas — Whiteboard canvas supporting text, notes, media, URL, and more node types
  • Rich Theming — 8 built-in themes + custom CSS import + 11 code highlighting color schemes
  • One-Click Publish — Publish your vault as a static website with a built-in preview server
  • Multi-Window Architecture — Settings, graph, mind map, and canvas in independent windows with multi-monitor support

Tech Stack

LayerTechnology
FrontendReact 19 + TypeScript + Vite 6
EditorTipTap 3.x (WYSIWYG) + CodeMirror 6 (Source)
BackendRust (Tauri v2)
VisualD3.js (Graph) + markmap (Mind Map) + React Flow (Canvas)
Pluginstauri-plugin-fs / dialog / window-state / updater / process

Quick Start

Prerequisites

Install & Run

# Clone the repository
git clone https://github.com/zuorn/Tydora.git
cd Tydora

# Install dependencies
npm install

# Start development mode
npm run tauri

Build

# Build for production
npm run tauri build

Build artifacts are located in src-tauri/target/release/bundle/.

Project Structure

Tydora/
├── src/                        # Frontend source
│   ├── App.tsx                 # Main component & state management
│   ├── Editor/                 # Editor module
│   │   ├── TipTapEditor.tsx    # WYSIWYG editor
│   │   └── SourceEditor.tsx    # Source code editor
│   ├── wikilink/               # WikiLink bidirectional link system
│   ├── graph/                  # Knowledge graph
│   ├── mindmap/                # Mind map
│   ├── Canvas/                 # Infinite canvas
│   ├── components/             # Shared UI components
│   ├── publish/                # Publishing system
│   └── themes/                 # Theme system
├── src-tauri/                  # Rust backend
│   └── src/
│       ├── lib.rs              # Tauri commands & plugins
│       └── commands/           # Modular commands
├── docs/                       # Project documentation
└── website/                    # MkDocs documentation site

Documentation

Contributing

Issues and pull requests are welcome! Please read the project documentation to understand the architecture first.

License

This project is licensed under the Apache License 2.0.