Aller au contenu principal

· 4 minutes de lecture

Proxy support

Both the desktop and mobile application now support proxies thanks to the work of Jason Williams. This will allow you to use the apps in particular when you are behind a company proxy.

New PDF viewer

The desktop application now features a new PDF viewer thanks to the work of Asrient during GSoC.

The main advantage for now is that this viewer preserves the last PDF page that was read. In the next version, the viewer will also include a way to annotate PDF files.

Multi-language spell checking

The desktop app include a multi-language spell checking features, which allows you, for example, to spell-check notes in your native language and in English.

New mobile text editor

Writing formatted notes on mobile has always been cumbersome due to the need to enter special format characters like * or [, etc.

Thanks to the work of Henry Heino during GSoC, writing notes on the go is now easier thanks to an improved Markdown editor.

The most visible feature is the addition of a toolbar, which helps input those special characters, like on desktop.

Moreover Henry made a lot of subtle but useful improvements to the editor, for example to improve the note appearance, to improve list continuation, etc. Search within a note is now also supported as well as spell-checking.

At a more technical level, Henry also added many test units to ensure that the editor remains robust and reliable.

To enable the feature, go to the configuration screen and selected "Opt-in to the editor beta". It is already very stable so we will probably promote it to be the main editor from the next version.

Improved alignment of notebook icons

Previously, when you would assign an icon to a notebook, it would shift the title to the right, but notebook without an icon would not. It means that notebooks with and without an icon would not be vertically aligned.

To tidy things up, this new version adds a default icons to notebooks without an explicitly assigned icon. This result in the notebook titles being correctly vertically aligned.

Note that this feature is only enabled if you use custom icons - otherwise it will simply display the notebook titles without any default icons, as before.

Improved handling of file attachments

Self Not Found made a number of small but useful improvements to attachment handling, including increasing the maximum size to 200MB, adding support for attaching multiple files, and fixing issues with synchronising attachments via proxy.

Fixed filesystem sync on mobile

This was a long and complex change due to the need to support new Android APIs but hopefully that should now be working again, thanks to the work of jd1378.

So you can now sync again your notes with Syncthing and other file-based synchronisation systems.

And more...

In total this new desktop version includes 36 improvements, bug fixes, and security fixes.

As always, a lot of work went into the Android and iOS app too, which include 37 improvements, bug fixes, and security fixes.

See here for the changelogs:

About the Android version

Unfortunately we cannot publish the Android version because it is based on a framework version that Google does not accept. To upgrade the app a lot of changes are needed and another round of pre-releases, and therefore there will not be a 2.9 version for Google Play. You may however download the official APK directly from there: Android 2.9 Official Release

This is the reality of app stores in general - small developers being imposed never ending new requirements by all-powerful companies, and by the time a version is finally ready we can't even publish it because yet more requirements are in place.

For the record the current 2.9 app works perfectly fine. It targets Android 11, which is only 2 years old and is still supported (and installed on millions of phones). Google requires us to target Android 12 which only came out last year.


Discuss on the forum

· Une minute de lecture

Joplin is an open source note-taking app. Capture your thoughts and securely access them from any device.

We are looking to hire two JavaScript software developers to work on the desktop, mobile, and server applications. All those are built using modern technologies, including React, React Native and Electron with a strong focus on test units.

You need to demonstrate some experience with at least some of these technologies, and willing to learn more and touch various different projects.

You will be part of a small team, so you will have an opportunity for a high-impact role, targeting hundreds of thousands of users.

If you're interested please contact us at job-AT-joplin.cloud

No agencies please.


Discuss on the forum

· 3 minutes de lecture

If you watch the Joplin source code repository, you may have noticed a lot of Renovate pull requests lately. This Renovate tool is a way to manage dependencies - it automatically finds what needs to be updated, then upgrade it to the latest version, and create a pull request. If all tests pass, we can then merge this pull request. So far we have merged 267 of these pull requests.

Updating Joplin packages was long due. It is necessary so that we don't fall behind and end up using unsupported or deprecated packages. We also benefit from bug fixes and performance improvements. It is also important in terms of security, since recent package versions usually include various security fixes.

We used to rely on a tool called "npm audit" to do this, however it no longer works on the Joplin codebase, and it was always risky to use it since it would update multiple packages in one command - so if something went wrong it was difficult to find the culprit.

Renovate on the other hand upgrades packages one at a time, and run our test units to ensure everything is still working as expected. It also upgrades multiple instances of the same package across the monorepo, which is convenient to keep our code consistent. It also has a number of options to make our life easier, such as the ability to automatically merge a pull request for patch releases since this is usually safe (when a package is, for example upgraded from 1.0.1 to 1.0.3).

Although Renovate automates the package upgrades it doesn't mean all upgrades are straightforward - our tests won't catch all issues, so the apps might end up being broken or cannot be compiled anymore. So there's manual work involved to get everything working after certain upgrades - for the most part this has been done and the apps appear to be stable so far.

This will however be an important part of pre-release 2.10 (or should it be 3.0?) - we hope that everything works but we may need your support to try this version and report any glitch you may have found. As always pre-release regressions have the highest priority so we aim to fix them as quickly as possible.


Discuss on the forum

· 3 minutes de lecture

As some of you may know Joplin Cloud so far has been operating under my own single-person limited company in the UK. This was mostly for convenience since it meant I could get things going quickly without having to setup a special structure for it.

Now that Joplin Cloud is becoming more mature however a proper company, simply called Joplin, has been created. This company will be based in France, and will be used mainly to handle the commercial part of the project, which currently is mostly Joplin Cloud. I'm still heading the company so there won't be any major change to the way the project is managed.

What does it mean for Joplin Cloud?

There will be no significant change - the website ownership simply moves from one company in the UK to one in France. The new company is still owned by myself so I will keep following the same roadmap.

What does it mean for the open source apps?

On the short term, the only visible change will be moving the non-open source assets, such as logo or trademark from the UK company to the French one. So expect a few changes in copyright notices here and there.

In the medium to long term, I would like to hire one or two software developers to help me with the Joplin Cloud development, because we reached a point where managing the whole project is difficult for a single person, so some help is needed. Some of their work might also touch the open source apps since both are quite related - but of course that work will remain open source too.

As a general rule, there will be a permanent commitment to keep the apps open source and to derive value from Joplin Cloud/Server.

Longer term I would like to create a non-profit organisation to handle the open source applications and to make decisions about the project, as well as to decide how to allocate any funding we receive (for example from GSoC).

Looking forward

Those past 6 years of developing Joplin have been an exciting and rewarding experience, thank you to all of you of the friendly and vibrant Joplin community for your contribution toward making Joplin the software it is today, and looking forward to continuing the journey together!


Discuss on the forum

· Une minute de lecture

We are glad to announce the first Joplin Meetup that will take place on 30 August 2022 in London!

This is an opportunity to meet other Joplin users as well as some of the main contributors, to discuss the apps, or to ask questions and exchange tips and tricks on how to use the app, develop plugins or contribute to the application. Everybody, technical or not, is welcome!

We will meet at the Old Thameside Inn next to London Bridge. If the weather allows we will be on the terrace outside, if not inside.

More information on the official Meetup page:

https://www.meetup.com/joplin/events/287611873/


Discuss on the forum

· 2 minutes de lecture

As always a lot of changes and new features in this new version available on both desktop and mobile.

Multiple profile support

Perhaps the most visible change in this version is the support for multiple profiles. You can now create as many application profile as you wish, each with their own settings, and easily switch from one to another. The main use case is to support for example a "work" profile and a "personal" profile, to allow you to keep things independent, and each profile can sync with a different sync target.

To create a new profile, open File > Switch profile and select Create new profile, enter the profile name and press OK. The app will automatically switch to this new profile, which you can now configure.

To switch back to the previous profile, again open File > Switch profile and select Default.

Note that profiles all share certain settings, such as language, font size, theme, etc. This is done so that you don't have reconfigure every details when switching profiles. Other settings such as sync configuration is per profile.

The feature is available on desktop only for now, and should be ported to mobile relatively soon.

Save Mermaid graph as PNG/SVG

This convenient feature allows exporting a Mermaid graph as a PNG or SVG image, or allows copying the image as a DataUrl, which can then be pasted in any compatible text editor. Thanks Asrient for implementing this!

Publish a mini-website using Joplin Cloud

Joplin Cloud now supports publishing a note "recursively", which means the notes and all the notes it is linked to. This allows easily publishing a simple website made of multiples and images.

To make use of this feature, simply select Also publish linked notes when publishing a note.

And more!

In total there are 38 changes to improve the app reliability, security and usability. Full changelog is at https://joplinapp.org/help/about/changelog/desktop


Discuss on the forum

· Une minute de lecture

We are glad to announce that Google allocated us six projects this year for Google Summer of Code! So this is six contributors who will be working on various parts of the apps, both desktop and mobile, over the summer.

Over the next few weeks, till 13 June, will be the Community Bonding Period during which GSoC contributors get to know mentors, read documentation, and get up to speed to begin working on their projects.

Here's the full list of projects, contributors and mentors.

Project TitleContributorAssigned Mentor(s)
Improve PDF previewer of JoplinasrientRoman, JackGruber
Implement default plugins on desktop applicationmak2002CalebJohn, Laurent
Mobile — Easier EditingHenry HDaeraxa, CalebJohn
Improve plugin search and discoverabilityRetr0veJackGruber, Stefan
Tablet Layout ProjectTolu-MalsLaurent, Daeraxa
Email PluginBishoy Magdy AdeebStefan, Roman

Discuss on the forum

· Une minute de lecture

The "Contributor Proposals" phase of GSoC 2022 is starting today! If you would like to be a contributor, now is the time to choose your project idea, write your proposal, and upload it to https://summerofcode.withgoogle.com/

When it's done, please also let us know by posting an update on your forum introduction post.

If you haven't created a pull request yet, it's still time to create one. Doing so will greatly increase your chances of being selected!


Discuss on the forum

· 2 minutes de lecture

For the third year, Joplin has been selected as a Google Summer of Code mentor organisation! We look forward to start working with the contributors on some great new projects. This year's main themes are:

  • Mobile and tablet development - we want to improve the mobile/tablet application on iOS and Android.
  • Plugin and external apps - leverage the Joplin API to create plugins and external apps.
  • And of course contributors are welcome to suggest their own ideas.

Our full idea list is available here: GSoC 2022 idea list

In the coming month (March 7 - April 3), contributors will start getting involved in the forum and start discussing project ideas with the mentors and community. It's also a good time to start looking at Joplin's source code, perhaps work on fixing bugs or implement small features to get familiar with the source code, and to show us your skills.

One difference with previous years is that anyone, not just students, are allowed to participate.

Additionally, last year Google only allowed smaller projects, while this year they allow again small and large projects, so we've indicated this in the idea list - the small ones are 175 hours, and the large ones 350 hours.