GSoC idea - Support for multiple profiles

It seems that there's a huge misconception of the idea of several profiles.

The current status of Joplin is the following: You start Joplin for the first time and a profile is automatically created. This profile holds all your settings, which includes the single sync target for that profile. This won't change. There will be only ONE sync target per profile.

There's an unsupported argument --profile <path> which allows to start Joplin with a new profile, which will be created, in case it does not exist in <path>.

So you can start Joplin with different profiles in different paths. Those are independent from each other and you can't start 2 instances of Joplin (with either the same or the a different profile) at the same time.

Now here's the idea of this project:

Joplin should allow people to manage these profiles within the application (desktop, mobile, cli). There's a setting where one can choose the profile and that's the profile that is used when starting Joplin.
This setting is not supposed to be in the preferences, but maybe a dropdown box right of the search bar. So as soon as you switch the profile, Joplin is restarted with the new profile. I still think there's a way to do this without actually restarting the app, but that's a point that has to be figured out during the project.

This does not change the fact that no more than one instance of Joplin can run at the same time. This is not part of the project - but could be. As a next step, I envision the possibility of starting two or more instances of Joplin with different profiles.

So, to summarize:

There are 2 distinct (but not mutually exclusive) concepts:

  • multiple profiles
  • multiple instances

This project idea is about multiple profiles.

I hope I was able to clear this up a bit.

9 Likes