Skip to content
A map visualization of periodic markets in different cities.
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
cities Fix location for Witten. Jul 9, 2019
css add Datenschutzerklärung (taken from Dec 16, 2018
font Use a new web font to change the displayed icon in the map markers. Aug 28, 2017
gfx Take website offline for maintenance. May 24, 2018
js Support markets happening on public holidays. Apr 28, 2019
lib Update leaflet to 1.3.1 Apr 23, 2018
preprocessing Update markets for Berlin (published 03.05.2019). May 3, 2019
validation Support markets happening on public holidays. Apr 28, 2019
.gitignore Prevent committing NPM log files. Jan 11, 2017
.travis.yml install latest node May 12, 2017 fixed formatting issue and typo in contribution guide Dec 22, 2018
LICENSE Added license (fixes #12). Feb 27, 2016 Add missing entry for Lübeck. Jun 28, 2019
android-chrome-192x192.png Add favicon and OS specific app-icons Jul 13, 2016
android-chrome-512x512.png Add favicon and OS specific app-icons Jul 13, 2016
apple-touch-icon.png Add favicon and OS specific app-icons Jul 13, 2016
browserconfig.xml Convert line endings from CRLF to LF. Jul 18, 2016 Decrypt variables on master only. Nov 7, 2016 Automatically deploy to server with fabric and Travis CI Aug 11, 2016
favicon-16x16.png Add favicon and OS specific app-icons Jul 13, 2016
favicon-32x32.png Add favicon and OS specific app-icons Jul 13, 2016
favicon.ico Add favicon and OS specific app-icons Jul 13, 2016
impressum-datenschutz.html rename impressum.html -> impressum-datenschutz.html Dec 16, 2018
index.html restore index page Dec 1, 2018
info.html restore info page Dec 16, 2018
manifest.json Add favicon and OS specific app-icons Jul 13, 2016
markt_deploy_id_rsa.enc Automatically deploy to server with fabric and Travis CI Aug 11, 2016
mstile-150x150.png Add favicon and OS specific app-icons Jul 13, 2016
package.json chore(package): update jshint to version 2.10.0 Feb 5, 2019
requirements.txt update Fabric to 1.14.0 Feb 17, 2018
safari-pinned-tab.svg Add favicon and OS specific app-icons Jul 13, 2016

Build Status devDependencies Status Greenkeeper badge

Wo ist Markt?

A small visualization of the weekly markets in different cities. Available at:

Project description

Wo ist Markt? aims at providing an easy to use website for market information. Visitors of the website should be able to intuitively get answers to the following questions:

  • Where does a market take place?
  • When does a market take place?

Therefore, the website shows the position of markets as markers on a map. Each marker can be clicked or tapped to reveal the detail information associated with this market - most important, the opening hours. This can been seen on the following screenshot.

Screenshot of the website (Showing Karlsruhe)

Kinds of markets

The project is not limited to specific kinds of markets. Typical markets in cities are:

  • Farmer markets (selling vegetable, fruits, fish, plants, ...)
  • Flea markets (selling used stuff, antique goods, ...)

Market data

The actual information (title, location, opening hours, ...) about the markets can be provided by anyone. In the optimal case it is provided by a city as open data. If not, any volunteer can collect such data and contribute it to the project. Market data must be maintained individually. There is no central project team to take care of updating data of multiple cities. This is a distributed project. This is also the reason why cities are missing. It needs someone to retrieve and add the data. It is of your choice if you collect the data manually or if you automate it with a script. If you need inspiration on how to automate this have a look at the preprocessing folder.

Project history

The project has been started by @torfsen as part of the Open Knowledge Lab Karlsruhe in February 2015. To support more cities the code has been refactored by @johnjohndoe as part of the Open Knowledge Lab Berlin in February 2016.


  • The individual market data for supported cities is displayed when the city name is given in the address bar of the browser.


    By default or on error Karlsruhe is rendered.


  • You are very welcome to get involved in the project. Therefore, we prepared a contribution guide which explains how to add market data and how to start coding on the project.


  • Please use the GitHub issue tracker to discuss new and existing ideas.
  • Come join the converation about this project in our Slack channel. Write to tobias DOT preuss AT googlemail DOT com if you need an invitation for the Slack group.

Supported cities

City name Data source
Bad Homburg Stadt Bad Homburg
Basel Stadt Basel
Berlin City of Berlin
Bochum City of Bochum
Bonn City of Bonn
Bottrop City of Bottrop
Braunschweig City of Braunschweig
Bremerhaven City of Bremerhaven
Bretten City of Bretten
Bruchköbel Stadtmarketing Bruchköbel GmbH
Brühl Stadt Brühl
Chemnitz City of Chemnitz
Cottbus City of Cottbus
Cuxhaven City of Cuxhaven
Dortmund City of Dortmund
Dresden City of Dresden
Duisburg Duisburg Kontor GmbH
Düsseldorf City of Düsseldorf
Erlangen City of Erlangen
Essen EVB
Frankfurt am Main City of Frankfurt am Main
Freiburg City of Freiburg
Friedrichsdorf City of Friedrichsdorf
Gelsenkirchen Gelsendienste
Hagen City of Hagen
Hamburg City of Hamburg
Hamm City of Hamm
Hanau City of Hanau
Hannover City of Hannover
Herne City of Herne
Hilden City of Hilden
Kaiserslautern City of Kaiserslautern
Karlsruhe City of Karlsruhe
Kassel City of Kassel
Kiel City of Kiel
Kleve City of Kleve
Köln City of Köln
Konstanz City of Konstanz
Langenfeld (Rhld.) City of Langenfeld (Rhld.)
Laupheim Laupheim
Leipzig City of Leipzig
Loxstedt City of Loxstedt
Lübeck City of Lübeck
Moers City of Moers
Mülheim an der Ruhr City of Mülheim an der Ruhr
München City of München
Münster City of Münster
Nersingen City of Nersingen
Neu-Ulm City of Neu-Ulm
Oberursel City of Oberursel
Oldenburg City of Oldenburg (Oldb)
Osnabrueck City of Osnabrueck
Paderborn City of Paderborn
Potsdam City of Potsdam
Rostock City of Rostock
Schleswig City of Schleswig
Schwerin City of Schwerin
Siegen City of Siegen
Solingen City of Solingen
Stralsund City of Stralsund
Stuttgart Stuttgarter Wochenmärkte
Suhl City of Suhl
Trier City of Trier
Tübingen Wochenmarkt - Universitätsstadt Tübingen
Ulm City of Ulm
Wiesbaden City of Wiesbaden
Witten Stadtmarketing Witten
Wolfenbüttel Stadt Wolfenbüttel
Wuppertal City of Wuppertal
Zwickau Kultour Z.


Tests can be run using npm:

$ npm install  # Just once after you've cloned the repo

$ npm test     # Whenever you want to run the tests


When new code is pushed to master Travis CI runs a test suite against it. If those test pass fabric is used to deploy the new version to the server running under

The command that Travis CI executes is fab deploy -i markt_deploy_id_rsa -H where markt_deploy_id_rsa is an ssh key to log into the server. It is commited to this repository in a encrypted format that Travis CI decrypts in the before_install section.

You can run the deployment locally if your ssh key is added to the deploy user on the server. Since Travis CI does it automatically there should be no need to do this though. The command to deploy manually is: fab deploy -H

You can’t perform that action at this time.