Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
A fully open-source and end-to-end encrypted note taking alternative to Evernote (github.com/streetwriters)
169 points by quyleanh on Sept 4, 2022 | hide | past | favorite | 109 comments


Unless I'm missing something very obvious, the source repository https://github.com/streetwriters/notesnook only includes the client apps and not the server, and the parent organization "streetwriters" doesn't seem to have any other repositories for the server. How are you supposed to run your own instance without that?

There's also a lot of marketing-speak in the repository documentation and little to no documentation on how to actually deploy it. Overall this leaves a pretty bad taste in my mouth.

Compare this for example to Bookstack, which gets right to the point for how to install and deploy, with no marketing nonsense. https://github.com/BookStackApp/BookStack


https://notesnook.com/roadmap/

>September onwards

>Open source sync server + self hosting


Then I guess after september they can call it "fully open source". For now, it's closed source with an open source client.


What reason is there for not pushing the server to GitHub now?


I can think of a few:

* not ready * in technical review * in legal review (can all code be published under an OS license?) * in security review * missing documentation

I’m sure there’s plenty of other possible reasons. They seem to have a roadmap that they want to follow, so that implies they have thought about what they need in place to open source the components.


Flagged the submission for misleading title.


I have moved on to a plaintext lifestyle that isn't tied to any tooling. If I have to protect/encrypt the content, I will look at doing that at the container -- such as a Vault.

Tools such as Obsidian[1] are a good option for me, as I can use it as that -- a tool and not worry about the content being tied to any platform - open or otherwise. For your Vault protection, tools such as the Cryptomator[2] works well.

I reason that tools will come and go. Even for many open source ones, I had my experience of being unable to rebuild/recompile because of the outdated libraries, unmaintained code, etc. The world moves on, real fast. Plain text is and will still work in the future. I'm also OK, spicing it up a bit with MarkDown, which still can maintain human readability even if the reader doesn't know what Markdowns are.

I'm not against using tooling in a group/team, where the tooling plays a good role in making the experience smooth. I would also definitely love to pay for tools that helps the team improve and save time and frustrations.

Best of luck to your product, and I hope it serves the use cases of others who need it.

1. https://obsidian.md

2. https://cryptomator.org


Similar here. For personal use, I don't bother with the extra hassle of wiki software, but just maintain Markdown files in my `~/wiki/` directory.

For example, my notes about Stable Fusion are in `~/wiki/stable-fusion.md`.

Since I have my Emacs Markdown mode tweaked to be semi-WYSIWYG, the only downside is that links between pages is a little messier than if I used wiki software. (I might tweak Emacs a bit more, to have link text in square brackets navigate to the right filename.)

Someday, these files might end up in wiki software, but I'm in no hurry, and I'm capturing and accessing the info now.


Could you elaborate more on your Emacs Markdown tweaks? It sounds very interesting!


