Coder Social home page Coder Social logo

laverna / laverna Goto Github PK

View Code? Open in Web Editor NEW
9.1K 334.0 800.0 6.51 MB

Laverna is a JavaScript note taking application with Markdown editor and encryption support. Consider it like open source alternative to Evernote.

Home Page: https://laverna.cc/index.html

License: Mozilla Public License 2.0

JavaScript 83.20% HTML 7.40% CSS 9.40%
peer-to-peer note-taking laverna socket-io websocket webrtc

laverna's Issues

UX Suggestion: Replace the Star with Tags

The star indicates that this is one of your favourite notes. But the functionality doubles with Tags. Why not just have a Favourite tag?

While we're doing that, we could put a tag widget in place of the star to show which tags are in a document. Somewhat how http://tinmark.com does it (watch the demo video).

Finally, it would be awesome to associate tags with a note while not having to type them into a note directly (remove the technical element to using tags). In practice, these could be appended to the end of the markdown document.

The point of this suggestion is to remove redundancy and hence, strengthen what we want Laverna to be good at "organizing your notes".

can't use with firefox

Hello,

My problem is that on the same computer it works with chromium but with firefox I have this error :
It seems like you refused Laverna to use IndexedDB or you are in Private browsing mode.

Linux Mint 16 - Firefox 28.
I've already deleted my cache and cookies and tried with all my add-ons disabled.

Feature Request: Clear Local Data

Add a button to the settings menu that allows users to clear their data from localStorage. Makes using Laverna on public machines more secure.

git clone doesn't work

git clone doesn't work on ubuntu 12.04

Cloning into 'laverna'...
Permission denied (publickey).
fatal: The remote end hung up unexpectedly

Error in running locally?

I'm facing issues in setting up Laverna locally.

  1. Cloning - Works
  2. npm install && bower install - works
  3. grunt build - Fails

Gives the following error

F:\Work\Laverna\laverna>grunt build
Running "clean:dist" (clean) task
Cleaning .tmp...OK
Cleaning dist/images...OK

Running "string-replace:i18nextLocal" (string-replace) task

Running "createDefaultTemplate" task

Running "jst:compile" (jst) task
>> Destination not written because compiled files were empty.

Running "less:compile" (less) task
>> FileError: '../bower_components/bootstrap/less/variables.less' wasn't found i
n app/styles/main.less on line 15, column 1:
>> 14 // Core variables and mixins
>> 15 @import "@{boot_dir}variables.less";
>> 16 @import "@{boot_dir}mixins.less";
Warning: Error compiling app/styles/main.less Use --force to continue.

Aborted due to warnings.


Execution Time (2014-03-24 11:53:39 UTC)
loading tasks  1.4s  ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ 90%
clean:dist     17ms  ■ 1%
less:compile   99ms  ■■■ 6%
Total 1.6s

Any idea how I can set this up locally?

Dependency conflicts

When running bower install following dependencies conflict :

Unable to find a suitable version for backbone.wreqr, please choose one:
    1) backbone.wreqr#~0.2.0 which resolved to 0.2.0 and is required by laverna 
    2) backbone.wreqr#~1.0.0 which resolved to 1.0.1 and is required by marionette#1.6.4

Prefix the choice with ! to persist it to bower.json

[?] Answer: 2

Unable to find a suitable version for backbone.babysitter, please choose one:
    1) backbone.babysitter#~0.0.6 which resolved to 0.0.6 and is required by laverna 
    2) backbone.babysitter#~0.1.0 which resolved to 0.1.1 and is required by marionette#1.6.4

Prefix the choice with ! to persist it to bower.json

[?] Answer: 2

Install with Bower Failed(With a Github account setup)

The installation exited with the following error message:

.......
bower not-cached    git://github.com/WickyNilliams/enquire.js.git#~2.1.0
bower resolve       git://github.com/WickyNilliams/enquire.js.git#~2.1.0
bower checkout      backbone.mousetrap#11ecdbfbe1099249daa6e1e86db7aee090ea5801
bower checkout      pagedown-ace#84d5e1b7ff233a1c8cafa9716e825228d275120c
bower checkout      pagedown-extra#bd0870e3e871e15bde1fa5a427e3e10028a09789
bower checkout      ace#bfba4f1efd6e6a8b2b8e1478c10daecfbe64e784

