GSoC 2018 Ideas: SiteImprove plugin

This is one post in a series to begin focused discussion about ideas that came out of our 2018 GSoC Brainstorm.

Please use this post as a place to begin to discuss this idea more in depth.

This idea was suggested by @tkimnguyen, and @robzonenet might be a good mentor.

The description: "create a integration add-on for Plone similar to those listed here for other CMS systems". Having such a plugin would provide Plone with a listing in a very visible public location, and would help clarify that we are on a footing with Drupal and other CMSs.

Dig in, Plonistas, and shine this one up a bit.

1 Like

SiteImprove integration for Plone & Castle CMS was the thread where the idea was first proposed.

SiteImprove helps you improve the quality of a web site, in many measures, including accessibility compliance but also more mundane things like identifying broken links and spelling mistakes.

Wildcard Corp. has donated SiteImprove scanning of and so let me know if you'd like to see a copy of the report generated.

I think this idea is a really great one. I love the thought of having a Plone plugin listed right next to the ones for other CMSs. We do not do anywhere near enough of this kind of work.

Offhand, @tkimnguyen, how much work would you expect a fully-functional plugin to take?

It might not be a lot of work on its own... I've seen accessibility compliance checkers essentially require insertion of one JavaScript library and call.

To make for more work :slight_smile: we could propose taking Castle's content quality check feature and move it into Plone... that's the dialog that pops up when you transition an item; it checks for common editing errors like no summary, or too short a summary, or too long a title, or linking to private content, etc.

I certainly think a plugin archetecture for quality checkers in plone is good GSOC. Perhaps can support both mandatory checks on transition, on save and button that can be run anytime inside tinymce?

That's a fantastic idea, @djay. A generalized plugin architecture with this SiteImprove plugin as one of the initial implementations, the Castle one too...

Love it!

I love both these ideas - the SiteImprove plugin with that nice high visibility listing, and the Castle content quality check popup (and the plugin architecture). I would advocate for the quality check to include content accessibility (alt tags etc.), if it doesn't already (to enhance our promise of being an accessibility-friendly CMS.)

Back in 2015, @polyester came up with the idea of an accessibility control panel, which would be a great addition - a rollup report for site content, with links to pages that need improvements in various categories. Could also turn on and off a setting making alt tags mandatory (and other stuff like that). He could elaborate. I like the idea of separating out a control panel for content accessibility from another one for content quality, maybe Castle already provides that.

Regarding SEO checks, is there anything useful that could be taken from the SEO plugin quintagroup.seoptimizer? For example, it can be a nice feature to have a separate field for description-as-shown-on-the-page vs. description-the-meta-tag. (And being SEO friendly is another thing we advertise for Plone.)

Nice idea and concept, if necessary I would volunter as a mentor or backup.

All right, who's interested in drafting the proposal? :slight_smile:

Look here for a cookbook on how to integrate the Siteimprove Plugin into Plone (or any other CMS) :

1 Like

Hello everyone,
I am Rohit Singh Malik 2nd year undergraduate student. I currently have experience in python and javascript programming and will be happy to learn new skills like plone and SEO. I like this idea and I am interested in working on this project. Any kind of help from where to start will be greatly appreciated. Looking forward for your help.
Thank You

Hi @singhrohit41,

I've already spoken to you on another forum post, but I'll repeat my advice here. Please get started by reading and following the basic instructions at the top of this community forum post. You’ve already taken the first step!

Once you've learned a bit about developing on Plone and worked on an issue or two from our tracker, that will be a good time to start talking about working on a specific proposal like this one. You'll want to get a bit of Plone under your belt before you begin though, so please do follow the instructions on that other post.

Thanks @cewing I will be acting on your advice.

hello @cewing I completed mastering plone development training.
I would like to know more about this project on which it particularly focus. If there is more stuff you want me to do before getting into this project, please tell me I would like to work on your advice.
Thank you

Good work, @singhrohit41! You're showing some great initiative. Now that you've completed some training it might be a good time to start thinking about making a contribution or two to Plone. You can begin by looking at the list of beginner issues we keep on github.

Some of the issues there will relate to core packages, and some will relate to packages in the "collective" repository, which holds add-ons that the community has contributed to Plone. You can always contribute to the collective repository, though you'll need to join with us.

Do be aware that we have a contributor's agreement we ask you to sign before you contribute code to our core packages. It is the way we ensure that Plone will always remain free and open software. It takes some time to get this agreement signed and get permission to make contributions, so you should start that process soon.

thanks @cewing I'll check it out!

hello @cewing I saw some issues and created a PR. I would also like to understand this idea in depth and want to start working on it. Few pointers will be greatly appreciated.

I'm the program coordinator, @singhrohit41, so I'm not really in a good position to give you pointers on a specific project. I can, however, point to the other folks who've expressed opinions about this topic, @tkimnguyen, @sally, @loechel and @djay. I would suggest that a good first step would be to begin speaking to them about how they envision a project like this working. You might also wish to learn more about some of the plugins that have been suggested: SiteImprove, Accessibility Compliance checkers, SEO checking, and so on. All of these are aspects of evaluating and improving content quality in a website. Discussing the idea with the community is a great next step toward building a proposal that will really work for you and for us.

1 Like

Thanks @cewing for the info. I will be working on it. and it will be great if @djay, @tkimnguyen, @sally, @loechel can also share some valuable pointers about the project and how they envision working of this project to get me at the good position to work on it.

@singhrohit41 thanks for your interest! While this project idea started as an implementation of one specific vendor's "content quality check" tool ( it would be more interesting to create a general framework for feeding the current content item (ie. the page or folder or news item or whatever you're viewing) through a process then displaying the results of that process to the user. I can imagine there being possibly more than one such process, so the framework would have to let someone register a new process, maybe set the order in which they would run, and then include a notification area to allow the user to view the results of the processing and maybe mark items as done/fixed or to be done later...

CastleCMS has a number of content quality checks built into its workflow transition dialog

Plone Foundation Code of Conduct