Face tweaks alone make it a lot more pleasant. For a live table-of-contents sidebar you can toggle on and off, I use `imenu-list`, and there's also some face tweaks to make that more muted.

    (custom-set-faces
     ;; custom-set-faces was added by Custom.
     ;; If you edit it by hand, you could mess it up, so be careful.
     ;; Your init file should contain only one such instance.
     ;; If there is more than one, they won't work right.

     [...]

     '(markdown-blockquote-face ((t (:inherit nil :foreground "gray50"))))
     '(markdown-bold-face ((t (:inherit nil :slant normal :weight bold))))
     '(markdown-header-delimiter-face ((t (:inherit markdown-markup-face))))
     '(markdown-header-face ((t (:inherit nil :weight bold :family "sans"))))
     '(markdown-header-face-1 ((t (:inherit markdown-header-face :height 2.0))))
     '(markdown-header-face-2 ((t (:inherit markdown-header-face :height 1.6))))
     '(markdown-header-face-3 ((t (:inherit markdown-header-face :height 1.2))))
     '(markdown-header-face-4 ((t (:inherit markdown-header-face :height 1.1))))
     '(markdown-header-face-5 ((t (:inherit markdown-header-face :height 1.0))))
     '(markdown-html-attr-name-face ((t (:inherit markdown-markup-face))))
     '(markdown-html-attr-value-face ((t (:inherit markdown-markup-face))))
     '(markdown-html-tag-name-face ((t (:inherit markdown-markup-face))))
     '(markdown-inline-code-face ((t (:inherit nil :foreground "green4"))))
     '(markdown-italic-face ((t (:inherit nil :slant italic :weight normal))))
     '(markdown-language-keyword-face ((t (:foreground "gray80"))))
     '(markdown-link-face ((t (:inherit nil :foreground "blue3" :underline t))))
     '(markdown-pre-face ((t (:inherit markdown-inline-code-face :background "#f4fff4"))))
     '(markdown-reference-face ((t (:weight bold))))
     '(markdown-strike-through-face ((t (:inherit nil :strike-through t))))
     '(markdown-table-face ((t (:inherit nil :background "#fafafa"))))
     '(markdown-url-face ((t (:inherit markdown-markup-face))))

     [...]

     '(imenu-list-entry-face ((t (:family "Sans Serif"))))
     '(imenu-list-entry-face-0 ((t (:inherit imenu-list-entry-face))))
     '(imenu-list-entry-face-1 ((t (:inherit imenu-list-entry-face))))
     '(imenu-list-entry-face-2 ((t (:inherit imenu-list-entry-face))))
     '(imenu-list-entry-face-3 ((t (:inherit imenu-list-entry-face))))
     '(imenu-list-entry-subalist-face-0 ((t (:inherit imenu-list-entry-face-0))))
     '(imenu-list-entry-subalist-face-1 ((t (:inherit imenu-list-entry-face-1))))

     [...])


Do you sync that folder across devices? If so, how?


I tend to use Git (or earlier VCS) to sync much of my homedir across systems, for disconnected operation.

This doesn't support my smartphone, but that's OK for my current needs. (If I someday need to access this super-minimal wiki from my smartphone, without my laptop, I'll consider syncing it with Git, or moving to self-hosted wiki Web UI that's maybe as a veneer over keeping the wiki files maximally accessible as local files on my real computers.)


Not OP but here how I might do -- Synching, Dropbox, iCloud, OneDrive, etc.


>Tools such as Obsidian are a good option for me, as I can use it as that -- a tool and not worry about the content being tied to any platform - open or otherwise.

Fine, but (because the OP is about an open-source solution) we should mention that Obsidian is not open-source.


https://foambubble.github.io/ is and works on a similar concept.


With the added benefit of being right there in VSCode if that’s a tool you already happen to spend time in.


But then when your collection gets to a certain size it's barely usable without an app. You lose all the easy traversal between interlinked notes for instance. I think plain text sets the bar very low for the functionality absolutely required from an app, but doesn't eliminate it.


I'm definitely in favor of tools on top of my text files. I started with Sublime Text[1] and Markdown Editing[2] Package. I can still and sometimes resort to this setup. I believe that if I can search (Sublime Text is powerful with this) easily, that solves all the connection/relationship between the files.

And a bit of a shameless plug but I have been told by colleagues and friends that my file organizations lasts ages, and are the easiest to navigate. Some have told me, 10-years later, that the system I build and the naming convention are still followed to that day to maintain the software and an easy common-lingual between the designers and developers. :-)

With tools such as Obsidian, it has already shown that this is going to improve as we progress. For me, it is more of the process and patterns of how am I mapping the files/topics/subjects mentally.

1. https://www.sublimetext.com

2. https://sublimetext-markdown.github.io/MarkdownEditing/


I think this is why org-roam[1] makes an index in (IIRC) a SQLite DB. (None of this works on mobile in any meaningful way, of course.)

[1]: https://www.orgroam.com/


I'm still a happy Evernote subscriber since a few years ago. When Galaxy Notes were my main phones, lots of my (handwriting) notes are stored in it.

Nevertheless, I'm still looking for open source alternative. Evernote is certainly more user friendly because it has built-in Word-like WYSWYIG editor. Obsidian, on the other side, is like vim: there's a reading mode, and there's an editing mode. A bit confusing at first.

