Get started

Have you ever needed a more effective way to organize your notes while keeping important details and connections? IWE is here to assist you.

IWE is an open-source, local-first, markdown-based note-taking tool that serves as a personal knowledge management (PKM) solution designed for developers.

IWE organizes your Markdown notes by treating them as a graph, where each document is a sub-tree and the links serve as the edges connecting them. It works at a semantic level, comprehending the structure defined by headers, lists, and links, and offers various tools to help you efficiently navigate and restructure the graph. IWE allows you to organize notes hierarchically using Map of Content (MOC) pages directly within your favorite editor.

IWE integrates seamlessly with popular developer text editors such as VSCode, Neovim, Zed, Helix, and others through the Language Server Protocol (LSP).

Supercharge your note-taking workflow

IWE works as an extension (LSP) for your favorite text editor and provides essential features for notes management, such as:

  • 🔍 Search through your notes
  • 🧭 Navigate through markdown links
  • 📃 Templates for automated documents creation
  • Auto-complete links as you type
  • 📥 Extract or inline sub-notes seamlessly
  • 📝 Format the document and update link titles automatically
  • 🔄 Rename files and automatically update all the links
  • 🔗 Search for backlinks to find references to the current document
  • 💡 Display inlay hints with parent note references and link counts
  • 🤖 Generate or Modify text using custom AI commands
  • 🔹 Change outline type from headers to list and vice-versa

Notes Search

IWE keeps the index of all your notes and allows searching for notes using the Workspace Symbols LSP command.

Search demo

Auto-formatting

IWE offers auto-formatting, which typically kicks in when you save your file with Format LSP feature. This helps tidy things up. Here’s what it can do for you:

  • Updating link titles to the header of the linked document.
  • Adjusting header levels to ensure tree structure.
  • Updating the numbering of the ordered lists.
  • Fixing newlines, indentations in lists, and much more.
Auto-format demo

Graph transformations

IWE supports Extract/Embed note graph transformations, allowing you to split complex documents into smaller, more manageable files. You can do this using the Code Actions LSP menu in your editor while your cursor is on a header.

Extract note demo

CLI Features

IWE also provides a powerful CLI utility that allows you to process thousands of documents in just a second. With IWE, you can reformat documents and update link titles across your entire library. Additionally, you can use the CLI mode to combine multiple files into one comprehensive document and export your note structure as a graph in DOT format for visualization.

The main CLI features include:

  • 🏗️ Initialize workspace with init command
  • 🗒️ Normalize documents and update link titles automatically
  • 🔍 List paths of all markdown files in the workspace
  • 📋 Extract contents from specific notes and sections
  • 🔗 Squash multiple files into one comprehensive document
  • 📊 Export note structure as DOT graph for visualization
  • 🎯 Filter exports by key to focus on specific topics

Try it!

Please see the quick start section for setup instructions.