Bug 35837 - Add a fully fledged plugin store to Koha
Summary: Add a fully fledged plugin store to Koha
Status: In Discussion
Alias: None
Product: Koha
Classification: Unclassified
Component: Architecture, internals, and plumbing (show other bugs)
Version: Main
Hardware: All All
: P5 - low enhancement
Assignee: Bugs List
QA Contact: Testopia
URL: https://bugs.koha-community.org/bugzi...
Keywords:
Depends on:
Blocks:
 
Reported: 2024-01-18 15:31 UTC by Martin Renvoize (ashimema)
Modified: 2025-04-03 23:22 UTC (History)
14 users (show)

See Also:
Change sponsored?: ---
Patch complexity: ---
Documentation contact:
Documentation submission:
Text to go in the release notes:
Version(s) released in:
Circulation function:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Renvoize (ashimema) 2024-01-18 15:31:23 UTC
HEA hasn't seen much love of late.. it would be great to send back statistics on plugins used in an installation.
Comment 1 Martin Renvoize (ashimema) 2024-07-25 05:48:26 UTC
This likely makes more sense as part of the upcoming plugin store that's been proposed
Comment 2 Pedro Amorim 2024-11-05 16:31:05 UTC
Hi all, updating this bug to plugin store and setting "In Discussion" for now as the project is currently an MVP and testers/discussion would be great.

The store repo:
https://github.com/PTFS-Europe/koha-plugin-store

The koha client branch:
https://github.com/PTFS-Europe/koha/commits/plugin_store/

We're currently hosting a dev environment for the store at:
https://plugin-store.koha-ptfs.co.uk/

If you check out the Koha client branch above you should be able to test, or reach out if you're finding it hard or want to add to the discussion.
Comment 3 David Cook 2024-12-09 01:05:44 UTC
One question... why does the test environment show Email and Password in the Users List to anonymous users?
Comment 4 Pedro Amorim 2024-12-09 10:34:05 UTC
(In reply to David Cook from comment #3)
> One question... why does the test environment show Email and Password in the
> Users List to anonymous users?

Dev work leftovers. Its initial purpose was to make it obvious that passwords are not stored in plain text.
Users are not planned to be listed to others.
Comment 5 Pedro Amorim 2025-04-03 14:44:29 UTC
TODOs agreed at Koha Hackfest 2025

Plugin store Koha client:
Immediate:
1) Search by plugin Name and Description
2) Sort by plugin Name, Author
3) plugin store permission to allow viewing of store plugins
4) plugin store permission to allow installation of store plugins
5) Display the number of downloads of a plugin, display the number of downloads of a release
6) Display link to plugin github repo on the Koha client
7) Have a plugin metadata entry for 'documentation' and make it recommendable i.e. provide message on the plugin submission flow
8) Move the plugin store app to the koha-community github namespace

Later:
1) Display plugin reviews
2) Display start ratings
3) Display translations

Plugin store mojo app:
Immediate:
1) Implement plugin listing pagination/filtering on webpage
2) Implement plugin listing pagination/filtering on REST API
3) Add Github registration/authentication for users and drop previous traditional registration/authentication method
4) Users no longer submit a plugin through github URL, they should pick a repo from a list of their own, or from organizations they belong to
5) Make it possible for an authenticated user to delete a plugin or a plugin release
6) Remove display of users on webpage
7) Drop thumbnail functionality. Planned for later.
8) Add a contact link for developers to ask for login access
9) Add maximum_koha_version metadata check / make it recommendable i.e. does not block plugin submission

Later:
1) Support plugin repos from gitlab (currently only from github)
2) Add Gitlab registration/authentication and allow sub
3) When a thumbnail feature exists in the core Koha plugin system, the plugin store should support displaying.
4) Documentation page including: How to package your plugins to include Icons/Thumbnails
5) Add a badge system for community rating of plugins
6) Add storage and API for plugin star ratings
7) Add storage and API for plugin reviews
8) Add GPG signature checks for plugins
Comment 6 David Cook 2025-04-03 22:09:54 UTC
Will there be a koha-conf.xml option to turn it off or will it be based off the configuration of repos?
Comment 7 Pedro Amorim 2025-04-03 22:42:56 UTC
(In reply to David Cook from comment #6)
> Will there be a koha-conf.xml option to turn it off or will it be based off
> the configuration of repos?

Hi David, I believe the idea is to have it always turned on, restricted by new staff permissions:

(In reply to Pedro Amorim from comment #5)
> 3) plugin store permission to allow viewing of store plugins
> 4) plugin store permission to allow installation of store plugins

Or maybe possibly even by existing ones (eg manage_plugins)?
I may have misunderstood the question! Let me know if this doesn't answer it.
Comment 8 David Cook 2025-04-03 23:22:44 UTC
(In reply to Pedro Amorim from comment #7)
> Or maybe possibly even by existing ones (eg manage_plugins)?
> I may have misunderstood the question! Let me know if this doesn't answer it.

What I mean is... even though I think it's a really cool idea and it would be helpful for many Koha instances around the world, we probably won't want to use it for most of our hosted Koha instances. From a security perspective with our servers, we require any plugin installed to first be reviewed by us, so we wouldn't want staff users to be able to install plugins on their own. 

I'm just curious if there will be a way to disable this plugin store feature, or if I'll need to do a local customization to disable it.