BTW, just noticed Obsidian is Electron-powered, like VSCode. Hmmm....


I kinda like Joplin. It's not perfect, but it works for me. I enter notes in markdown, and it formats the markdown text (kinda WYSIWYG). Sync has never failed me. I can edit on Android. The desktop app is fine. It has a web clipper. It's free.


What about the bizarre lack of Markdown viewers, though? It's infuriating.


"which still can maintain human readability even if the reader doesn't know what Markdowns are"


I love how some shut-in modded that down. Sad.


Encryption is nice, but what I really want is local-first, multi-device, and a very short time between when I launch the app and when I start being able to type. When I want to capture an idea or want to spend my limited time journalling, I want it fast. Hyperlinking and adding photos are nice.

Evernote has been focusing on collaborative features I don’t care about. Startup time to when I can start typing have been getting worse over the years. I’ve been seriously looking for a good replacement that lets me import from Evernote.


Joplin is significantly better than Evernote for being quick to start typing. Sync runs in the background without preventing you from editing which is why I moved over. Has a decent ability to import notes from Evernote to Joplin as well.


The thing that bothered me with joplin is that you can only import/export plain md files and not just use it to work with already existing folders and files (at least when I used it the last time).


Standard notes fits those criteria and as a bonus is encrypted


Because @hosh is looking for something to quickly take notes, I must caution against Standard Notes due to it's lack of Android sharing integration. A user cannot simply share from an app into SN. The problem has existed for several years and requests to have this feature restored have been consistently ignored. The only option for Android users is to copy text, switch to the app, and paste it in - this requires more effort than most other competing note apps.


Apple Notes is my go to.

Plenty of great new features, but the core is still snappy and easy to use.


Same, ever since Apple FINALLY added categories. It took years and years for them to learn that this is essential.

Mainly I rely on Notes because they're synced through iCloud. I can add stuff to my grocery list as I think of it throughout the day while working on my computer, and it's on my phone when I roll to the grocery store.

I don't like that they're not in a standard format, however.

Oh, and the incredibly ill-conceived "share" function. In any other Apple application, "share" means (essentially): E-mail or text-message a copy of this. But if you "share" a note, the other person HAS REMOTE EDITING CAPABILITY ON YOUR NOTE. I discovered this by accident when I sent a recipe to my sister, then opened it months later to find stuff she had typed into it. The privacy failure here is just appalling. WTF, Apple?

Then there are the mysterious deletions. I've looked for notes that I knew were in there, only to find them under Deleted... fortunately before they were purged. In those cases, the iCloud syncing would've meant they were gone forever. Again, WTF Apple.


Have you found a good way to export a backup, instead of only cloud sync? Too to lose content by deleting by accident and then syncing.


Apple Notes keep all deleted notes in a trash bin for 30 days, you won't lose anything unless you manually go and remove them.


Deleted notes are easy to recover; deleted text not so much.


This is the real problem I have. If I delete content, move to a different note, and return to the first note, I lose the undo history and any possibility of regaining the deleted text.


Any idea how to export apple notes? Last I tried I went on the official apple note discord and their response was basically "lol you shouldn't use apple notes for more than like 10 notes so you're out of luck". I have like 1500 notes that I want to export


Google Keep, everyday (till they kill it)


“till they kill it”

How sad, that we are dependent on third parties like this… I have seen people openly hoping and begging Twitter to add an Edit button. Really? This is why we need open source.


This is seriously sad (not just Google keep, but also why other note taking software like Evernote, apple notes, etc) that there is a worry that companies may shut any one of these down, or that they aren't encrypted and secure, or that they're not FOSS. There's good options that fit these criteria, such as obsidian on a LAN with syncthing.


Was a Keep fan until I got a few thousand notes into it, and now my iOS start time is on the order of 10 seconds or so before I can type anything. Mostly use it in iOS with the Share functionality, then use the browser version otherwise.

Now for iOS I use Drafts for quick note-taking, then resolve the note later.


