The Markdown-based note-taking app that doesn't suck.




Download button

I couldn't find a note-taking app that ticked all the boxes I'm interested in: notes are written and rendered in GitHub Flavored Markdown, no WYSIWYG, no proprietary formats, I can run a search & replace across all notes, notes support attachments, the app isn't bloated, the app has a pretty interface, tags are indefinitely nestable and can import Evernote notes (because that's what I was using before).

So I built my own.


Click to Enlarge

Part of this comparison is personal opinion: you may disagree on the UI front, things I consider bloat may be considered features by somebody else etc. but hopefully this comparison did a good job at illustrating the main differences.



Notes are written in GitHub Flavored Markdown, and you can also write KaTeX expressions, Mermaid diagrams and so much more, check out our full Markdown cheatsheet.

Notable also gives you a very powerful Markdown editor, it's the same one VS Code uses in fact, so features like multi-cursors, a minimap and best-in-class syntax highlighting are built-in.


No Vendor Lock-In

Notes and attachments are simply stored on your disk, this is extremely portable and powerful: you could edit your notes with your favorite editor, have them synchronized via Dropbox, run Git on them, run a regex-based search and replace on them etc.


Dark Theme

A dark theme is also available. In the future support for custom themes will be added as well.

If you'd like to change a color or hide a button you are also free to do that via the Devtools.

Dark Theme

Zen Mode

Zen mode provides a minimalistic editing and reading experience, hiding everything that's not necessary.

Notable is also keyboard friendly, has a quick open window, and we'll soon add a command palette too, so you won't have to click any buttons if you don't want to.

Zen Mode

Multi-Note Editor

A multi-note editor is available for quickly running an action, like favoriting, pinning, deleting, tagging etc., on multiple notes at once.

If you need to run a more complex action on your notes remember that they are just file stored on your disk so you can do whatever you want with them.

Multi-Note Editor

Split Editor

A split-editor is available for quickly checking out how your note will be rendered while you're editing it.

Split Editor

More Features

A lot more features are implemented, some of the most important ones are listed here.

Is a feature you care about currently missing? Make sure to browse the issue tracker and add your " 👍 " reaction to the issues you care most about, as we also use those reactions to prioritize issues.


There are multiple ways to contribute to this project, read about them here.

Useful Links

  • Chat: we have a public real-time chat, come join us there.
  • Cheatsheet: the online version of our built-in Markdown cheatsheet.
  • Customizations: collection of community-created customizations and tips.
  • Donations: you can financially support the project via this GitHub Sponsorship page.
  • Insiders: alpha/beta releases are published here.
  • Subreddit: we have a subreddit, where day-to-day discussion happens.
  • Tutorial: the online version of our built-in tutorial.
  • Twitter: we have a Twitter account, where tips and general updates are posted.
  • Website: our official website, this is probably the best link to send to friends and colleagues.
  • YouTube: we have a YouTube channel, where all videos are hosted.


