Project ideas for GSoC 2025

Hello Plone people!!!

As the Stark family used to say in the famous Games of Plones TV show, "GSoC is coming" (I am not making this up, and fun fact: Aria Stark is the one who invented the HTML aria attributes, true story).

Anyway…

I need you to submit project ideas for this new GSoC season. To be honest, finding ideas is usually not too difficult for our community. What is more challenging is to find mentors, because people who are already active in the community get more and more tasks to do (contributing, being involved into different teams, or in the board, running sprints, etc.), and they end up being extremely busy, and mentoring a GSoC student is more they can reasonably handle.

My idea for this year would be to find Plone developers who are not very active in the community to become GSoC mentors. If a colleague of yours (or yourself) has some Plone knowledge, but is a bit shy, is a bit nervous about communicating in english, never goes to sprints or conference, well that's the person I am looking for :laughing:.

Maybe you could encourage them to consider becoming a mentor!

Mentoring a GSoC student is not difficult, it does not require enormous social skills, and is an excellent first step to become active in the community (or not, if you really do not want to get involved, that's fine too actually).

Remember, GSoC projects can be anything you can imagine as far as it is not too long to implement. It can be smart features, like last year, we had:

  • RSS Support Add-on in Plone 6
  • Decoupled editor for Plone headless
  • AI/ChatGPT image description/alt text generator

But it can also be more low-level, as 2 years ago we had a purely technical topic: Refactor Class Components to Functional Components.

So please, let me know!

Thank you!!!!!!!

5 Likes

One idea: an implementation of Keywordmanager for Volto. Basically, it is a tool to manage tags/keywords on a site. Over time, as multiple people tag content items, it is almost inevitable that there will be duplicates ("labor" vs "labour", various spellings of countries, etc).

Personally, I am sort of convinced that a way to handle (merge, change, delete) keywords should be more or less a core feature, but it's probably safer to have it as add-on first.

The UX for Products.Keywordmanager has always been a bit clunky, but functional. As it targets mainly site admins or 'senior editors', it doesn't have to be super userfriendly but should cope with hundreds or thousands of keywords.

There could be ways to help (like marking words that are spelled similarly) but ultimately it is an editor decision to say that e.g. "global warming" and "climate change" should be merged as tags, or not.

3 Likes

This is totally off the top of my head, and it's not pure development, but a mix of dev and documentation: streamline/simplify the Plone installation instructions, which are spread out over docs.plone.org, training.plone.org, plone.org, crazy nut bar places like Plone in a Box™, and they have different target audiences to consider: back end devs, front end devs, add-on devs, I Just Wanna Have Fun And Use Plone people, with docker and without docker :wink:

3 Likes

We have collective.exportimport (or is it importexport? I cannot remember now, thanks @pbauer) but can we have it be GUI based so mortals can use it?

More current Volto themes!

Workflow manager for Volto!

It's probably just me not knowing how, but I have a site that is a clone of 2024.ploneconf.org, and it seems that to update the logo I have to change a file on the file system and rebuild the front end. Surely there's an easier way...?

Easy sharing of content to all 999 social media networks.

Easy inclusion on a Plone site of all 999 possible social media streams/posts

More Plone distributions

4 posts were split to a new topic: GSoC 2025 idea discussion: social media sharing

Here are the UI mockups from the last time this was attempted as a GSoC.

Certainly building on top of the excellent exportimport and using react would make this a lot more achievable now. I still think having it able to use csv in addition to json would be a great way to make it more useful to mortals. At least when the usecase is bulk updates or importing external data rather than exporting from one plone site back into another.

1 Like

An content warning system for when content violates custom rules, such as WCAG guidelines, design system rules or other organisation specific guidance. Similar to content rules but warning during edits as well as reports across the whole site.

1 Like

Repeater block.
The ability to reuse blocks types as the items in a listing to make listings more powerful. e.g. teaser listing, image listing etc.
In addition the ability to have sources plugins so listings can be other kinds of data not just plone search, for example social media posts, RSS feeds, related/recommended items to this content or links to search pages with different facets preselected.

Or alternatively, rather this being it's own block type, it could be a function of any container block type where you can switch the container to automatic/repeater mode by adding a source instead of manually adding. So sliders, accordians, grids, tables could all become listings

1 Like

Hello @polyester sir,
This is a great suggestion for an add-on! To handle duplication detection effectively, we can leverage a library like Levenshtein or FuzzyWuzzy to identify similar tags. The tool could then allow admins to merge, edit, or delete these duplicates directly through an intuitive interface. This approach ensures efficient management of keywords, even in large-scale scenarios.

I believe this implementation aligns well with the project idea. Looking forward to your thoughts!

Best regards,
[Kartikay Bhardwaj]

We have https://pypi.org/project/collective.siteimprove/0.1b2/ GitHub - collective/collective.siteimprove: Siteimprove.com integration for Plone and I had worked briefly with a colleague at Wildcard Corp. to create something that would immediately provide WCAG related feedback, but on Plone Classic. It was a relatively small amount of JS that needed to be invoked.

I was thinking of generalising these to be a rule based system and UI similar to content rules. Except it would be rules about blocks and content.
Such that implimenting certain WCAG feedback that relates to your custom blocks is easier.
Or custom design system rules like "this block should always have this special heading block before it"

2 posts were split to a new topic: Bug in changing site logo (Volto)

I'm not sure how much work it would be, but we should have this working with Plone: https://akismet.com

And Plone should be listed here (eventually): Plugins and libraries – Akismet

Here's a pain point for me: I'm not smart enough to get pas.plugins.auth working... it's quite finicky. So: could we have a project that has it "preconfigured" to work with the most common authentication sources? e.g. GitHub, Google, Azure whatever-they're-calling-LDAP-this-month, etc.? Okta, and all the other centralized authentication services that are popular nowadays?

2 Likes

Would you be interested in helping specify the use cases for such a project? For example, would it be for basic testing, full production readiness, or a reference implementation?