Taking notes is a necessary task for many whether you are a student attending classes, taking minutes in a business meeting, or just jotting down thoughts and ideas on the go. Joplin is a free, open-source note-taking and to-do application with plenty of features to help. In this interview WebsitePlanet hears more from Laurent Cozic, Founder of Joplin on how it came about, and what is in the pipeline for the near future.
Please share the story behind Joplin: Where did it start and how has it evolved so far?
I’ve started looking into it in 2017, as I was looking at existing commercial note-taking applications, and I didn’t like that the notes, attachments or tags could not easily be exported or manipulated by other tools. This is probably partly vendor locking, partly a lack of motivation from the vendor since they have no incentive to help users move their data to other apps. There is also an issue with the fact that these companies usually will keep the notes in plaintext, and that can potentially cause issues in terms of data privacy and security.
Most open-source apps I could find were not user-friendly or appeared to be discontinued.
So I decided to create my own – initially I simply wanted my notes on my phone, with an easy way to sync with my laptop. I decided to use Markdown, which is a standard compatible with many other apps; and SQLite, an open-source database, to store the notes.
Keeping things customisable and open was always an objective – as such, the app offers an API that third-party tools can use to get or create notes, get the list of notebooks, etc. Additionally a plugin API was also developed to allow anyone to easily customise the application.
Moreover, there is since the beginning a strong focus on data privacy and security – in particular, all notes can be end-to-end encrypted. It means that notes uploaded to a server are fully encrypted, so even if that server is compromised nobody can access the content (other than the user with their password). We are also regularly in contact with security researchers who help us discover and fix security issues.
Initially, I envisioned a small project that I could maintain on the side, but it turns out there is always something more that can be added or improved in a note-taking app! And as more and more users started using it, the project became relatively big.
Eventually I decided to develop Joplin Cloud a commercial offer to improve synchronisation as well as offer features such as sharing notes with others, or publishing notes. These commercial services, combined with donations and sponsorships, allow me to work full time on the project, both on the open-source and commercial side.
What are some of the features that make Joplin stand out from other note-taking applications?
The fact that it is open source and relatively user-friendly (at least we try to make it so!) makes it stand out because it means anybody can audit the code, there’s a guarantee that for example no ads or spyware will be added, and the terms of usage won’t suddenly change. The user won’t wake up one morning and discover that only 2 or their 4 devices are now allowed to sync. Open source also means it’s a durable solution – no specific company owns the software so even if the current contributors stop working on it, it is possible for someone else to take over.
I mentioned earlier, another important aspect is the ability to easily customise the app. We have an API that is used by third-party applications – it is used for example by VSCode plugin, a Thunderbird extension, and a Safari plugin. We also have the plugin API that has allowed developer to create a rich ecosystem of plugins – we currently have 120 plugins, with new ones being regularly created. They allow for example to create a full zettelkasten system using the Backlink and Graph plugins. We also have plugins to automatically backup data, to improve the various parts of the UI, and to generally make you more productive when using the app.
Finally security and data privacy is something that is always high in our list of priorities. The end to end encryption system used during synchronisation has been continuously improved over the past 5 years. It received an informal audit, based on which the system was further strengthened. Going forward, with more and more of our data going online, we believe it’s crucial that such systems are in place to ensure that only the user, and no-one else, or no other company, can access their own data. Even major companies get hacked and when that happens the best way to protect the user’s data is to ensure it’s end to end encrypted.
For similar reasons, data durability is also an important factor – we have thousands of automated tests to ensure no bug or regression can cause data loss, and we put in place various measures to allow users to recover their data, for example via the note history features, which by default keep note revisions for 90 days (that can be increased in settings).
How easy is it to import and export to other productivity apps?
We offer importing data from Markdown files, plain text, ENEX and JEX (Joplin Export Format). Exporting is done via a number of standard formats, including Markdown and HTML. We also have a JEX export, which is a lossless format that ensures that all notes, notebooks, tags, etc, including metadata is exported. It is generally used for backup.
Additionally, the previously mentioned API can be used to export data, and it is also possible to write export plugins for more specific cases.
For the security conscious, how safe and secure is private information in Joplin?
As a free application it must be quite challenging to sustain the development and updates, how do you manage this?
It is challenging! I generally need to find a good balance between listening to user’s feedback, which is crucial to develop a good, usable application, while still keeping in mind long term priorities and maintainability of the software. Not everything can be added, either because it doesn’t fit with our goals, or it may be too complex while not bringing that much benefits. This more social aspect of listening and managing people’s expectations can be time consuming and sometimes upsetting (since there’s a lot of saying “no” to a lot of people! and not everyone takes it well). I try not to get too emotionally involved, or it would get tough quickly!
The flip side of this of course is that the community around the apps have been of great help defining and refining the product. Moreover the launch of Joplin Cloud was made easier thanks to the support from the community and the beta testers who helped find the bugs and make the service more reliable.
To sustain the development and updates, I rely a lot on automation. I prefer to spend a day automating a process if it’s going to save me 5 minutes here and there. Over time, all this really adds up and make things easier. There are still lots of manual process though – the worst offender is Apple as both their iOS and macOS releases are the most demanding, and often fail due to Apple’s changes in requirements. All this requires a lot of extra work. As an open source developer, it sometimes feel that I’m working for free for the wealthiest company in the world.
Lastly, any exciting new updates or developments that you would like to share?
Yes! For the third year we are participating in Google Summer of Code, which means 6 students are currently working on various projects to improve the app. That includes an improved UI and text editor for the mobile app; a website to showcase and browse plugins; a plugin to create a note by sending an email; and various other improvements to the desktop app and its editor.
The Joplin Cloud service that was launched in August 2021 is also being continuously improved. It offers increased performances over other sync options, and have additional features such as sharing and publishing notes. I have also recently added a way to publish multiple linked notes, which essentially means that it’s possible to publish a whole website via Joplin Cloud.
There’s a lot of other changes in progress, but less visible – for example the Joplin Cloud infrastructure will be upgraded to provide a more reliable and faster sync. There is also a lot of work behind the scene on the end to end encryption, for example to allow multiple users to share encrypted notes.