Laverna / laverna

Laverna is a JavaScript note taking application with Markdown editor and encryption support. Consider it like open source alternative to Evernote.
https://laverna.cc/index.html
Mozilla Public License 2.0
9.19k stars 801 forks source link

Sync without Dropbox or RemoteStorage? #635

Open herold2k opened 7 years ago

herold2k commented 7 years ago

Hi there,

first of all thanks for the great work - Laverna is a really cool tool! With that said, I have some questions/wishes regarding Laverna:

  1. I do not have a Dropbox- or RemoteStorage-Account. Is it possible to sync Laverna notes between devices (Linux, Windows, Android) using another way? Maybe with a self-hosted Laverna installation or via personal webspace (FTP, SSH, WebDAV...)? Something like: [laverna_desktop] <-> [personal_webspace] <-> [laverna_android]
  2. Is Laverna secure enough resp. is the encryption strong enough that I could host it anywhere and could sync it via cloud services like Dropbox or RS, even if I don't trust them in terms of privacy?

Thanks!

Phisoloc commented 7 years ago

Yeah, would be cool to connect it with yourr own ownCloud or better Nextcloud. I won't use Dropbox and RemoteStorage. WebDAV over https would be great.

eriteric commented 7 years ago

Nextcloud now has an "app store", adding laverna there would be pretty neat

herold2k commented 7 years ago

But this is exactly what I do NOT want, when using Laverna: rely on other companies like Dropbox, Google, Microsoft, MEGA etc.

I want to use my OWN webspace/server/... and this should work as simple and straightforward as possible.

Otherwise I could just use Google Keep or MS OneNote etc.

r0bbie commented 7 years ago

Remain really hopeful for this via OwnCloud/NextCloud/WebDAV support (#155 and #104). It's currently a pretty critical missing feature (for anyone who doesn't use Dropbox).

abidueiro commented 7 years ago

Would be great to sync trough Webdav, Laverna is perfect except of that.

jekuno commented 7 years ago

Would it be too hard to run your own remote storage server? There are several open source options: https://wiki.remotestorage.io/Servers#Host_your_own

You could even host RemoteStorage on your own server and keep it behind the firewall of your local intranet. Then you could sync Laverna when you are at home (and WiFi-connect your smartphone or desktop to the same network as your local server).

herold2k commented 7 years ago

Yep, running my own remote storage server would be 'too hard'. Since there seems to be no way to host a remote storage server on shared webspace and I don't want to run my own server just because of remote storage... So this is no choice.

funilrys commented 7 years ago

I mean webdav is just what we need !! ;)

smu55 commented 7 years ago

Lots of people use syncthing or relisio sync (former bittorent sync) to keep things synchronised. It would be nice If one could sync notes locally this way.

jancborchardt commented 7 years ago

Nextcloud can be fully self-hosted so you’re not relying on any other service. :) We also support simple WebDAV as API for the files. :) https://github.com/Laverna/laverna/issues/104

The cool folks of Buttercup recently added Nextcloud integration too: https://github.com/buttercup/buttercup-core/pull/151 – maybe @perry-mitchell @sallar @brantje can provide some pointers on how they did that? :)

perry-mitchell commented 7 years ago

WebDAV is an interesting protocol, and it has a lot of quirks in my opinion. The WebDAV engine Nextcloud uses (I believe it's SabreDAV?) is quite alright but many implementations get a bit loose when it comes to response structures. I wrote webdav-client and webdav-fs to handle several styles of WebDAV servers, including the one Nextcloud uses. WebDAV-client uses promises to work with the files on the server, making reading and writing a piece of cake. WebDAV is a pretty solid protocol with a ton of support and compatible libraries 👍

jancborchardt commented 7 years ago

@perry-mitchell would you be down to write a blog post on how other web apps like Buttercup (and Laverna in this case) can use your library to use Nextcloud as storage? :)

Would be pretty awesome, and we would be happy to publish it on our blog and promote it. :) cc @jospoortvliet

perry-mitchell commented 7 years ago

I'd be very keen to write a post.. let's sync up on that via email (perry at perrymitchell.net)

coloradomountain commented 7 years ago

Surprised there is no SFTP support and all of this love for WEBDAV. Will fork and add SFTP support.

domacikolaci commented 7 years ago

@coloradomountain how did you go with your own fork? Has anyone made their own version of this with WebDAV or something? Really want to use this with nextcloud. Thanks!

coloradomountain commented 7 years ago

@domacikolaci I never forked Laverna. I simply started my own project. I am unsure the scope of Laverna was ever remote storage of notes, but integrating it shouldn't be an issue, I just never found the need.

domacikolaci commented 7 years ago

@coloradomountain ahhhh bugger, all good. Wish I knew the language, would attempt it. Know any APIs or something to go off? Might as well give it a crack if noone else will :)

coloradomountain commented 7 years ago

@domacikolaci

https://www.npmjs.com/package/webdav https://github.com/Laverna/laverna#coding-style-guidelines

Really should be simple. Best of luck!

domacikolaci commented 7 years ago

Thanks @coloradomountain will check it out!

jancborchardt commented 7 years ago

There's this great blog post by @perry-mitchell on how to conmect apps to Nextcloud using his webdav-fs library: https://nextcloud.com/blog/using-webdav-fs-to-access-files-in-nextcloud/

Probably quite helpful to people who want to improve Laverna by these additional sync capabilities. :)

domacikolaci commented 7 years ago

Cool, will look into. In the end I'll be honest, got lazy and looked into Nextcloud notes + using QOwnNotes which is working really well right now for me. Will look into getting Laverna working instead, Laverna still looks like the better option in the end, when I understand JS more, but for now, it's all going over my head :D

Astronach commented 6 years ago

With the module 'FS' you can "sync" the data with a specific folder on your file system. This folder can be sync with syncthing

funilrys commented 6 years ago

Hello there, Please report to https://github.com/Laverna/laverna/issues/971#issuecomment-411423965 which explain the state of this project.

Have a nice day/night, Cheers, Nissar