bower ECMDERR       Failed to execute "git ls-remote --tags --heads git://github.com/superfeedr/indexeddb-backbonejs-adapter.git", exit code of #128

Additional error details:
fatal: unable to connect to github.com:
github.com[0: 192.30.252.129]: errno=Connection refused

I'm not really familiar with Github so I couldn't tell where went wrong... My machine is MBA OS X 10.9.2. Thanks in advance.

Removing Encryption is not seamless

I had my notes encrypted, but I didn't like my password so I unchecked "Use Encryption". Then all my notes look like hashes.

It seems there needs to be a decryption step when removing established encryption. It's good to make sure the unencryption propagates to remote storage as well.

Setup fails using latest node/npm/bower

I do the following steps to install Laverna on Windows:
download the latest node.js windows installer and install in g:/nodejs then do:

cd g:/nodejs
npm install -g grunt bower
git clone https://github.com/Laverna/laverna.git
cd laverna
npm install
bower install
grunt build

There are two problems:

  • The repository URLs in bower.json use the git:// protocol. This hangs my bower install as it is waiting for me to type 'yes' into the SSH prompt "The authenticity of host 'github.com' can't be established.". I guess I have some old github RSA key in my known_hosts (or someone is doing a MITM on my github SSH...). It's not obvious at the time why the bower install is hung though. I fixed this by just swapping all the repo URLs for the equivalent https:// ones.
  • The bower install of device.js seems to be broken in some way. The grunt build command fails because the requirejs task can't find app/bower_components/device.js/lib/device.min.js. I "solved" this by just git cloning the appropriate repo into bower_components. This is a terrible hack, but I have no idea why bower is not installing the expected files.
G:\nodejs>node --version
v0.10.26

G:\nodejs>grunt --version
grunt-cli v0.1.13

G:\nodejs>bower --version
1.3.1

FYI I've also tried the install on Linux and had exactly the same issues.

Let me know if you need any more information.

Feature Request: Indentable Checkboxes

We can put checkboxes in our notes but only if they are left justified.

Sometimes I have a hierarchical list that I want to put checkboxes in. Laverna won't currently allow me to indent before my checkboxes.

Keyboard Help Dialog should close with ESC

I thought it was kinda funny that I could press "?" to get the keyboard help dialog up but I have to move my hand to the mouse to close it.

ESC would be a natural key, but really it could respond to any keypress to close.

UX Suggestion: Make navigation more obvious

The menu button in the upper-left is ambiguous. If it takes you to notebooks, it should display the notebooks icon. Likewise for inbox (see my suggestion about renaming inbox).