Only older versions of the app are open-sourced, read more about this here.

  • Notable's Future

    Notable's Future

    The community's response to this project has been amazing, all supportive comments and suggestions have blown me away, I'd like to thank you all for this and write a few lines about what Notable's future could look like.

    I think the goal we should strive for is having the best possible note-taking experience, on any platform and any device, while still remaining true to the reasons why I wrote Notable in the first place, basically your notes will never be locked into a walled garden and the app is never going to become something I won't personally like and use.

    In order to achieve that we have to develop internationalized (#126) web app (#83), mobile apps (#23), have a rich plugin ecosystem (#128) and tackle all the issues and good feature suggestions you guys raised. As you can imagine all that requires considerable developer time.

    I already spent more than a month working on this full-time, and I obviously need to make a living too. The only way we can afford one or multiple people working full-time on this is if Notable becomes profitable, the alternative is simply greatly slowing down development.

    I'm going to explore what acceptable ways are out there to fund the development, perhaps I could develop some powerful business-oriented and task-oriented features and sell support to companies. I'd be glad to hear your thoughts and suggestions on this.

    Notable is here to stay.

    opened by fabiospampinato 57
  • Add attachments via copy/paste

    Add attachments via copy/paste

    It would be really helpful if pressing paste button when there is a image in the clipboard would:

    1. Automatically attach this image to the note
    2. Paste in Markdown text for displaying that attachment inline

    As extra bonus, same behavior could be added for drag-dropping images into editor.

    Basically, similar to how Github handles copy pasting images.

    opened by matejdro 41
  • Update #2 - Relicensing and open-source

    Update #2 - Relicensing and open-source

    As stated previously I've committed to allocate a large portion of my time to improve Notable and trying to make it profitable.

    Obviously I can't spend 1 year or more of my time on this with the risk that somebody could just make a competing commercial product out of Notable's source, so there are a few updates I'd like to announce:

    • First of all I moved the repo under the "Notable" GitHub organization, this is where other Notable-related repos will be published (official plugins etc.) also. Thank you @akoenig for this! (He was the previous owner of the organization)

    • The code under the main repo (this one) has been relicensed under the AGPL license, it's a bit more restrictive than the previous MIT license, the tl;dr is that if you're modifying the app it's totally cool, but you must share the full code back under the same license.

    • Other Notable-related repositories will be licensed under the more permissive MIT license instead.

    • You'll be asked to accept a CLA (Contributor License Agreement) when submitting PRs, basically it's just some legalese stating that you own the code you're submitting and you're giving me the rights to use it, you can read (and accept) the full thing here. I'd ask the following previous contributors to accept it please: @tylerdiaz @umgupta @mnikn @mikaelmello @lianghongzhuo @sosukesuzuki @RomanKornev. Most of the contributions you guys submitted have been kind of rewritten already, but it'd be helpful if you still accepted the CLA.

    Right now Notable is 100% open-source, but going forward things will be developed this way:

    • Up until I'll be ready to make a PWA #83 out of Notable (subscription-based, but you won't be forced to use it) and add a plugin architecture #128 to it, development will continue in this repository, and all commits will be shared as usual, just under the AGPL license this time.

    • Once I'll be ready to develop those major features I won't probably share back the core code, but instead I'll split most of the current functionalities into open-source plugins. The server-side code won't be open-sourced. This repository will remain the main issue tracker.

    • Once the subscription-based service I plan to develop is up and running I'll consider open-sourcing the core application code too, but the server-side code and maybe some "premium" features will still remain closed-source.

    Hopefully this is good news for pretty much everybody, as this basically means I'm committed to make Notable great. This may disappoint those of you who would like everything to be open-sourced under a permissive license, but in order for me to allocate a large portion of my time on this I need to make it less risky, I hope you guys will understand.

    That's all for today, thanks for reading till the end!

    opened by fabiospampinato 38
  • Notes are irregularly corrupted when changing in edit mode

    Notes are irregularly corrupted when changing in edit mode

    • OS Version: Ubuntu 16.04
    • Notable Version: v1.4.0

    Current behavior

    When in edit mode, if your current note has an unsaved changed title (1), when you click on another note (2), it might overwrite Note 1 with the contents of Note 2.

    It happened yesterday and now today. After multiple tries I managed to reproduce by quickly adding a lot of text (pasting lorem ipsum multiple times) and clicking in the other note. It rarely happens though, making it very hard to reproduce.

    Expected behavior

    Not lose note's contents. I'm very sad to lose important work twice now.

    This has actually happened three times:

    1. Big essay with a project proposal, it got corrupted and untagged, I was able to recover it from Google Drive
    2. 2 hours worth of notes from an important class. At this time I thought it was a problem with syncing and bad connection, decided to only use local files
    3. ~1 hour worth of notes from another class.

    Unfortunately I'm going to have to halt my use of Notable because I'm afraid of losing even more work.

    opened by mikaelmello 34
  • Triple-pasting from clipboard

    Triple-pasting from clipboard

    • OS Version: MacOS 10.14.4 (18E226)
    • Notable Version: 1.7.2

    Current behavior

    My clipboard has the string "test" stored. When I CMD+V or right click>paste, it inserts the string "testtesttest" in any document of notable.

    Expected behavior

    Inserting string "test"


    It works fine in other applications (e.g. Firefox, Finder, ...). It does not matter if copied from within Notable or another application (text only). Sometimes restarting the app resolves the problem temporarily.

    bug help wanted 
    opened by thisfro 33
  • WikiLink syntax support

    WikiLink syntax support

    Would it be possible to add WikiLink support (i.e.[[Description|Link to Note]]) to Notable?
    Here's a great essay on why it's a great feature, would love it if you could add this:

    enhancement help wanted 
    opened by lukaskawerau 33
  • LaTeX support.

    LaTeX support.

    opened by chyyran 32
  • Too high CPU usage at idle.

    Too high CPU usage at idle.

    • macOS 10.14.6
    • 1.7.3

    Current behavior

    Notable Helper consumes too much CPU cycles and battery when it is in idle state. (8% ~ 10%)

    스크린샷 2019-09-25 오후 7 45 37

    Expected behavior

    Chrome uses under 1% CPU when it is at idle (single tab, Notable should be similar to this.

    스크린샷 2019-09-25 오후 7 49 05 bug 
    opened by Pusnow 26
  • New notes are duplicates of currently open note

    New notes are duplicates of currently open note

    • OS Version: Ubuntu 18.04
    • Notable Version: 1.3.0

    Current behavior

    Just open a note and click on the "add" button. I don't know when exactly this happens, but I've already restarted the app.

    Expected behavior

    A new note will be added, but the edit screen will still be the previous one. With this, the new "Untitled" file syncs with the currently open file and it will have its contents and name.

    opened by YohananDiamond 25
  • renderer doesn't compile

    renderer doesn't compile

    This is a DUP of Issue #6 which is marked closed, but I have verified that it's still a problem. Any ideas?

    Mac OS X 10.14

    $ npm run svelto:dev
    > [email protected] svelto:dev /Users/dps/notable
    > svelto build --env development

    followed by

    $ npm run dev

    produces the error:

      ERROR in ./src/renderer/render.tsx
      Module not found: Error: Can't resolve '@static/css/notable.min.css' in '/Users/dps/notable/src/renderer'
       @ ./src/renderer/render.tsx 37:0-37
       @ ./src/renderer/index.ts
       @ multi (webpack)-dev-server/client?http://localhost:9080 (webpack)/hot/dev-server.js css-hot-loader/hotModuleReplacement ./src/renderer/index.ts
      ERROR in ./src/renderer/render.tsx
      Module not found: Error: Can't resolve '@static/javascript/notable.min.js' in '/Users/dps/notable/src/renderer'
       @ ./src/renderer/render.tsx 38:0-43
       @ ./src/renderer/index.ts
       @ multi (webpack)-dev-server/client?http://localhost:9080 (webpack)/hot/dev-server.js css-hot-loader/hotModuleReplacement ./src/renderer/index.ts
    opened by dps 23
  • Make sure v1.5.1 can still be built from source

    Make sure v1.5.1 can still be built from source


    opened by fabiospampinato 0
  • View > Toggle ... menu items don't have checkmark next to them when toggled ON

    View > Toggle ... menu items don't have checkmark next to them when toggled ON

    • OS Version: Win 1021H1
    • Notable Version: 1.8.4

    Current behavior

    View > Toggle ... menu items don't have checkmark next to them when toggled ON, apart from View > Toggle Menu Bar.

    All the other menu items work, in that they do toggle whatever they're toggling, but no checkmark is shown next to the menu item.

    Expected behavior

    When a View > Toggle ... menu item is toggled ON, there should be a checkmark next to the menu item, like there is with View > Toggle Menu Bar.

    opened by Clouds123 0
  • [REQ] Create folder hierarchy of notes

    [REQ] Create folder hierarchy of notes

    Great app!

    To better organise notes, it would be useful if you could create folders under the list of notes, and re-organize the notes (eg. Drag 'n Drop) into the folders. For example,

    Base Note 1
    Base Note 2
    Folder 1
       Folder 1 Note 1
       Sub-folder 1
          Sub-folder Note 1
       Folder 1 Note 2
       Folder 1 Note 3
    Base Note 3
    Folder 2
       Folder 2 Note 1

    It should be possible to have them in any order, but on the file-system, you just create folders, sub-folders as normal.

    I know you can tag notes, but this allows for further organization, and should be relatively simple to implement, given that notes are just files in the Notes Data Folder/Directory.

    opened by Clouds123 3
  • Save per-note language setting in YAML header

    Save per-note language setting in YAML header

    Feature description

    Save language in YAML header as lang: sv-SE, or at least use and update it if it exists.

    Feature motivation

    Allows seamless interoperability with other markdown processors as pandoc.

    opened by bluebirch 0
  • Duplicate titles lead to incorrect links

    Duplicate titles lead to incorrect links

    • OS Version: Ubuntu 20.10
    • Notable Version: 1.9.0-beta1

    Current behavior

    Create a new note and type 'my title' as the title. Create a second new note and type 'my title' as the title. 2 notes are created, one saved under my and one under my title (2).md. Right click the note and select "Copy Link" or "Copy Markdown Link"

    Both notes will create links that point to the original note. The second note with the duplicate title exists in the database and can be modified, etc. but a link request will silently provide the wrong link.

    Expected behavior

    The "Copy Link" and "Copy Markdown Link" should create links that link to the second note, not the first one.

    opened by nsheff 0
  • high ligth search & focus

    high ligth search & focus

    When I have a log large file. The search function is not useful in the current version. Hope search can be highlighted, focus and next.

    opened by montanoh 0
  • Sidebar


    If the sidebar was similar to the Outline app sidebar, it would be easy to manage the notebooks. Icons color is important as well, because makes it easy to categorize the notes. I hope you will add something like the Outline for the next versions.


    opened by AgroMet 0
  • Error report: Cannot read property 'source-url' of undefined

    Error report: Cannot read property 'source-url' of undefined

    • OS Version: win32 10.0.19042
    • Notable Version: v1.8.4
    TypeError: Cannot read property 'source-url' of undefined
        at EnexNote.getMetadata (file:///D:/Software/Notable/resources/app.asar/renderer/chunk.801f2cae377ea1944a34.js:2:185842)
        at async EnexNote.get (file:///D:/Software/Notable/resources/app.asar/renderer/chunk.801f2cae377ea1944a34.js:2:3578)
        at async EnexProvider.dump (file:///D:/Software/Notable/resources/app.asar/renderer/chunk.801f2cae377ea1944a34.js:2:3469)
        at async Object.dump (file:///D:/Software/Notable/resources/app.asar/renderer/chunk.801f2cae377ea1944a34.js:2:201681)
        at async import_Import.import (file:///D:/Software/Notable/resources/app.asar/renderer/renderer.js:2:24287)
    opened by kevinli-git 0
  • Cannot create Entity Relationship diagrams using mermaid.js syntax.

    Cannot create Entity Relationship diagrams using mermaid.js syntax.

    • OS Version: Mac OS Catalina (10.15.7)
    • Notable Version: 1.8.4 (currently the latest version)

    Current behavior

    Start a new diagram and copy one of the examples from the Mermaid site into a fenced block, e.g.

            CUSTOMER ||--o{ ORDER : places
            ORDER ||--|{ LINE-ITEM : contains
            CUSTOMER }|..|{ DELIVERY-ADDRESS : uses

    Expected behavior

    In split view mode, I expected to see a diagram on the view half. Instead I see the following error message (in red):

    [mermaid error: Parse error on line 1: erDiagram CUSTOM ^ Expecting 'NEWLINE', 'SPACE', 'GRAPH', got 'ALPHA'] I have tried fooling around with the spacing, tabs vs spaces, etc. But can't find any combination that works.

    opened by cnk 0
  • Rendering issue with mermaid (cropped)

    Rendering issue with mermaid (cropped)

    • MacOS: 11.5.2 (20G95)
    • 1.9.0-beta.1

    As visible in the image below, the right part of the output is cropped.


    Code to reproduce the diagrams:

          "nodeSpacing": 150,
          "nodeRadius": 5
      branch feature
      checkout feature
      checkout master


          "nodeSpacing": 150,
          "nodeRadius": 5
      branch feature
      checkout feature
      checkout master
      merge feature
    opened by emadpres 0
The Markdown-based note-taking app that doesn't suck.
Parse data and test fixtures from markdown files, and patch them programmatically, too.

go-testmark Do you need test fixtures and example data for your project, in a language agnostic way? Do you want it to be easy to combine with documen

Eric Myhre 7 Oct 7, 2021
A markdown renderer package for the terminal

go-term-markdown go-term-markdown is a go package implementing a Markdown renderer for the terminal. Note: Markdown being originally designed to rende

Michael Muré 219 Oct 19, 2021
The Markdown-based note-taking app that doesn't suck.

Notable I couldn't find a note-taking app that ticked all the boxes I'm interested in: notes are written and rendered in GitHub Flavored Markdown, no

Notable 18.6k Oct 22, 2021
Mmark: a powerful markdown processor in Go geared towards the IETF

title date aliases About 2018-07-22 14:05:51 +0100 /about/ Mmark is a powerful markdown processor written in Go, geared towards writing IETF documents

Mmarkdown 345 Oct 9, 2021
Blackfriday: a markdown processor for Go

Blackfriday Blackfriday is a Markdown processor implemented in Go. It is paranoid about its input (so you can safely feed it user-supplied data), it i

Russ Ross 4.8k Oct 22, 2021
network .md into .html with plaintext files

plain network markdown files into html with plaintext files plain is a static-site generator operating on plaintext files containing a small set of co

Alexander Cobleigh 43 Oct 17, 2021
Glow is a terminal based markdown reader designed from the ground up to bring out the beauty—and power—of the CLI.💅🏻

Glow Render markdown on the CLI, with pizzazz! What is it? Glow is a terminal based markdown reader designed from the ground up to bring out the beaut

Charm 7.2k Oct 23, 2021
A general purpose syntax highlighter in pure Go

Chroma — A general purpose syntax highlighter in pure Go NOTE: As Chroma has just been released, its API is still in flux. That said, the high-level i

Alec Thomas 2.9k Oct 17, 2021
Markdown Powered Graph API

What is Arachne? Arachne, (Greek: “Spider”) in [[greek/mythology]], the [[Arachne:daughter of:Idmon of Colophon]] in Lydia, a dyer in purple. Arachne

Jesus Moreno 6 Jul 11, 2021
A CLI markdown converter written in Go.

MDConv is a markdown converter written in Go. It is able to create PDF and HTML files from Markdown without using LaTeX. Instead MDConv u

null 33 Oct 11, 2021
Hugo-to-Gemini Markdown converter

Hugo-to-Gemini converter This repo holds a converter of Hugo Markdown posts to text/gemini (also named Gemtext in this README). The converter is suppo

Timur Demin 4 Oct 3, 2021
Automation Tool to auto generate markdown notes from online classes/talks/presentations.

autonotes Automation tool to autocapture screenshots and join them with a supplied .srt or .txt file and output a notes file in markdown. Problem? Wat

Marcos Soares 3 Aug 29, 2021
🚩 TOC, zero configuration table of content generator for Markdown files, create table of contents from any Markdown file with ease.

toc toc TOC, table of content generator for Markdown files Table of Contents Table of Contents Usage Installation Packages Arch Linux Homebrew Docker

Yagiz Degirmenci 71 Sep 15, 2021
pdf document generation library

gopdf 项目介绍 gopdf 是一个生成 PDF 文档的 Golang 库. 主要有以下的特点: 支持 Unicode 字符 (包括中文, 日语, 朝鲜语, 等等.) 文档内容的自动定位与分页, 减少用户的工作量. 支持图片插入, 支持多种图片格式, PNG, BMP, JPEG, WEBP,

quinn 75 Sep 6, 2021
Schedule daily tweets from markdown files in your repo, posted via github actions.

markdown-tweet-scheduler Schedule daily tweets from markdown files in your repo, posted to twitter via github actions. Setup Fork this repo Get your t

reid j sherman 48 Oct 11, 2021
gomtch - find text even if it doesn't want to be found

gomtch - find text even if it doesn't want to be found Do your users have clever ways to hide some terms from you? Sometimes it is hard to find forbid

Nicolas Augusto Sassi 26 Aug 11, 2021
Simple HCL (HashiCorp Configuration Language) parser for your vars.

HCL to Markdown About To write a good documentation for terraform module, quite often we just need to print all our input variables as a fancy table.

Dmytro Shamenko 14 Sep 16, 2021
Pagser is a simple, extensible, configurable parse and deserialize html page to struct based on goquery and struct tags for golang crawler

Pagser Pagser inspired by page parser。 Pagser is a simple, extensible, configurable parse and deserialize html page to struct based on goquery and str

foolin 40 Sep 19, 2021
Stylesheet-based markdown rendering for your CLI apps 💇🏻‍♀️

Glamour Write handsome command-line tools with Glamour. glamour lets you render markdown documents & templates on ANSI compatible terminals. You can c

Charm 671 Oct 19, 2021