Siyuan
Privacy-First Personal Knowledge Management with Block-Level References
AI Summary
SiYuan is a self-hosted, fully open-source Personal Knowledge Management system with block-level references and WYSIWYG Markdown editor. The software offers features like bi-directional links, SQL queries, PDF annotation, spaced repetition flashcards and a plugin API. Built with TypeScript and Golang, available for desktop, mobile and as a Docker container.
✓ Pros
- + Fully open source (AGPL-3.0) and self-hostable for maximum data control
- + Powerful block-level editor with bidirectional links and SQL queries
- + Available cross-platform (desktop, Android, iOS, HarmonyOS, Docker)
✗ Cons
- − Some premium features only available for paying members
- − More complex setup for self-hosting compared to cloud solutions
Use Cases
- → Personal knowledge management with linked notes and block references
- → Academic work with PDF annotations and literature management
- → Technical documentation with Markdown, code snippets and diagrams
- → Long-term learning with spaced repetition flashcard system
Who is it for?
Ideal for developers, researchers and knowledge workers looking for a privacy-first alternative to Notion or Obsidian with self-hosting option.
Tags
What is Siyuan?
SiYuan is a Personal Knowledge Management System, fully open source (AGPL-3.0) and self-hostable. At its core is a WYSIWYG editor that operates not at the document level but at the block level. Every paragraph, heading and list item is a referenceable block. This enables links that are more precise than classic page-to-page connections. The tech stack combines TypeScript on the frontend with Golang on the backend. SiYuan runs as a desktop app, on Android, iOS and HarmonyOS, and as a Docker container.
Core features
- Block-level references and bidirectional links: Content can be linked at the paragraph level, and backlinks are captured automatically.
- SQL queries: Embedded SQL queries let you dynamically query and aggregate note content.
- PDF annotation: PDFs can be annotated directly in SiYuan, with annotations remaining connected to the knowledge graph.
- Spaced repetition flashcards: Flashcards can be created from any block and are reviewed by the system using the spaced repetition method.
- Plugin API: A documented API allows the application's functionality to be extended with custom plugins.
- Self-hosted sync: Data is stored locally or on your own infrastructure, with no requirement to use a cloud service.
Who is Siyuan for?
Developers who want to keep their documentation versioned and offline benefit from the Markdown-native approach and the Plugin API. Researchers working with PDFs who want to link sources directly to notes will find the annotation feature a practical bridge. The spaced repetition system also makes SiYuan usable for structured long-term learning without bringing in a separate tool like Anki.
Anyone who has never worked with Docker will need to invest time in self-hosting. Mobile sync between devices requires either SiYuan's paid cloud service or a self-configured infrastructure. Some features are locked to paying members. The project publishes the specifics in its official documentation.
Context & alternatives
SiYuan sits in the same category as Obsidian and Notion, but differs on two points. Obsidian is file-based, working with Markdown files on the filesystem. SiYuan uses its own database structure, which makes block references and SQL queries possible, but ties users more closely to its format. Notion is fully cloud-based and proprietary. SiYuan is the opposite.
Users who value Obsidian but want SQL queries and native PDF annotation, and want full control over their data, have a technically deeper alternative in SiYuan.