FNNDSC / ChRIS_store

Backend for ChRIS plugin apps store
MIT License
11 stars 19 forks source link

Add "Categories" object and allow all categories to be fetched #42

Open zrthxn opened 3 years ago

zrthxn commented 3 years ago

The Category of a plugin is currently only a string and anything can be put in its place. This is a feature request to add a Categories object which can have certain predefined values and the ability to create more, such that a plugin can be assigned that category.

Also the API should be able to serve a list of categories when it needs to.

zrthxn commented 3 years ago

If this seems something that an applicant can do then I'd like to help on this.

jennydaman commented 3 years ago

To add this feature I think one would need a good understanding of the codebase and database design. Feel free to give it your shot. If it becomes apparent that the task is too large for now, it is ok to choose a different task instead.

mairin commented 3 years ago

One consideration here that came up in our planning meeting this morning is that having metadata like categories as part of the JSON in the plugin itself is that it would enable categorization of the plugins elsewhere - like in the ChRIS core UI itself.

We could maybe instead create a standard list of categories that we promote on the ChRIS Store as suggestions and allow the ChRIS store admin to change / edit / update. And perhaps when you upload a JSON plugin def file, if it has a category field that lists categories that arent part of that list, it flags it maybe?

Multiple categories should be allowed per plugin though. The idea mentioned today way "One category per plugin, specified in JSON - should expand. Should be backwards-compatible where CATEGORIES can be a comma-separated list of keywords."

mairin commented 2 years ago

See https://github.com/FNNDSC/ChRIS_store/issues/43 for more discussion / information on this idea