Hello Everyone, I am Mayank Bondre from India. This summer, I will be working on implementing default plugins support on desktop with Joplin.
Introduction
Joplin’s desktop app has a wide range of plugins available to install that the community has built.
And some plugins provide a very core functionality, for example Backup, that we would want to be shipped to every user.
To achieve this, we will be having some plugins as default, i.e. user won't need to download them separately.
Project Goals
There are 2 main goals for this project:
- Make a script to packages plugins with the Joplin app
- Implement installing packaged plugins on the initial startup
Working Plan
Pre-GSOC (April 19 - May 19):
• Make Pull Request for filter for plugins [ GitHub ] [ Forum ]
• Publish the Font Size shortcut plugin [ GitHub ] [ Forum ]
Community Bonding (May 20 - June 12)
• Discuss my project more with the community and my mentors as to get more suggestions.
• Set up my own fork of joplin/plugins repo to test GitHub actions on.
• Set up my blog on GitHub to report my progress.
Coding Phase 1 (June 13 - July 25)
Week 1-3
• Implement function to check if its first-app-start
• Implement installing the default plugins on first startup
• Make a weekly blog post about progress on GitHub.
Week 4-6
• Update plugin’s manifest to include private _built_in field
• Buffer week
• Make a weekly blog post about progress on GitHub.
Coding Phase 2 (July 26 - September 12)
Week 7-9
• Implement a script to bundle the plugins while Joplin desktop app is being built.
• Implement default settings for plugins
• Make a weekly blog post about progress on GitHub.
Week 10-12
• Make any improvements from the feedback received.
• Write a weekly blog post about progress on GitHub.
• Buffer week
• Make final GSOC project report.
After GSoC / If my project got completed earlier
- Implement installing plugins without restarting the app
About this post
This post will serve as a live specification for this project, I will be updating it regularly.
Feel free to give any suggestions you have.