I use sublime text for that. It launches super fast, and after I capture whatever idea I have I usually copy the doc over to notion. Sometimes, all I need is to just capture whatever thought I have and not worry at all about copying them to notion or other tools (especially common when coding / debugging, I will just have an idea and then either excute on it or create a github issue)


Somebody showed me this, which looks like everything you want but it also looks experimental:

https://github.com/prettydiff/share-file-systems


drafts optimizes for startup time, I use that for on-the-go and then review it later to be put into a long-term system

looking for one-tool to do it all is a mistake


Noteplan


If you're looking for a fully open source, self-hostable, E2EE wiki web app then you might be interested in Peergos - https://peergos.org

We have a markdown based wiki viewer and editor- https://peergos.org/posts/markdown-browser

There is also secure sharing of documents or folders with others.

Peergos is a generic P2P E2EE filesystem with a bunch of apps on top, and you can write your own too - https://peergos.org/posts/a-better-web

Disclaimer: co-founder here


I love this part: https://github.com/Peergos/ipfs-nucleus

I've tried IPFS before but I hit a bug when using it so gave up on my idea for a side project. Might give this a go!


Thanks! The main reason we wrote ipfs-nucleus was to add access control at the block level. It also let us keep it super simple and thus reduce attack surface.


The UI seems to be ugly.


Demo page is down


Where do you see a demo link?


My primary requirement for personal note taking is self hosting. That's the only thing that assures me that my years of notes will be available when I wake up every morning.

(And if I don't wake up one morning, I doubt I'll miss the availability of my notes)


I am curious what kind of information do you have in your notes that you keep them around for years.

Not trying to mock or anything but I am wondering if I too would benefit from such a thing. Most of my notes are ephemeral and I delete them soon (within weeks at most).


I write lots of thoughts, plans, logs of activity, to do lists that stretch back, literally, years (and yes, there's a limit to the practicality of that, but they can also be culled, bit it's also just text, so it's not like it's taking up precious storage space).

I always tag each 'note' so it's mostly findable down the track.

I use it to document the backup process of my homelab, and so those notes grow and change over a relatively large period of time. Also document various docker-compose scripts and straight docker create scripts for the various services running on my network, and they get tweaked with some regularity (updating PiHole and Jellyfin instances etc.)

Thinking about your question, "notes" probably is an understatement of how I use it. "Documentation" is probably a more accurate description. Something like my "digital life wiki".

FYI I use noteself, self-hosted using a couchdb instance. Noteself is an extension of tiddlywiki with pouchdb built in as a local in-browser data store (which, with the setup I use syncs with a couchdb instance). I've used it for a number of years.


Not OP, but I’m constantly reading and researching things. I have many decades of notes about a multitude of topics I’d hate to lose.


StandardNotes makes daily encrypted exports to your Google drive, mailbox, and others. That's not self hosted but it's texts files so... Good enough for me.


The self-hosted-ness also provides the ability for me to access my notes, password protected as well, from any computer with a browser. If I'm on my work computer and remember an appointment or an important task, I can load it up, add the task, and it's there on any other device I access the notes through.

For a while now I've been aiming for a setup with minimal dependence on any specific device. The device is throwaway whilst the service is consistent. There are obvious limits to this, however.

(It feels like something like Nix would be perfect for scripting the device specific setup for accessing the services, I just haven't had the time or motivation to get into that)


I get that Evernote seems stagnant (or even dead by many accounts) and it certainly is lacking in critical features such as e2ee, but all these (paid) alternatives are only covering a small fraction of Evernote functionally: mostly text notes. No OCR, no easy meeting notes, no templates...

Luckily, where I am I've access to (really!) low cost EN subscription (maybe I've got grandfathered into it? Right now it works out less than 1usd/year) So I'm just never tempted to find alternatives despite it's shortcomings.


Yes, I use Evernote as a searchable scanned documents database (I don’t need plain text notes, and I have thousands of scans lying around from the last 12 years). Every bill, receipt, signed contract, insurance claim etc. gets scanned and goes to Evernote, with tags for quick access. I pay full $80/year for it.