But I would remove this button completely. Instead move the dropdown over to the "nav-bar brand" (which I will call "Location"). This way it tells you what you are currently in (The "Inbox") and if you want to change where you are in the app, just click on it. (See the bootstrap Navbar dropdown example: http://getbootstrap.com/components/#navbar)

Also you could remove the Notebooks listing under the location dropdown. Instead just list the notebooks there (but this makes the dropdown hierarchical so it may be a bigger job for a separate issue). So it would look like:

  • "All Notes" (suggested change from "Inbox")
  • (Notebook listings here)
  • Trash
  • Settings
  • About

So the final order of top navbar elements would be:

  • Location drop-down (left justified)
  • Search button (left justified, see suggestion about changing search)
  • Sync button (right justified, if connected to a remote storage option)
  • New note button (right justified)

Tags in note title

A way to add a tag in the note title, which will appear in a separated branch of the tree of tags ?

RemoteStorage error

I get next js error when trying to sync with remotestorage.

GET http://domain.com/storage/caske33/notes/ 403 (Forbidden) domain.com/storage/caske33/notes/:1
Possibly uncaught error:  
[Error]
 Error: Received faulty directory response for: /notes/
    at Object.<anonymous> (https://laverna.cc/scripts/libs/remotestorage.js:1215:25)
    at notifyConsumer (https://laverna.cc/scripts/libs/remotestorage.js:25:45)
    at https://laverna.cc/scripts/libs/remotestorage.js:71:11 remotestorage.js:68
Error happened with cloud storage API 

(domain.com is a valid domain - I just obfuscated it here).

Cancel Button Bug

On click of Cancel button inside new note doesn't do anything. Only changes are in the URL. Three clicks of Cancel button result in redirection to homepage.

bower fails to execute git requirejs-bower.

Hi,
I'm triying to install lavenda on my Debian server, but bower install failed.

bower resolve       git://github.com/WickyNilliams/enquire.js.git#~2.1.0
bower not-cached    git://github.com/eligrey/FileSaver.js.git#*
bower resolve       git://github.com/eligrey/FileSaver.js.git#*
bower checkout      backbone.mousetrap#11ecdbfbe1099249daa6e1e86db7aee090ea5801
bower checkout      pagedown-ace#84d5e1b7ff233a1c8cafa9716e825228d275120c
bower checkout      pagedown-extra#bd0870e3e871e15bde1fa5a427e3e10028a09789
bower cached        [email protected]:remotestorage/remotestorage.js.git#0.10.0-beta
bower validate      0.10.0-beta against [email protected]:remotestorage/remotestorage.js.git#0.10.0-beta
bower checkout      ace#fbc546032090752664aaea13c8f9489dea43490a
bower ECMDERR       Failed to execute "git ls-remote --tags --heads git://github.com/superfeedr/indexeddb-backbonejs-adapter.git", exit code of #128

I changed all the git://github.com/ to [email protected]: and it worked, until I got this error:

wer and propitious to errors!
bower resolved      [email protected]:enyo/dropzone.git#3.8.4
bower resolved      [email protected]:EightMedia/hammer.js.git#1.0.9
bower ECMDERR       Failed to execute "git ls-remote --tags --heads git://github.com/jrburke/requirejs-bower.git", exit code of #128

Additional error details:
github.com[0: 192.30.252.128]: errno=Connection timed out
fatal: unable to connect a socket (Connection timed out)

I can't figure out how to solve this.

Roadmap: 0.6.0

  1. Export and print options, to PDF (one note, all notes);
  2. MathJax support (issue #53)
  3. Multiple databases (issue #47)
  4. Working in private mode (issue #46)
  5. Android based support (issue #40)
  6. Saving the .md file in clear beside the .json file (issue #9)

HTML tags in title

rsz_screenshot_from_2014-03-21_103345

This occurs in the inbox when you click on a note in the left column.

Android based browser support?

I can't get it to work under Android with Chrome or Firefox.

It should probably goes into Enhancement, but as no one as even mentioned it anywhere, and as it sounds so obvious to me, I'm wondering if it's not just my phone...or my server...

UX Suggestion: Remove the Pages concept

The notion of pages is confusing to first time users. "Why is there a Prev and Next button at the bottom that don't do anything?" is a very good question.

An even better question is do we need pages at all? That section of the app is not particularly DOM-heavy (only 6 elements per listing) so I don't see an issue just removing pages altogether and listing all relevant notes in the left-side note-list. I see 3 solutions here:

  1. Remove pages and always display all notes in the note list (for that search query, folder or tag). This could be a problem in the long-term but even that can be mitigated if people keep their notes in Notebooks. But even so, if someone has 2000 notes in a notebook you could implement the next suggestion.
  2. Add a dynamic scrolling widget to keep the DOM at a manageable size.
  3. If either of those two options is undesirable, maybe just show the page buttons when a user has greater than 10 (maybe increase the default to 100) notes on a list. This is the path of least resistance.

If you go with options 1 or 2, don't forget to remove the Notes per Page setting from the settings dialog.

UX Suggestion: Sync Button

Only show the sync button when connected to remote storage or Dropbox. Otherwise, it just takes up space and is confusing.

bower install fails unless you have a github account setup

Hi,

nice job, even though I haven't ben able to install & test yet, I've been looking for this for a long time.

I've got a problem when bower install:
bower pagedown-ace#84d5e1b7ff233a1c8cafa9716e825228d275120c ECMDERR Failed to execute "git clone [email protected]:benweet/pagedown-ace.git /tmp/nodje/bower/pagedown-ace-30245-UPTEdu --progress", exit code of #128
Additional error details: Permission denied (publickey). fatal: The remote end hung up unexpectedly

I generally check out projects using git clone https://github.com/Laverna/laverna.git, especially on a server where I don't have a github account setup.

I'm guessing bower install fails here because it needs a valid git account with a proper public key setup locally.

It'd be awesome to be able to run all the install commands without having a github account setup.

Sync to non-commercial storage

Cool project guys!

It would be nice to have a sync option to a non-commercial storage, like a self hosted FTP/GIT server.

Did I misunderstood the purpose of the app?

I think I misunderstood the purpose of the app.
I was triying to replace every note taking app I use every day.
I taught that when connecting to the app from my mobile, I was going to find every note I took.
I triend configuring the dropbox sync with my computer, and my phone, but it didn't work either.
Am I missing something? I was wrong about the purpose of laverna ?

Doesn't work with Safari

I installed Laverna on my VPS and with Firefox on OSX I see the UI and I can use it. With Safari on OSX I see the background (white area on the left for the list of notes, grey area on the right for the currently selected note), but there is nothing in it, just the two areas.

Using Mavericks and the Safari that comes with it.

UX Suggestion: Saving

When editing, there should only be one Save button. If the document has unsaved changes, it should read Save & Close otherwise, just Close. Saving is a function that should happen automatically.

Take Gmail as an example. It automatically saves every 10ish seconds or after the user pauses from typing for 5ish seconds (rough guesses, I didn't go measure). So there is never a need to click a Save button. Even so, when it does save automatically it tells you as the user so you never have to guess. This is excellent UX that should be in Laverna.

Conflict with "Self-Destructing Cookies" Firefox Addon

  • After I installed the "Self-Destructing Cookies" addon, Laverna in encryption mode did not function correctly.
  • After clicking "Start using now" on the Laverna home page, the application navigated straight to my inbox without prompting for my encryption password. All the notes were still encrypted and thus, unreadable.
  • I decided to simply uninstall Self-Destructing cookies and deleted the small number of notes I had written and rewrote them.
  • However, I think in "Self-Destructing Cookies" you could theoretically white-list laverna.cc and uncheck the option to also delete Indexed.db entries and the addon should play nicely with Laverna.

Encryption Function Doesn't Sync

If you have both encryption and cloud storage enabled, it would be nice if your encryption settings synced between instances.

As it is right now, it seems like if I encrypt a note in one browser, there is no way to view that note in another browser. Is this accurate, or am I misunderstanding how to set this up?

screen shot 2014-03-21 at 11 22 09 am

grunt build failed

I went through the installation process without any problems until I got to "grunt build", then I got this error: -bash: grunt: command not found. What went wrong?

Autosave (suggestion)

After I have been using Laverna for some time I noticed there is a risk of data loss when you create or edit a note and forget to save/browser crashes. On the other hand clicking Save exits the edit mode so it's rather impractical to use it before you have fully finished editing the note.
If I may I would like to suggest one of those for your consideration:

  1. instant automatic save for edits;
  2. something like "Save and continue" or "Save Draft" button.

0.5.0 - [email protected] issue

Hi,
new release welcome!

just tried on trunk npm install && bower install on a server and got a:

bower remotestorage.js#0.10.0-beta ECMDERR Failed to execute "git ls-remote --tags --heads [email protected]:remotestorage/remotestorage.js.git", exit code of #128

Would be nice to use https:// instead, as previously mentioned in previous issue #24

As workaround, replacing the scheme with https:// in bower.json works.

New Feature Request:: Code handler

If we place a code in the note then the current code handler isnt able to handle some of the data.

Possibly we might need to use a shortcode as something else that can be easily understand that all the rest of portion mentioned in the note is code.

For Sample purpose I have added it in our public note.
https://laverna.cc/index.html
image

image

Support Unhosted protocols

This is just a feature request. Dropbox support is nice, but I'd much rather have support for Unhosted. It won't necessarily be easy to implement, but I think the effort would be well worth it. Then the storage backend would be nearly implementation agnostic, and wouldn't care about where the data was hosted.

Add Windows set up process

Hello, the setup process works on linux, no problem, but node.js being new and not obvious to use (at least on windows) it could be a good idea to include windows installation instructions too.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.