logseq
A privacy-first, open-source platform for knowledge management and collaboration. Download link: http://github.com/logseq/logseq/releases. roadmap: http://trello.com/b/8txSM12G/roadmap
Top Related Projects
A personal knowledge management and sharing system for VSCode
Community plugins list, theme list, and releases of Obsidian.
The personal knowledge management (PKM) tool that grows as you do!
Athens is no longer maintainted. Athens was an open-source, collaborative knowledge graph, backed by YC W21
Rudimentary Roam replica with Org-mode
Quick Overview
Logseq is an open-source, privacy-first, knowledge management and collaboration platform. It's designed for note-taking, task management, and building personal knowledge bases using a local-first, plain-text approach. Logseq supports various markup languages and offers features like bi-directional linking, graph visualization, and extensibility through plugins.
Pros
- Local-first approach ensures data privacy and ownership
- Supports multiple markup languages (Markdown, Org-mode)
- Powerful bi-directional linking and graph visualization
- Extensible through plugins and themes
Cons
- Steeper learning curve compared to some traditional note-taking apps
- Mobile support is still in development
- Sync functionality is not as robust as some cloud-based alternatives
- Performance can slow down with very large knowledge bases
Getting Started
To get started with Logseq:
- Download the latest release from the Logseq GitHub releases page.
- Install and launch the application.
- Choose a directory for your graph (knowledge base).
- Start creating pages and taking notes using Markdown or Org-mode syntax.
- Use double square brackets
[[]]
to create links between pages. - Explore the graph view to visualize connections between your notes.
Example of creating a new page with links:
# My First Page
This is a [[link]] to another page.
- [ ] Create a [[task]]
- [ ] Learn about [[Logseq]]
To add a code block in your notes:
```python
def hello_world():
print("Hello, Logseq!")
For more detailed instructions and documentation, visit the [Logseq documentation](https://docs.logseq.com/).
Competitor Comparisons
A personal knowledge management and sharing system for VSCode
Pros of Foam
- Lightweight and flexible, integrating seamlessly with Visual Studio Code
- Highly customizable with a wide range of extensions and themes
- Supports multiple knowledge graph visualization options
Cons of Foam
- Less feature-rich out-of-the-box compared to Logseq
- Steeper learning curve for users new to VS Code ecosystem
- Limited mobile support and offline functionality
Code Comparison
Foam (JavaScript):
export function createMarkdownParser(config: FoamConfig): MarkdownParser {
return new MarkdownParser(config);
}
Logseq (ClojureScript):
(defn parse-markdown [content]
(let [ast (markdown/parse content)]
(parse-markdown-ast ast)))
Both projects use different programming languages, reflecting their architectural choices. Foam leverages JavaScript and the VS Code ecosystem, while Logseq uses ClojureScript for its standalone application.
Foam focuses on providing a flexible framework for note-taking within VS Code, allowing users to customize their experience through extensions. Logseq, on the other hand, offers a more comprehensive out-of-the-box solution with built-in features like bi-directional linking and graph visualization.
While Foam excels in its integration with VS Code and extensibility, Logseq provides a more polished and feature-complete experience for users seeking an all-in-one knowledge management tool.
Community plugins list, theme list, and releases of Obsidian.
Pros of Obsidian
- More polished and user-friendly interface
- Extensive plugin ecosystem with a large community
- Local-first approach with optional sync, ensuring data privacy
Cons of Obsidian
- Closed-source, limiting customization and community contributions
- Less flexible data format, primarily focused on Markdown
- Paid features for some advanced functionalities
Code Comparison
While both Logseq and Obsidian are primarily note-taking applications, their codebases differ significantly due to their architectural choices. Logseq is open-source, allowing for direct code comparison, while Obsidian's core is closed-source. However, we can compare plugin development approaches:
Logseq plugin example:
(ns logseq-plugin
(:require [logseq.api :as api]))
(defn main []
(api/register-plugin!
{:key "my-plugin"
:name "My Plugin"
:on-mounted (fn [] (println "Plugin mounted"))}))
Obsidian plugin example:
import { Plugin } from 'obsidian';
export default class MyPlugin extends Plugin {
async onload() {
console.log('Plugin loaded');
}
}
Both platforms offer extensibility, but Logseq's open-source nature allows for deeper system-level integrations, while Obsidian's plugin API provides a more structured approach for third-party developers.
The personal knowledge management (PKM) tool that grows as you do!
Pros of Dendron
- Hierarchical note structure with powerful refactoring capabilities
- Extensive schema system for enforcing consistent note organization
- Built on VS Code, leveraging its ecosystem and extensibility
Cons of Dendron
- Steeper learning curve due to complex features and VS Code integration
- Less intuitive for users seeking a simple, standalone note-taking app
- Requires more setup and configuration compared to Logseq
Code Comparison
Dendron (TypeScript):
export function createNoteLink(
note: NoteProps,
alias?: string
): string {
const fname = note.fname;
return alias ? `[[${fname}|${alias}]]` : `[[${fname}]]`;
}
Logseq (ClojureScript):
(defn create-block-link
[block-id content]
(str "[[" (or content (str "block:" block-id)) "]]"))
Both examples demonstrate link creation, but Dendron's approach is more type-safe and flexible, while Logseq's is more concise and functional.
Athens is no longer maintainted. Athens was an open-source, collaborative knowledge graph, backed by YC W21
Pros of Athens
- Built with Clojure and ClojureScript, offering a functional programming approach
- Focuses on networked thought and graph-based note-taking
- Emphasizes real-time collaboration features
Cons of Athens
- Less mature project compared to Logseq, with fewer features and extensions
- Smaller community and ecosystem
- Limited offline functionality
Code Comparison
Athens (ClojureScript):
(defn create-page [title]
(let [new-page {:title title :content ""}]
(db/transact! [new-page])))
Logseq (ClojureScript):
(defn create-page! [repo page-name]
(let [page (db/entity [:page/name (string/lower-case page-name)])]
(when-not page
(db/transact! repo [{:page/name (string/lower-case page-name)
:page/original-name page-name}]))))
Both projects use ClojureScript for their core functionality, but Logseq has a more extensive codebase and offers additional features like offline support and a plugin system. Athens focuses more on collaborative features and graph-based note-taking, while Logseq provides a broader range of functionalities for personal knowledge management. Logseq also has a larger community and more frequent updates, making it a more mature option for users seeking a stable and feature-rich tool.
Rudimentary Roam replica with Org-mode
Pros of org-roam
- Seamless integration with Emacs and org-mode ecosystem
- Highly customizable and extensible through Emacs Lisp
- Supports advanced querying and filtering of notes
Cons of org-roam
- Steeper learning curve, especially for those unfamiliar with Emacs
- Limited cross-platform compatibility compared to Logseq
- Lacks built-in graph visualization features
Code Comparison
org-roam:
(use-package org-roam
:ensure t
:custom
(org-roam-directory (file-truename "~/org-roam"))
:bind (("C-c n l" . org-roam-buffer-toggle)
("C-c n f" . org-roam-node-find)
("C-c n g" . org-roam-graph)
("C-c n i" . org-roam-node-insert)))
Logseq:
(ns logseq.graph
(:require [logseq.db :as db]
[logseq.util :as util]))
(defn build-graph [db]
(let [pages (db/get-all-pages db)]
(reduce (fn [graph page]
(assoc graph (:id page) (util/get-linked-refs page)))
{} pages)))
Both projects aim to provide networked thought and note-taking capabilities, but they differ in their approach and target audience. org-roam is deeply integrated with Emacs and offers powerful customization options for advanced users. Logseq, on the other hand, provides a more user-friendly interface and cross-platform compatibility, making it accessible to a wider audience. The code examples showcase the different languages and paradigms used in each project, with org-roam utilizing Emacs Lisp and Logseq employing ClojureScript.
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
Logseq
A privacy-first, open-source platform for knowledge management and collaboration
Table of Contents
ð¤ Why Logseq?ð How can I use it?ð Learn more- 𫶠Support Logseq Development
ð¡ Feature requestsð Plugin APIð Contributing to Logseq⨠Inspirationð Thank You
ð¤ Why Logseq?
Logseq is a knowledge management and collaboration platform. It focuses on privacy, longevity, and user control. Logseq offers a range of powerful tools for knowledge management, collaboration, PDF annotation, and task management with support for multiple file formats, including Markdown and Org-mode, and various features for organizing and structuring your notes.
Logseq's Whiteboard feature lets you organize your knowledge and ideas using a spatial canvas with shapes, drawings, website embeds, and connectors. You can visually group and link your notes and external media (such as videos and images), enabling visual thinkers to compose, remix, annotate, and connect content from their knowledge base and emerging thoughts in a new way.
In addition to its core features, Logseq has a growing ecosystem of plugins and themes that enable a wide range of workflows and customization options. Mobile apps are also available, providing access to most of the features of the desktop application. Whether you're a student, a professional, or anyone who values a clear and organized approach to managing your ideas and notes, Logseq is an excellent choice for anyone looking to improve their productivity and streamline their workflow.
ð How can I use it?
To start using Logseq, follow these simple steps:
- Download the latest version of Logseq
- Install Logseq on your device and launch the application
- Start writing âï¸
That's it! You can now enjoy the benefits of using Logseq to streamline your workflow, manage your projects, and stay on top of your goals. Have fun! ð
ð Learn more
- Website: logseq.com
- Documentation: docs.logseq.com
- FAQ page: Logseq Docs: FAQ
- Blog: blog.logseq.com
- Please visit our About page for the latest updates.
- Logseq Hub: hub.logseq.com
- Forum: discuss.logseq.com - Where we answer questions, discuss workflows, and share tips
- FAQ forum section: Logseq Forum: FAQ
- Awesome Logseq - Awesome Logseq extensions and resources created by the community <3
- Twitter: @Logseq
- Discord: discord.gg/logseq
𫶠Support Logseq Development
If you find Logseq useful and want to help us keep the project growing, please consider supporting our contributors on Open Collective. Your support shows our contributors that their efforts are appreciated and motivates them to continue their excellent work. Every contribution, no matter how small, helps us keep improving Logseq.
ð¡ Feature requests
We value your input on improving Logseq and making it more useful for you. If you have any ideas or feature requests, please share them in the Logseq Forum: Feature Requests section.
Your feedback helps us understand our users' needs and prioritize the features that matter most to you. We appreciate your time and effort in sharing your thoughts with us.
We appreciate your support, and we look forward to hearing your ideas!
ð Plugin API
Logseq provides a plugin API that enables developers to create custom plugins and extend the functionality of Logseq. The plugin API documentation is available at plugins-doc.logseq.com, where you can find everything needed to get started with plugin development.
We value your feedback and suggestions on how to improve our documentation. Please do not hesitate to contact us with any comments or questions. Your input helps us to provide a better experience for our users and developers.
Thank you for using Logseq, and we look forward to seeing what you create with our plugin API!
ð Contributing to Logseq
To start contributing to Logseq, please read CONTRIBUTING.md. There are ways to contribute with code and without code. We welcome all contributions, big or small, and we appreciate your time and effort in helping us improve Logseq. We look forward to your contributions ð
ð ï¸ Setting Up a Development Environment
If you want to set up a development environment for the Logseq web or desktop app, please refer to the Develop Logseq guide for macOS/Linux users and the Develop Logseq on Windows guide for Windows users.
In addition to these guides, you can also find other helpful resources in the docs/ folder, such as the Guide for Contributing to Translations, the Docker Web App Guide and the mobile development guide
⨠Inspiration
Logseq is inspired by several unique tools and projects, including Roam Research, Org Mode, TiddlyWiki, Workflowy, and Cuekeeper.
We owe a huge debt of gratitude to the developers and creators of these projects, and we hope that Logseq can continue to build on their innovative ideas and make them accessible to a broader audience.
Thank you to all those who inspire us, and we look forward to seeing what the Logseq community will create with this tool!
Logseq is also made possible by the following projects:
- Clojure & ClojureScript - A dynamic, functional, general-purpose programming language
- DataScript - An immutable database and Datalog query-engine for Clojure, ClojureScript and JS
- OCaml & Angstrom, for the document parser mldoc
- isomorphic-git - A pure JavaScript implementation of Git for NodeJS and web browsers
- SCI - A Small Clojure Interpreter
ð Thank You
We want to express our sincere gratitude to our Open Collective sponsors, backers, and contributors. Your support and contributions allow us to continue developing and improving Logseq. Thank you for being a part of our community and helping us make Logseq the best it can be!
ð Sponsors
ð Contributors
𫶠Backers
Top Related Projects
A personal knowledge management and sharing system for VSCode
Community plugins list, theme list, and releases of Obsidian.
The personal knowledge management (PKM) tool that grows as you do!
Athens is no longer maintainted. Athens was an open-source, collaborative knowledge graph, backed by YC W21
Rudimentary Roam replica with Org-mode
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot