Every component from the front-end to back-end of Vibrato Notes is open-source under GPL.
Whether you prefer rich-text or markdown, both formats are supported and can be used interchangeably.
Notes will be encrypted on the client-side before sent to the cloud. Only YOU will be able to access your notes.
Plugins are a way for users to add any feature they want to Vibrato Notes. So what can a plugin do? Perhaps it could add Emacs/Vim keybindings. Maybe it will help you automate tasks. Maybe it will even help you create a complex to-do list system. The plugin system will use a lisp-like scripting language.
Vibrato Notes will be available on Linux, Mac, Windows, Android and iOS.
The desktop application is built using the Qt5 framework. It is very lightweight on system resources compared to the toolkit that most other note-taking apps use - Electron.
5% of Revenue is
Donated to Open-Source
There are many open-source projects and foundations that are very deserving of more funding. 5% of revenue will be donated to these projects and foundations. This will all be documented on the OpenAppLibrary.org blog on a quarterly basis.
The apps will be free to download.
How Vibrato Notes will make money is through its cloud note-syncing and file storage service. It is similar to Evernote where you could create an account and easily access your notes on all devices.
It will cost an estimated $10/month and will include various options for file storage space. (When you upload attachments such as images and other files.)
You can create ‘notebooks’, ‘tags’ and also ‘favorite’ individual notes.
You can favorite notes my clicking the little “star” icon next to the note. This is very useful for making notes you commonly refer to easily accessible.
Notebooks and tags are two different organizational tools with different rules.
A note can have one notebook but many tags.
Notebooks can be hierarchical (Notebook in a notebook in a notebook) but tags cannot.
What you do with notebooks and tags is 100% up to you and your organizational system of choice.
I personally like to use notebooks for general categories of notes – “Recipes”, “Ideas”, “Journaling” – and I like to use tags for more niche categories that wouldn’t necessarily need to be a notebook – ex. “5-minute recipes”, “Vegan recipe”, “Gluten-Free”.
Vibrato Notes will try its best to allow you to import your notes from the most popular note-taking applications. Some note-taking apps will be harder to import to Vibrato than others due to multiple factors.
The encryption model will take inspiration from how Turtl encrypts note data.
The most important thing worth mentioning is that all encryption will happen on your device and if you sync to the cloud, none of your note data will sync un-encrypted.
Let’s go over two different hacking scenarios and what would happen.
The database is compromised:
The hacker would not be able to access any information as everything is encrypted.
The database and back-end web API is compromised:
The hacker would have access to your basic account information (Name and email.) No payment information is leaked as that is processed by Stripe. Your note data is safe as well as it was encrypted on the client-side, not server-side and the hacker has no way to decrypt it – unless he managed to get access to your computer as well and steal your keys.
How Vibrato’s Encryption Works:
When you create an account, you are provided with a “recovery seed”. This recovery seed will look very similar to the one given by various cryptocurrency wallets.
A key will be generated using a combination of your email and password. This key will encrypt the recovery seed and save it to the database.
So, now you create a note. The first thing that will happen is the recovery seed will be decrypted by using that key created using your email and password.
With the recovery seed, a new key will be generated that will encrypt your note data.
Uh oh, you just forgot your password! No worries because you have written down that recovery seed and kept it in a safe location. You go to the “Forgot password” form, enter your email address, the recovery seed, and a new password.
What happens next is that the notes/notebooks/tags are decrypted (On the client-side, not server-side!), a new recovery seed is generated, the new recovery seed encrypts the notes/notebooks/tags and finally the new recovery seed is encrypted using a key created from your email & new password.
Now, you’re back in business!
The plugin system used by Vibrato Notes will most likely be Chicken Scheme, a powerful lisp-like language.
…however, using a foreign-function-interface library, such as pyffi, can make supporting other languages possible. In the case of pyffi, you would be able to write a plugin in Python.
The only downside of the pyffi method is that the user must have Python installed on their computer to run your plugin.
There will be detailed documentation on plugin creation.
Vibrato Notes is separated into four components:
The web app is a VueJS app, of course created with web technologies.
The desktop app is created using Qt5 with the languages C and C++.
The mobile app will be created using Qt5.
The back-end server is created using Django with the Python programming language. It makes use of the Django REST Framework to provide an API.
Nope! Emacs Org-Mode is something that has been in development for over 10 years and is an amazing project.
Vibrato Notes has a completely different set of goals and a completely different intended audience than Org.
Will there be a primitive org-mode-like plugin created? Most likely! Will there be a plugin that implements Emacs and Vim keybindings? Most likely!
Will there be an Emacs plugin created that utilizes the Vibrato API to encrypt & sync your org-mode notes to the cloud? That would be awesome.
Thank you so much for your interest in the project. It’s currently on hold for now due to me not having enough time to dedicate to the project. I hope to continue it in the near future!