User:Zabien/Extension Store

From semantic-mediawiki.org
< Sabine Melnicki
Sabine MelnickiUser:Zabien/Extension Store

Goal[edit]

Goal of an extension store is:

  1. The extension store is the "frontend" (website) to the "backend" of the extension repository (Github etc.)
  2. The extension store functions as a starting point for all questions concerning the extension – for consultants, developers and users.
  3. The documentation offers every aspect worth knowing about the extension in a concise and targeted manner: again for consultants, developers and users. (Different approaches, different background knowledge, different terminology!)

The documentation shall include:

  1. The user shall be able to easily identify the "best", the most downloaded, most actively patched, most actively supported, most often used extensions.
  2. Dependencies and compatibility information (was tested, was not tested) towards core and other extensions shall be clearly shown.

Connected to the extension store is the extension management:

  1. Extension management shall be easy for administrators and developers alike.
  2. Extension management shall be possible from within the wiki (Special page). It includeds installation, update, deactivation.
  3. 1-click-installation (update, deactivation etc.) shall be possible.
  4. Installation of skins shall also be possible via extension management.

Technical challenges:

  1. Compatibility testing of extension towards core and other extensions shall be improved and automated.
  2. Installation process shall include automatic compatibility testing before installation.

Questions[edit]

  1. What should the store feature? Just extensions, or also templates, skins, SMW packages?
  2. What possibilities for location of the store are out there? (MediaWiki.org, Magento new store)
  3. The ideal place is MediaWiki.org, what facts speak against having the store there?
    1. Paid extensions won't be accepted.
  4. What speaks against a store on a new, external platform?
    1. Duplicate content
    2. Time and effort to maintain
  5. What is the role of Bluespice in here?
  6. What could be a "give back" policy also for the store?
    1. E.g. a percentage of sales goes towards the maintenance of the platform/store and/or MediaWiki
  7. How to ensure content quality?
  8. What is in for WMF to support this?

To do:

  1. Update of feature list
  2. Next steps

Status quo[edit]

On MediaWiki.org currently a few thousand (how many exactly?) extensions are listed.

Existing features (see Template:Extension)[edit]

Technical info:[edit]

  • Release status/extension status: stable/beta/experimental/unstable/unknown/unmaintained
  • Latest version, latest preview version
  • Implementation type (numerous, e.g. special page, hook, wikipage, parser function)
  • Database changes Yes/No
  • Tables
  • Namespace, Parameter, Hooks used and provided
  • Vagrant roles
  • Links to open bugs in Phabricator

Installation info:[edit]

  • Compatibility notes: "MediaWiki 1.17+". "PHP 5.3" – Is this info sufficient?
  • Composer
  • Download link

Developer info:[edit]

  • Author/Developer
  • License note

Usage info:[edit]

  • Description
  • Image (Screenshots)
  • Example
  • Link to translation page

In fulltext:[edit]

  • Release notes
  • installation instructions
  • extension dependencies

Problems[edit]

  • Many extensions are outdated, the documentation, the status is not up-to-date.
  • The update process of extensions is non-automatic and tedious.
  • Extensions are not tested against new core releases.

Feature ideas[edit]

Feature ideas: see also Magento Connect and WordPress plugins

Content bundles[edit]

  • The store shall support distribution of content bundles. See [RFC Content bundler].

Rating system[edit]

  • New rating system for extensions: 1–5 stars for e.g. "Usefulness, Functions as Described, Developer Support"

Comment from Karsten: Re: Rating (pls only 3 stars in future), most parts of usage statistics, popularity, (text review) is actually already there at Wikipiary which is also already linked from every extension at mw.o - perhaps this needs to be fluffed up further and we need a way to sync this info into wm.o directly (a prototype is somethere in the water, too = Confirm Edit extension) the biggest issue here is to get compatibility info which is also teased by Wikiapiary though at a high performance burden.

Statistics[edit]

  • New statistics: Most wanted extensions, most downloaded extensions, most highly rated extensions (total, average, percentage)
  • Popularity score: The download statistics visualized in an icon with 5 versions.

Security reviews[edit]

Curated lists[edit]

Reviews[edit]

  • User text reviews with commenting functionality – extended talk page?

Follow this extension – via watchlist, but also via email, RSS/Atom

Developer information[edit]

  • Developer info – Contact possibilities and preferences (email, talk page etc.) – template that lets developers include a nice list of their extensions on their user page, statistics about the developer

Compatibility[edit]

  • Compatibility: "Tested with" – extended compatibility notes – "requires 1.21.x, compatible up to 1.25.3" (see WordPress!) – what has been tested, what is supported and what is assumed – also "intercompatibility", compatibility between extensions
  • BlueSpice ready
  • Known issues (not compatible with following extensions: ...)

Documentation[edit]

  • Enhancement of screenshots and use case examples – extend the existing "Example"
  • Short screencasts
  • Extended usage information beyond technical settings.
  • Info about CSS classes for styling.

Links[edit]

  • Link to WikiApiary

Examples[edit]

  • Live examples (would require installation of the extension on a wiki hosting the examples)

[edit]

Developers/Users can offer extensions and skins for money. This is not possible on MediaWiki.org. – To discuss!

Extension management for admins (on a special page):[edit]

Get notifications at new releases, choose automatic or manual update. Functions:

  • Install new
  • Install/revert to previous version
  • Activate/Deactivate
  • Delete
  • Edit settings