Skip to content

Instantly share code, notes, and snippets.

@Retr0ve
Created September 18, 2022 23:36
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Retr0ve/78500d7a81e61293d6294ee2b871e454 to your computer and use it in GitHub Desktop.
Save Retr0ve/78500d7a81e61293d6294ee2b871e454 to your computer and use it in GitHub Desktop.
Final report on Plugin Discovery Website Project in Google Summer of Code 2022

GSoC 2022 - Improve plugin search and discoverability

Contributor: Retr0ve

Mentors: JackGruber and PackElend

This project was to build a Plugin Discovery Website to help Joplin users to find the plugins they want easily.

What Was Done

1. Add support for screenshots in plugin manifest.json

PR: laurent22/joplin#6672

Details

  • Added screenshots field in plugin manifest.json
  • Wrote several rules in the packing script to validate the screenshots

Status: Completed and merged

2 . Separate allPossibleCategories to @joplin/lib

PR: laurent22/joplin#6754

Details

  • Refactor allPossibleCategories field from hard code to a customized json in @joplin/lib
  • Updated packing script to access allPossibleCategories field

Status: Completed and merged

3. Plugin Website

Repository: https://github.com/joplin/website-plugin-discovery

Details

  • Built a static website generator.
  • Utilized Github Action to automate the building process.
  • Used jest for testing.
  • Implemented UI using HTML, CSS(Bootstrap), and JavaScript.

Status: To be reviewed.

What's left to be done

  • Merging code from the demo repo to the main repo.
  • Implementing the comment section of the website.

Challenges and learnings

The most important thing I have learned from this project is the maintainability of the codebase. If we added too many newest cool techs, it can cause a maintenance problem in the future.

For other aspects, I learned:

  • Using jest to write unit test
  • Typescript can be helpful in maintenance
  • Trying to hear more voices from the community
  • Understand the user's demand rather than pushing them to accept your idea

In the end, I want to thank my mentors JackGruber and PackElend for sparing their valuable time to give me support and guidance. And also thanks to all the community members for giving their advice.

@Vandhithapushpala
Copy link

Hello dacheng,

I hope this message finds you well! I wanted to express how impressed I am with your code and proposal for the project. Your work has truly left a lasting impression on me, and I admire the way you skillfully handled the issues at hand. Your dedication and expertise are evident, and it's clear that you have a deep understanding of the project's intricacies.

I am planning to participate in Google Summer of Code (GSoC) 2024, and I couldn't think of a better advisor than someone with your level of experience and talent. Your guidance and advice would be invaluable to me as I embark on this exciting journey.

I would greatly appreciate the opportunity to connect with you and discuss this project further. Your insights and wisdom would undoubtedly help me make a strong contribution to the organization during GSoC 2024. Please let me know when it would be convenient for you to chat, and I'll eagerly await your response.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment