Future of Joplin


1 Like

I did not realize the VSCode plugin used the settings of Joplin. My bad. Thanks.

Regarding this point, I am also thinking about whether it is better to modify the api: modify the status of the note according to the id (whether it is opened in an external editor) and return the location of the note, and then the plugin itself specifies to open it with vscode @laurent

I guess the API end point could accept another parameter?which would be the editor command and argument,eg {"path":"/usr/bin/subl", "args":"-w"} ?

Not so, because there are two issues involved in opening directly here

  1. Only one default editor can be set. If there are multiple editor plug-ins, it will not be supported
  2. Opening in the editor by default will cause windows to switch and lose focus (here is the dirty code I wrote to solve this problem https://github.com/rxliuli/joplin-vscode-plugin/blob/e97fb07508cd35ab59dbe076141ef11875cbc03a/src/service/JoplinNoteCommandService.ts#L123)

So I think it’s good to turn on the synchronization and let the outside decide what to do. Whether it’s opening or previewing, it can be done, so that there is a need for this in the future and there is no need to add it here (in short, this api function is not single)

I use Git for a lot of things, and before I picked Joplin I was insistent that I wanted a tool built on top of Git. But, the ability to have automatically synced notes across multiple devices, including mobile is wonderful. It has worked well without headache.

Sync is what brought me here in the first place. I have stuck around because it is so customizable. I have rearranged the interface in CSS, and I have built a command line tools to automate my daily notes. Plus I am really excited about the plugin system that's being worked on, lots of cool ideas there. And the final win is that the community is friendly and there is consistent progress. Excited for the future!


This is what I am going now as well.... using some shell scripts to perform functions on the selected notes and sending the results to my Git folders for publish to web. The VSCode plugin is a complete game changer for me. I never knew it existed until I was introduced to it here. I hope it becomes a part of Joplin in the future.

1 Like

How on earth would someone think Atom as a similar app to Joplin?
This is one of the strangest things i've seen in this forum so far.

I think it really depends on how you look at it and how you use it. Since learning of the VSCode extension, I have not opened Joplin. In fact, there are other note taking applications that are build around Git, and are similar in design to Atom, just with a slim feature set.

I believe those who do not see the similarity are accustomed to maybe the web clipper for example. For me use, taking notes, VSCode (and Atom) are far superior to Joplin when it comes to the editor. So now we can break down the differences....

  1. Joplin uses a database to store the notes, which has advantages and disadvantages. For example, on the positive side it is better able to handle searches with large amounts of notes. On the negative side, it is harder for other softwares to work with the data as it is in a database vs text format.

  2. The web clipper it is hard for me to comment on as I do not use it. All I can say is that if you need the web clipper, then yes, you need a software that has one, there are a few.

  3. Joplin makes it easier to access notes from mobile. I have no issues accessing any of my other information, whether it be on Git, Google Docs, etc, but I will agree that more effort and knowledge is required vs simply installing the mobile app and syncing.

  4. Some say a unique feature is the syncing, but to that, I disagree. Using Atom or VSCode, I can sync just fine. I can also not even store data local and access the files almost 100% remotely, using only a temp file local while editing.

  5. The editor in Joplin cannot come even close when compared to Atom or VSCode. Even if you restrict your thoughts to using Atom and VSCode only to edit markdown, there is still no comparison at all.

  6. The structure I believe is last item. Relating to #1, Joplin uses a database with relations to build its note structure. The structure can be mimicked in Atom or VSCode... making the primary notebook a project or directory and making sub notebooks directories and files in the project, or simply folders and files within the parent directory. As mentioned in #1, there is a difference on working with the data here. In the database, all the notes are related, you can look through all via a query of your choosing. Using Atom or VSCode, your data is all segmented, each note being contained in a separate file (some note applications do this as well). While you can still search the notes in Atom or VSCode, it is far more difficult and time consuming to do.

  7. Lastly, there is a negative to Joplin vs Atom or VSCode, and that is history and tracking. Yes, Joplin can keep note history for x number of days, but I do not think anyone can debate that any type of diff tracking is far superior as it relates to a detailed history.

That is how I understand it, considering the points I had when starting this post and taking into consideration the comments from others. My opinion is that Joplin is like an Atom or VSCode Lite, but adds features in certain areas to make it a specialized application vs a more universal one. The simple fact that you can use Atom or VSCode to work with the Joplin notes clearly shows the applications are not far off in their capabilities.... but they are designed with different intent and focus for its user.

1 Like

This is also the reason why I made this vscode extension: to solve the trouble of editing, and include some necessary functions (basic file operations, search/rename/delete), but also avoid adding unique functions (that is, functions not included in joplin) .
So the question is, why don't I use a note-taking app based on vscode? The above is of course correct, but I still need to add: vscode is not a note-taking tool, it has some inherent limitations, making it actually more troublesome to extend new functions (such as a plug-in system, a plug-in system ( *≧▽≦)ノシ))), so considering that joplin needs to continue to expand new features, I will continue to use it.


These are some of the functions I want to achieve after considering

Thanks for sharing the reasons you do not fully use VSCode in place of the Joplin interface. I cannot say I have encountered such issues yet, but I have only been using it for a day.

I am looking forward to future Joplin enhancements.

Hi Amanda, just curious about those for some inspiration on possible workflows.

Although this was not directed to me, I can share the scripts I made to assist in my issues....

I have a series of notes that I want to publish online. I made a script so that after I export to HTML, copies over only those HTML files that are new or changed, and copies only images over that are new while also applying a compression for web to them. This is a challenge for me... because:

  1. I track this in Git, and
  2. FTP resources transferring same files is very wasteful once you get into the 500MB area.
1 Like

Ok, I have a couple, let me clean up and document and I'll share.


You will encounter, I will briefly list some

  1. Unable to drag and drop notes to the new directory (this is due to the current vscode plugin api limitation)
  2. Unable to drag and drop files (such as pictures) to the editor and automatically create references (https://github.com/microsoft/vscode/issues/5240)
  3. The default shortcut key setting is more troublesome, you need to consider the conflict with the existing shortcut keys (this is why there is still no shortcut key for search notes)
  4. More...

Thanks for explaining. i think it would be useful for many to create a section with this sort of information, updated as needed with changes. You created this helpful extension, uxamanda created some "command line tools", and inspired by that, I have just finished my first bash script to automate one of my procedures. I will admit ... this conversation has caused me to view Joplin in a different way...

Some items of thought....

  1. A feature to "publish to web". While the software does have a HTML Export feature, this is not really efficient for web publishing. Some missing features are image optimizing and only changing the HTML file on change or new.... this I am still thinking through. I believe this can be done by utilizing the note date as the HTML file date will be unreliable.

  2. Does Joplin do any sort of database maintenance on its own, or does it just read and write and leave the database be? I use many applications with such databases (even GitHub Desktop) and can sort of vision a middleware of sorts to facilitate cross database transactions. I sort of do this now with a software called tinyMediaManager (tmm) where I use SQLite to tabulate and store data based off of query between tMM and trakt.tv.

  3. I dislike the sync feature. No offense intended as I can see why it is how it is and how useful it is. My thought is that if the data starts in a database, the sync process should keep it that way. Say, for example, I have a MySQL database on a host, I can have that database mirror the SQLite data, and in turn mirror it to the mobile (or other) clients. I do a similar setup like this on the software I use for business. Any client opening said data in an edit mode creates a lock on the file, leaving it read only for all others to resolve the inherent problem. While the data does get cached local, there is always a server check for lock.

  4. I wanted to add this frustration, although it is very minor in the scope of things. When you have a notebook with sub notebooks ,currently I can click and drag the sub notebook out and make it a parent notebook, or a sub of another notebook. This is sometimes difficult to use. It would be nice to have a Notebook Preferences dialog where you can set the parent and attributes of the notebook, basically just directly editing the database relationships without the risk of doing it manually.

  1. Finally, this is more a note to @rxliuli - I am looking at using Atom to directly manipulate the database vs using the API of Joplin.

@thwaller, @uxamanda. I am just gathering ideas of what kind of workflows can be done, so any high-level description will suffice. But I am sure any code will be handy for the community here. Perhaps, this should go to a separate dedicated topic. Currently, I am thinking of writing scripts for task/project management.

1 Like

Here's where I, more or less, echo what others have said.

Joplin is a notes management and notebook application (though I use it also for vastly longer documents than mere "notes"—the novel I a working on, for example). Atom can do a lot of things. But so can vim, or even gedit, or name your editor. I can replicate Joplin with any number of tools. VIM + a directory structure + pandoc + Keybase for the encrypted cloud storage ... that pretty much duplicates the desktop application.

But that doesn't sync with a mobile application. I would have to think how I would replicate that. Plus the web-clipper. Hmm . . .

And no tagging. No nice UI. I suppose I could use something other than VIM or gedit for a nicer UI. Ghostwriter could be used for the editor instead. I don't use the WYSIWYG but I am sure there are other such editors out there. But all of that is a kludge.

Joplin is focused on its use case and it integrates functionality associated to that use case. That's why it exists.

I am rather techy. Vim is my default general editor in a pinch. But I also use gedit, atom, and others. And I use Joplin. A lot. But not just as an editor. Not really. It's a notebook. A whole shelf of notebooks. I would say that Joplin more or less houses and archives my brain. The dedicated notebook use case is extremely valuable to me, and this is why I also throw Laurent a few bucks in donations every single month (and I encourage others to do so as well). Joplin is awesome.


I am starting to understand that the mobile app portion is a huge thing for users here. I have to again admit this has never been a factor for me. I had tried this once on a tablet, but found that it did nothing but complicate things... note went missing, etc. It is most likely I just encountered some sort of odd issue (or user error), but I left it after that.

I will also me trying the web clipper as many seem to mention it. I did already install it and have a question ... if I clip a page, is it possible to have it also add the URL of the content source provided either at the top or bottom? I was looking for an option to turn this on and off. I will need to play with this more.

I do not think anything will ever replace the applications you mentioned like VIM. In my first advanced learning of computers, I used EMACS on a Unix system. As a Linux user now, there is so much time spent in the terminal that the now "old school" stuff is still very handy ... like piping to a text file.

This comment I really appreciate. It seems this logic is also living with the VSCode plugin.... using Joplin more as a backend vs a frontend.

Thanks to all, you have given me a lot of ideas and quite honestly solidified my use of Joplin. Please do not consider this thread closed... every idea someone can share is useful. I also want to share, mostly to @laurent .. since I first started using Joplin, I have seen a lot of changes. As a user of mostly all open source softwares, this is one of few projects that are this active. There are many OS packaged tools that do not even get updates to stay current. I am also willing to provide content for a "power users" section as mentioned in prior posts. While I am no expert, I have no issues sharing the code I use to automate my tasks, and would also welcome feedback from others and improvement is always possible.