I would really love to switch to something else, but there is no alternative. There is no other document database with built-in OCR. I tried for years to find it, but apparently there is nothing else.

Managing plain-text notes is the easiest part. I could do it with Orgmode if I wanted to. But I don’t know how I could manage my scanned documents, if not in Evernote.


OneNote


Oh, they added OCR and tags recently. I’ll give it a try again.


I am more likely to journal and blog if the friction to creating a post is as simple as opening a document and writing. The important part of journalling or note software is that you actually create notes. I did use Hetzner to run a Wordpress blog but it had an overhead of server expenses and keeping Wordpress up-to-date.

I don't want my data trapped in a proprietary system where it is difficult to export, so I use plaintext. I looked into Publii [1] but I prefer my current plaintext setup. Today I journal software ideas, computer ideas, startup ideas and community ideas on GitHub in the open, as README.md files. My journal is all public on GitHub at the following links. There are over 550+ journal entries, I am sure you shall enjoy them.

https://github.com/samsquire/ideas

https://github.com/samsquire/ideas2

https://github.com/samsquire/ideas3

https://github.com/samsquire/ideas4

https://github.com/samsquire/startups

https://getpublii.com/


Wow! GPL-licensed, Free as in Freedom, encrypted note taking! This is great. I think I'll probably end up self hosting this just on principle, but I signed up for a year just to show support! The fact that the Notesnook community is on discord is a little annoying, but other than that, I have no qualms with this, can't wait to try it out.


When I see 'pricing' on top of page and sign on requiring email & password, it's better to close tab.


Why? We all have to pay for shelter and food. This looks like what could become a fantastic business and product. I applaud their commitments to privacy and open-source at such an early stage. I am looking forward to hearing about Notesnook more in the future.


You're right. Probably pricing is justified. Just hate to give email details for login.


More and more I’m thinking of having open software that runs on client hardware and that sync via simple P2P connections. For example having some Evernote clone where the mobile app is in sync with the desktop app without using a centralized server.

My issue is being trapped in SaaS platforms with bad business models that threaten the existence of the service. Think of Instagram, Tiktok, Twitter, Facebook, heck even Uber and Uber eats clones.

Though I’m not into the crypto stuff. I’d be OK if banks kept centralized ledgers that these free-to-use privacy-oriented P2P services could use, for crowd sourced applications.

I really miss the feeling of the internet in the 90s and 00s but how could people work on these projects while still make a living?


You can do that today with SyncThing plus your native notes editor of choice.


Warning: desktop app is Electron.


I haven't yet found any privacy focused note-taking app that doesn't use Electron. It's a shame.


FSNotes is macOS native


Didn't even have to check. I just assumed it was Electron at first sight. That's just how software is these days.

And some wonder why so many people are still using Emacs or Apple Notes to take notes. Even the most minimal input lag and stuttering gets me out of my writing mood. Electron is the gaming equivalent of playing at 30 FPS with motion blur.


What makes electron bad? Just being curious - dont know much about it.


Slower startup, worse responsiveness, higher CPU and RAM usage, could hog CPU even at idle.


imho:

