# siyuan-note/siyuan

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/siyuan-note-siyuan).**

41,351 stars · 2,567 forks · TypeScript · agpl-3.0

## Links

- GitHub: https://github.com/siyuan-note/siyuan
- Homepage: https://b3log.org/siyuan
- awesome-repositories: https://awesome-repositories.com/repository/siyuan-note-siyuan.md

## Topics

`anki` `chatgpt` `deepseek` `electron` `evernote` `knowledge-base` `local-first` `markdown` `note-taking` `notes-app` `notion` `obsidian` `ocr` `ollama` `openai` `pdf` `s3` `self-hosted` `webdav`

## Description

Siyuan is a self-hosted knowledge management platform designed for private note-taking and information organization. It functions as a local-first application that stores all user content as plain text files on the local file system, ensuring data ownership and offline availability.

The platform utilizes a block-based document model, which structures information as a tree of independent content blocks to facilitate granular manipulation and bidirectional linking. Users can extend the core functionality through a sandboxed plugin architecture, allowing for the development of custom themes and scripts that modify the editor behavior and user interface to suit specific workflows.

The software is built as a containerized application, supporting deployment within isolated environments to standardize dependencies and simplify maintenance across various hosting infrastructures. It maintains consistency across multiple devices through a persistent socket connection that propagates state changes in real time, while the interface utilizes virtual document object model reconciliation to manage updates efficiently.

## Tags

### Business & Productivity Software

- [Personal Knowledge Management Systems](https://awesome-repositories.com/f/business-productivity-software/personal-knowledge-management-systems.md) — Manages information using private tools that support block-based editing and local data storage. ([source](https://github.com/siyuan-note/siyuan))
- [Self-Hosted Knowledge Bases](https://awesome-repositories.com/f/business-productivity-software/self-hosted-knowledge-bases.md) — Provides a private note-taking platform that stores data locally and organizes information through a flexible block-based editing interface.
- [Knowledge Management Platforms](https://awesome-repositories.com/f/business-productivity-software/knowledge-management-platforms.md) — Captures and structures information in a private, block-based environment to maintain long-term control over personal notes.
- [Productivity Suites](https://awesome-repositories.com/f/business-productivity-software/productivity-suites.md) — Provides a modular software architecture that supports custom plugins and themes to allow users to tailor their digital workspace.

### Data & Databases

- [Local-First Persistence](https://awesome-repositories.com/f/data-databases/local-first-persistence.md) — Stores user content as plain text files on the local file system to ensure data ownership and offline availability.

### Software Engineering & Architecture

- [Block-Based Data Models](https://awesome-repositories.com/f/software-engineering-architecture/block-based-data-models.md) — Structures information as a tree of independent content blocks for granular manipulation and bidirectional linking.
- [Plugin Architectures](https://awesome-repositories.com/f/software-engineering-architecture/plugin-architectures.md) — Extends core functionality through a sandboxed interface that loads external scripts to modify behavior.

### DevOps & Infrastructure

- [Self-Hosted Infrastructure](https://awesome-repositories.com/f/devops-infrastructure/self-hosted-infrastructure.md) — Runs complex applications within isolated containers to ensure consistent performance and simplified maintenance.
- [Containerized Platforms](https://awesome-repositories.com/f/devops-infrastructure/containerized-platforms.md) — Provides a software environment packaged for deployment within isolated containers to ensure consistent performance.
- [Containerized Deployment Strategies](https://awesome-repositories.com/f/devops-infrastructure/containerized-deployment-strategies.md) — Standardizes dependencies and simplifies installation across diverse hosting infrastructures using isolated environments.

### User Interface & Experience

- [Virtual DOM Reconciliation](https://awesome-repositories.com/f/user-interface-experience/virtual-dom-reconciliation.md) — Updates the user interface by calculating the minimal set of changes required to sync the view with the data model.

### Development Tools & Productivity

- [Extensible Application Frameworks](https://awesome-repositories.com/f/development-tools-productivity/extensible-application-frameworks.md) — Supports building custom plugins and themes to modify core software functionality and tailor the user interface.

### Networking & Communication

- [Real-Time Synchronization](https://awesome-repositories.com/f/networking-communication/real-time-synchronization.md) — Propagates state changes between client and server using persistent socket connections to maintain consistency.
