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

Notable  

Notable

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.

Comparison

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.

Features

Markdown-based

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.

Editor

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.

Filesystem

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.

Contributing

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.

License

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

Owner
Notable
The Markdown-based note-taking app that doesn't suck.
Notable
Comments
  • 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.

  • 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.

  • 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!

  • 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.

  • 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"

    Notes

    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.

  • 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: https://medium.com/@timkingwriter/welcome-to-the-note-taking-apocalypse-64a74481a5ab

  • LaTeX support.

    LaTeX support.

  • 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, google.com). Notable should be similar to this.

    스크린샷 2019-09-25 오후 7 49 05
  • 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.

  • 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
    
  • Is it possible to support image in relative path style

    Is it possible to support image in relative path style

    In Notable using images with the format [](@attachment/avatar.jpg) which causes the third MD editor such as Typora cannot recognize the image. Is it possible to support image in relative path style as [](../attachments/avatar.jpg)?

  • Editor changes in 1.9.0-beta.10?

    Editor changes in 1.9.0-beta.10?

    I've noticed that in 1.8.4, triple quotes (```) automatically completed with a closing pair. This was extremely helpful if I needed to insert a lot of code snippets with copy-paste. 1.9.0-beta.10 do the same for double quotes (was not done in 1.8.4), but doesn't complements triple quotes any more. Brackets (){}[] are complemented in both versions.

    • Is this an expected behaviour?
    • Is this configurable somewhere?
    • Is there any documantation what is complemented in the editor?
    • can we get aut-complete for triple quotes back in 1.9.x?

    Otherwise I love the multiple windows feature of 1.9.

  • Not the active window is updated if using the menu actions on MacOS

    Not the active window is updated if using the menu actions on MacOS

    • OS Version: MacOS 12.5.1 (21G83) - Intel
    • Notable Version: 1.9.0-beta.10

    Current behavior

    If I have multiple windows opened, and select a menu action, the action does not apply to the active window of Notable, but it gets aplied to the one that I was actually using. So it is not enough to select a window, and then a menu item, but I need to do some interaction within that window that triggers some action first.

    I have observed this behaviour with these menu actions:

    • Notable/Data Directory/Change... (however, if I use the shourtcut key, that correctly refreshes the active window)
    • Help/* (anything that opens internally in Notable)
    • Help/Toggle Developer Tools
    • Window/Opacity

    Expected behavior

    I would expect that menu actions would affect the selected Notable window.

  • The tag menu should close after a tag is assigned

    The tag menu should close after a tag is assigned

    Feature description

    Quite a simple change, but I was bothered by its absence : the context menu that is used to assign a tag to a note should close when a tag is first assigned. If the note already has a tag, then it should not close automatically, as it would be assumed you may tag it multiple times.

    Feature motivation

    I feel like most users tag most of their notes once, and so this tiny, simple change could help with the flow of the app somewhat.

  • Inline images within headers

    Inline images within headers

    Feature description

    So using the standardized (![AltText](path/to/file.png)) syntax, it is possible to load and preview images, as well as doing so within a line, as to make the image loaded surrounded by text. Except, this is not possible in conjunction with headers (#).

    Feature motivation

    As I thought of decorating my headers with an icon, I realised this was in fact not possible : you either get a header, or an image, but they cannot be on the same line. I think it would be neat if we were able to do this; perhaps through a custom emoji if this change were to require too many modifications?

  • Can not navigate via Table of Contents

    Can not navigate via Table of Contents

    Notable version: Version 1.9.0-beta.10 / Windows

    Bug: Can not navigate via Table of Contents

    image

    Feature request

    1. Can we add line No. in code section (e.g. python/C++ code) of markdown?
    2. How about add ability to do code section fold, just like vscode?
Markdown - Markdown converter for golang

markdown ?? Talks ?? Join ?? Youtube ❤️ Sponsor Install via nami nami install ma

Jun 2, 2022
Mdfmt - A Markdown formatter that follow the CommonMark. Like gofmt, but for Markdown

Introduction A Markdown formatter that follow the CommonMark. Like gofmt, but fo

Dec 18, 2022
Note - A text editor for the Linux Terminal! (Mainly compatible with Arch, because I made it on there)
Note - A text editor for the Linux Terminal! (Mainly compatible with Arch, because I made it on there)

Note - A text editor for the Linux Terminal! (Mainly compatible with Arch, because I made it on there)

Dec 7, 2022
Markdown to Webpage app

mark2web Markdown to webpage link Usage $ mark2web test.md https://mark2web.test/aa32d8f230ef9d44c3a7acb55b572c8599502701 $ mark2web /tmp/session/test

Apr 18, 2021
Stylesheet-based markdown rendering for your CLI apps 💇🏻‍♀️
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

Jan 1, 2023
Glow is a terminal based markdown reader designed from the ground up to bring out the beauty—and power—of the CLI.💅🏻
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

Dec 30, 2022
Generate markdown formatted sprint updates based on the Jira tickets were involved in the given sprint.

Generate markdown formatted sprint updates based on the Jira tickets were involved in the given sprint.

Nov 15, 2021
Effortless customization for markdown-based SvelteKit blogs!

reece Effortless customization for markdown-based SvelteKit blogs! Installation Install using: One-Script Installation (Linux): curl -sfL https://gith

Dec 11, 2021
A terminal based preview tool for markdown 🍪
A terminal based preview tool for markdown 🍪

Smooth Smooth is a terminal based preview tool for markdown. Features Turning: turn next/previous slide Scroll: scroll up/down slide Search: search wo

May 22, 2022
A clean, Markdown-based publishing platform made for writers. Write together, and build a community.
A clean, Markdown-based publishing platform made for writers. Write together, and build a community.

WriteFreely is a clean, minimalist publishing platform made for writers. Start a blog, share knowledge within your organization, or build a community

Jan 4, 2023
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

Jan 8, 2023
⚙️ Convert HTML to Markdown. Even works with entire websites and can be extended through rules.
⚙️ Convert HTML to Markdown. Even works with entire websites and can be extended through rules.

html-to-markdown Convert HTML into Markdown with Go. It is using an HTML Parser to avoid the use of regexp as much as possible. That should prevent so

Jan 6, 2023
Produces a set of tags from given source. Source can be either an HTML page, Markdown document or a plain text. Supports English, Russian, Chinese, Hindi, Spanish, Arabic, Japanese, German, Hebrew, French and Korean languages.
Produces a set of tags from given source. Source can be either an HTML page, Markdown document or a plain text. Supports English, Russian, Chinese, Hindi, Spanish, Arabic, Japanese, German, Hebrew, French and Korean languages.

Tagify Gets STDIN, file or HTTP address as an input and returns a list of most popular words ordered by popularity as an output. More info about what

Dec 19, 2022
Upskirt markdown library bindings for Go

Goskirt Package goskirt provides Go-bindings for the excellent Sundown Markdown parser. (F/K/A Upskirt). To use goskirt, create a new Goskirt-value wi

Oct 23, 2022
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

Dec 20, 2022
A markdown renderer package for the terminal
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

Nov 25, 2022
A markdown parser written in Go. Easy to extend, standard(CommonMark) compliant, well structured.

goldmark A Markdown parser written in Go. Easy to extend, standards-compliant, well-structured. goldmark is compliant with CommonMark 0.29. Motivation

Dec 29, 2022
:triangular_ruler:gofmtmd formats go source code block in Markdown. detects fenced code & formats code using gofmt.
:triangular_ruler:gofmtmd formats go source code block in Markdown. detects fenced code & formats code using gofmt.

gofmtmd gofmtmd formats go source code block in Markdown. detects fenced code & formats code using gofmt. Installation $ go get github.com/po3rin/gofm

Oct 31, 2022
Convert Microsoft Word Document to Markdown
Convert Microsoft Word Document to Markdown

docx2md Convert Microsoft Word Document to Markdown Usage $ docx2md NewDocument.docx Installation $ go get github.com/mattn/docx2md Supported Styles

Jan 4, 2023