- Heavy and slow (Use a lot of RAM and CPU, laptop definitely won't be happy)

- Large installation size (about 120Mb)

- Security problems


If you are interested in this kind of app you may like to take a look at https://cryptpad.org, a full featured collaborative office suite. End-to-end encrypted, built from the ground to know as little as needed about you and easy to host.

Try it on our flagship instance: https://cryptpad.fr, no registration required!


I'm still using joplin + dropbox


Fun fact: Joplin log files include plaintext secret keys when you enable E2EE. I moved away from Joplin after that plus a data loss incident where Joplin decided that it wanted to delete all of my notes in the repository. Too many foot guns there! I did like the software though.


That issue seems to have been fixed 4 years ago: https://github.com/laurent22/joplin/commit/b07fe5cc348ab8c3d...


If you don't mind me asking, can you share some more info on this? Did some searching around, and only found one [1] semi related issue from 2018. Is this the one you were referring to?

[1] : https://github.com/laurent22/joplin/issues/288


Just look in your log files. Here’s my log file with the keys scrubbed, which I discovered while hunting down an unrelated issue.

https://discourse.joplinapp.org/t/keep-original-notebook-on-...


> Just look in your log files. Here’s my log file with the keys scrubbed.

https://discourse.joplinapp.org/t/keep-original-notebook-on-...

I just checked my log.txt file and I can't find mention of my master password. Maybe it is fixed?


Do you have open an issue about it?


I don’t. After discovering that flaw plus the issue I was originally reporting in that thread plus another issue where Joplin deleted all my notes, I just stopped using the software.

I’m reasonably happy using Obsidian now, despite it being closed source and not supporting anything but proprietary sync mechanisms. I have no had any data loss issues with it.


I haven’t found anything better than Joplin, have you?


I tried Joplin, and most other PKM/note-taking tools out there.

Eventually settled on org-mode. Encryption can be sync-time using restic/cryptomator (cloud sync), filesystem (self-hosted all the way), or save time using plain old GPG. As a bonus, there is a gigantic ecosystem around org-mode, and thanks to the platform (Emacs) it is nearly completely FLOSS and pretty much guaranteed to be around and kickin' when most commercial systems with either die, get acquired or just change too much for my taste.

Probably not for everyone, though.


Joplin has no mobile writer. Only reading.

Obsidian has that. And is more extendable. That is why I switched.

For me, writing a note on multiple devices is the key feature.


Joplin's Android and iOS app can both edit note contents, by tapping the '+' or 'edit' circular button at bottom right of screen.


Last time I checked (2019ish) it wasn’t possible. The times they are a changing, I guess.

Will check it out again.



I edit on mobile all the time... works great



Wait a minute, that's not fun at all!


It's also an incomplete assessment - anyway who doesn't take a backup before entering into the unknown (or inexperienced) world of new tools? - PEBKAC

If you follow the instructions properly, this issue is a non-issue.


Of course I resorted from backup. And then I stopped using the application which has such problems.

Still, after discovering that the keys were in the log file, it was definitely a “final nail in the coffin” for me.


Have you read this?

https://joplinapp.org/spec/e2ee/

Master Keys

The master keys are used to encrypt and decrypt data. They can be generated from the Encryption Service and are saved to the database. They are themselves encrypted via a user password using a strong encryption method.

These encrypted master keys are transmitted with the sync data so that they can be available to each client. Each client will need to supply the user password to decrypt each key.


Another good option which is encrypted but not open source is Inkdrop. I’ve been loving it for years (especially with the vim keybindings plugin).

https://www.inkdrop.app/


> Notesnook is our proof that privacy does not (always) have to come at the cost of convenience

Won’t implementing note sharing be harder for this app than for one that isn’t encrypted?

Encrypted data storage is harder to work with than plaintext data storage and until developers have good tools to close that gap, they’re not going to.


Joplin is also open-source and support end-to-end encryption with ability to sync through common cloud services like GDrive, OneDrive, Dropbox, etc.


What's the difference with outline[1]? It is a very similar service with markdown support.

[1]: https://www.getoutline.com/


Logseq


I'd love to use Logseq, but in my experience the mobile app is quite buggy.

Otherwise it works surprisingly well with my existing org-mode notes, if not 100% compatible.


I wonder if one could get a sufficiently mobile experience with starting starting the regular electron software on xvnc on a linux distro on android termux and with an android vnc client session automatically connecting to the fullscreen android display resulution with css tweaks for the mobile display.


Haven't tried the mobile app, still waiting for that. I take horrible notes on Google keep and then port them to logseq, usually it's not a lot of work because what I can write on phone takes longer than pc


If it's on Electron, then I probably won't use it.


Great competitive product, can't wait to see what they will offer more than standard notes. Good luck!


Misses note linking that I'm growingly getting dependent on.


There are other alternatives

Etesync(notes, calendar, contacts, etc) with E2E

Simple notes and joblin


I had been using Xournal++ for a year, and it is truly amazing.


I just use a txt file for note-taking, and it rocks




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: