Page MenuHomePhabricator

Re-implement WikiShootMe as a customisable frontend JS app
Open, Needs TriagePublic


Do you use WikiShootMe the map tool? Have you forked WikiShootMe (e.g. for a WLM campaign)?

It's not easy to maintain forks of WikiShootMe. Also, a more focused tool could be easier to use on a phone and our campaigns could get more new contributors.

Ideas of the re-implementation:

  • A simple frontend JavaScript app
  • Customisable for use cases similar to WLM campaigns (simple for new users to upload images)
  • Quick and light on the phone by using vector tiles for loading the map data
  • Login to Commons and Wikidata using OAuth

Potential users:

  • WLM campaigns including Finland, Uruguay, Estonia
  • Other upload campaigns
  • Other specialised tools where the Commons Upload Wizard is not suitable (WMAR's Cartografías Abiertas)
  • Tools that want to link to a more customisable upload functionality than the Upload Wizard, e.g.

Competing (and complementary?) approaches:

  • Improve the campaign functionalities of the native Commons apps (Android and iOS)
  • Improve the Commons Upload Wizard
  • Create a new upload wizard for Commons campaigns


  • More new contributors from campaigns
  • More campaigns in more countries

Event Timeline

In the hackathon, we ended up working on a wider solution (T364174) which this map could be a part of. (The idea is to improve the Commons Upload Wizard, which the "upload" buttons link to, and this map could be embedded as a new step in the Wizard.)

Here's a first prototype which still uses the WikiShootMe codebase while most of it wouldn't be needed anymore:

Source code (small tweaks on the WMFI fork of WikiShootMe):


  • Vector tilesets with global coverage created using tippecanoe and visualised using protomaps-leaflet
    • The tilesets cover natural reserves as an example (visualized as blue circles for Wikidata items and green areas for OpenStreetMap boundaries).
    • There's no automated (daily) update process.
    • The visualisation of Wikidata items lacks clustering or similar.
    • There are other shortcomings caused by protomaps-leaflet, it's probably better to use maplibre-gl-js.
  • Popup which shows some existing information about the clicked item based on Wikidata
    • The popup could be streamlined by removing unnecessary information.
  • Upload button which links to an upload campaign in the Commons Upload Wizard
    • The campaign id is hardcoded for Finnish WLM but should be configurable or determined automatically.
    • For now, the Upload Wizard cannot create the depicts statement based on the URL parameters (T364237).