diff --git a/assets/layers/stairs/stairs.json b/assets/layers/stairs/stairs.json
index f37a0857c..3a7441057 100644
--- a/assets/layers/stairs/stairs.json
+++ b/assets/layers/stairs/stairs.json
@@ -154,10 +154,12 @@
     },
     {
       "id": "tactile_writing",
-      "condition": {"and":[
-        "handrail=yes",
-        "conveying!=yes"
-      ]},
+      "condition": {
+        "and": [
+          "handrail=yes",
+          "conveying!=yes"
+        ]
+      },
       "question": {
         "en": "Do these stairs have tactile writing on the handrail?",
         "de": "Hat die Treppe eine taktile Schrift am Handlauf?",
diff --git a/assets/themes/mapcomplete-changes/mapcomplete-changes.json b/assets/themes/mapcomplete-changes/mapcomplete-changes.json
deleted file mode 100644
index 3c9e92070..000000000
--- a/assets/themes/mapcomplete-changes/mapcomplete-changes.json
+++ /dev/null
@@ -1,789 +0,0 @@
-{
-  "id": "mapcomplete-changes",
-  "title": {
-    "en": "Changes made with MapComplete",
-    "ca": "Canvis fets amb MapComplete",
-    "cs": "Změny provedené pomocí MapComplete",
-    "de": "Mit MapComplete erstellte Änderungen",
-    "es": "Cambios realizados con MapComplete",
-    "fr": "Changements faits avec MapComplete",
-    "nl": "Wijzigingen gemaakt met MapComplete",
-    "pl": "Zmiany wprowadzone za pomocą MapComplete"
-  },
-  "shortDescription": {
-    "en": "Show changes made with MapComplete",
-    "ca": "Mostra els canvis fets amb MapComplete",
-    "cs": "Zobrazení změn provedených pomocí nástroje MapComplete",
-    "de": "Mit MapComplete erstellte Änderungen anzeigen",
-    "es": "Mostrar cambios realizados con MapComplete",
-    "nl": "Toon wijzigingen gemaakt met MapComplete",
-    "pl": "Pokaż zmiany wprowadzone za pomocą MapComplete"
-  },
-  "description": {
-    "en": "This maps shows all the changes made with MapComplete",
-    "ca": "Aquest mapa mostra tots els canvis fets amb MapComplete",
-    "cs": "Tato mapa zobrazuje všechny změny provedené pomocí MapComplete",
-    "de": "Diese Karte zeigt alle mit MapComplete vorgenommenen Änderungen",
-    "es": "Este mapa muestra todos los cambios realizados con MapComplete",
-    "fr": "Cette carte montre tous les changements faits avec MapComplete",
-    "nl": "Deze kaart toont alle wijzigingen die met MapComplete gemaakt werden",
-    "pl": "Ta mapa pokazuje wszystkie zmiany wprowadzone za pomocą MapComplete"
-  },
-  "icon": "./assets/svg/logo.svg",
-  "hideFromOverview": true,
-  "startLat": 0,
-  "startLon": 0,
-  "startZoom": 1,
-  "widenFactor": 0.05,
-  "clustering": false,
-  "layers": [
-    {
-      "id": "mapcomplete-changes",
-      "name": {
-        "en": "Changeset centers",
-        "ca": "Centre del conjunt de canvis",
-        "cs": "Centrum změn",
-        "de": "Zentrum der Änderungssätze",
-        "es": "Centro del conjunto de cambios",
-        "nl": "Centerpunt van changeset",
-        "pl": "Centra zmian"
-      },
-      "minzoom": 0,
-      "source": {
-        "osmTags": "editor~*",
-        "geoJson": "https://raw.githubusercontent.com/pietervdvn/MapComplete-data/main/mapcomplete-changes/tile_{z}_{x}_{y}.geojson",
-        "geoJsonZoomLevel": 8,
-        "maxCacheAge": 0
-      },
-      "title": {
-        "render": {
-          "en": "Changeset for {theme}",
-          "ca": "Conjunt de canvis per a {theme}",
-          "cs": "Změna pro {theme}",
-          "de": "Änderungssatz für {theme}",
-          "es": "Conjunto de cambios para {theme}",
-          "fr": "Groupe de modifications pour {theme}",
-          "pl": "Zestaw zmian dla {theme}"
-        }
-      },
-      "description": {
-        "en": "Show all MapComplete changes",
-        "ca": "Mostra tots els canvis de MapComplete",
-        "cs": "Zobrazit všechny změny MapComplete",
-        "de": "Alle MapComplete-Änderungen anzeigen",
-        "es": "Mostrar todos los cambios de MapComplete",
-        "nl": "Toon alle MapComplete wijzigingen",
-        "pl": "Wyświetl wszystkie zmiany MapComplete"
-      },
-      "tagRenderings": [
-        {
-          "id": "show_changeset_id",
-          "render": {
-            "en": "Changeset {id}",
-            "ca": "Conjunt de canvi {id}",
-            "cs": "Změny {id}",
-            "de": "Änderungssatz {id}",
-            "es": "Conjunto de cambios {id}",
-            "fr": "Groupe de modifications {id}",
-            "pl": "Zestaw zmian {id}"
-          }
-        },
-        {
-          "id": "contributor",
-          "question": {
-            "en": "Which contributor made this change?",
-            "ca": "Quin col·laborador va fer aquest canvi?",
-            "cs": "Který přispěvatel tuto změnu provedl?",
-            "de": "Wer hat diese Änderung vorgenommen?",
-            "es": "¿Qué contribuidor hizo este cambio?",
-            "fr": "Quel contributeur a fait cette modification ?",
-            "nl": "Welke bijdrager maakte deze wijziging?",
-            "pl": "Który współautor dokonał tej zmiany?"
-          },
-          "freeform": {
-            "key": "user"
-          },
-          "render": {
-            "en": "Change made by {user}",
-            "ca": "Canvi fet per {user}",
-            "cs": "Změna provedená {user}",
-            "de": "Änderung von {user}",
-            "es": "Cambio realizado por {user}",
-            "fr": "Modification faite par {user}",
-            "nl": "Wijziging gemaakt door  {user}",
-            "pl": "Zmiana dokonana przez {user}"
-          }
-        },
-        {
-          "id": "theme-id",
-          "question": {
-            "en": "What theme was used to make this change?",
-            "ca": "Quin tema es va utilitzar per fer aquest canvi?",
-            "cs": "Jaké téma bylo použito k provedení této změny?",
-            "de": "Welches Thema wurde für diese Änderung verwendet?",
-            "es": "¿Qué tema se utilizó para realizar este cambio?",
-            "fr": "Quel thème a été utilisé pour faire cette modification ?",
-            "pl": "Jakiego tematu użyto do wprowadzenia tej zmiany?"
-          },
-          "freeform": {
-            "key": "theme"
-          },
-          "render": {
-            "en": "Change with theme {theme}",
-            "ca": "Canvi amb el tema {theme}",
-            "cs": "Změna s motivem {theme}",
-            "de": "Geändert mit Thema {theme}",
-            "es": "Cambio con tema {theme}",
-            "fr": "Modifié avec le thème {theme}",
-            "pl": "Zmiana za pomocą motywu {theme}"
-          }
-        },
-        {
-          "id": "locale",
-          "freeform": {
-            "key": "locale"
-          },
-          "question": {
-            "en": "What locale (language) was this change made in?",
-            "ca": "Amb quina configuració regional (idioma) s'ha fet aquest canvi?",
-            "cs": "V jakém národním prostředí (jazyce) byla tato změna provedena?",
-            "de": "In welcher Benutzersprache wurde diese Änderung vorgenommen?",
-            "es": "¿En qué configuración regional (idioma) se realizó este cambio?",
-            "fr": "En quelle langue est-ce que ce changement a été fait ?",
-            "nl": "In welke locale (taal) werd deze wijziging gemaakt?",
-            "pl": "W jakim języku wprowadzono tę zmianę?"
-          },
-          "render": {
-            "en": "User locale is {locale}",
-            "ca": "La configuració regional de l'usuari és {locale}",
-            "cs": "Uživatelské prostředí je {locale}",
-            "de": "Benutzersprache {locale}",
-            "es": "La configuración regional del usuario es {locale}",
-            "nl": "De gebruikerstaal is {locale}",
-            "pl": "Ustawienia regionalne użytkownika to {locale}"
-          }
-        },
-        {
-          "id": "host",
-          "render": {
-            "en": "Change made with {host}",
-            "ca": "Canviat fet amb {host}",
-            "cs": "Změna provedená pomocí {host}",
-            "de": "Geändert über {host}",
-            "es": "Cambio realizado con {host}",
-            "fr": "Modification faite avec {host}",
-            "nl": "Wijziging gemaakt met {host}",
-            "pl": "Zmiana dokonana w {host}"
-          },
-          "question": {
-            "en": "What host (website) was this change made with?",
-            "ca": "Amb quin amfitrió (lloc web) es va fer aquest canvi?",
-            "cs": "U jakého hostitele (webové stránky) byla tato změna provedena?",
-            "de": "Über welchen Host (Webseite) wurde diese Änderung vorgenommen?",
-            "es": "¿Con qué host (página web) se realizó este cambio?",
-            "nl": "Met welke host (website) werd deze wijziging gemaakt?",
-            "pl": "Na jakim hoście (stronie internetowej) dokonano tej zmiany?"
-          },
-          "freeform": {
-            "key": "host"
-          },
-          "mappings": [
-            {
-              "if": "host=www.waldbrand-app.de",
-              "then": "waldbrand-app.de",
-              "hideInAnswer": true
-            },
-            {
-              "if": "host~https://pietervdvn.github.io/mc/develop/.*",
-              "then": "Develop",
-              "hideInAnswer": true
-            }
-          ]
-        },
-        {
-          "id": "version",
-          "question": {
-            "en": "What version of MapComplete was used to make this change?",
-            "ca": "Quina versió de MapComplete es va utilitzar per fer aquest canvi?",
-            "cs": "Jaká verze aplikace MapComplete byla použita k provedení této změny?",
-            "de": "Mit welcher Version von MapComplete wurde diese Änderung gemacht?",
-            "es": "¿Qué versión de MapComplete se usó para realizar este cambio?",
-            "fr": "Quelle version de MapComplete a été utilisée pour faire cette modification ?",
-            "pl": "Która wersja MapComplete została wykorzystana, aby zrobić tę zmianę?"
-          },
-          "render": {
-            "en": "Made with {editor}",
-            "ca": "Fet amb {editor}",
-            "cs": "Vyrobeno pomocí {editor}",
-            "de": "Erstellt mit {editor}",
-            "es": "Realizado con {editor}",
-            "fr": "Fait avec {editor}",
-            "pl": "Zrobione za pomocą {editor}"
-          },
-          "freeform": {
-            "key": "editor"
-          }
-        }
-      ],
-      "pointRendering": [
-        {
-          "location": [
-            "point",
-            "centroid"
-          ],
-          "marker": [
-            {
-              "icon": {
-                "render": "teardrop:#00cc00",
-                "mappings": [
-                  {
-                    "if": "theme=advertising",
-                    "then": "./assets/themes/advertising/icon.svg"
-                  },
-                  {
-                    "if": "theme=aed",
-                    "then": "./assets/themes/aed/aed.svg"
-                  },
-                  {
-                    "if": "theme=artwork",
-                    "then": "./assets/themes/artwork/artwork.svg"
-                  },
-                  {
-                    "if": "theme=atm",
-                    "then": "./assets/themes/atm/logo.svg"
-                  },
-                  {
-                    "if": "theme=bag",
-                    "then": "./assets/themes/bag/logo.svg"
-                  },
-                  {
-                    "if": "theme=benches",
-                    "then": "./assets/themes/benches/bench_poi.svg"
-                  },
-                  {
-                    "if": "theme=bicycle_rental",
-                    "then": "./assets/themes/bicycle_rental/logo.svg"
-                  },
-                  {
-                    "if": "theme=bicyclelib",
-                    "then": "./assets/themes/bicyclelib/logo.svg"
-                  },
-                  {
-                    "if": "theme=binoculars",
-                    "then": "./assets/layers/binocular/telescope.svg"
-                  },
-                  {
-                    "if": "theme=blind_osm",
-                    "then": "./assets/themes/blind_osm/Blindicon.svg"
-                  },
-                  {
-                    "if": "theme=bookcases",
-                    "then": "./assets/themes/bookcases/bookcase.svg"
-                  },
-                  {
-                    "if": "theme=buurtnatuur",
-                    "then": "./assets/themes/buurtnatuur/logo.svg"
-                  },
-                  {
-                    "if": "theme=cafes_and_pubs",
-                    "then": "./assets/layers/cafe_pub/pub.svg"
-                  },
-                  {
-                    "if": "theme=campersite",
-                    "then": "./assets/themes/campersite/caravan.svg"
-                  },
-                  {
-                    "if": "theme=charging_stations",
-                    "then": "./assets/themes/charging_stations/logo.svg"
-                  },
-                  {
-                    "if": "theme=climbing",
-                    "then": "./assets/themes/climbing/climbing_icon.svg"
-                  },
-                  {
-                    "if": "theme=clock",
-                    "then": "./assets/layers/clock/clock.svg"
-                  },
-                  {
-                    "if": "theme=cycle_highways",
-                    "then": "./assets/themes/cycle_highways/fietssnelwegen-logo.svg"
-                  },
-                  {
-                    "if": "theme=cycle_infra",
-                    "then": "./assets/themes/cycle_infra/cycle-infra.svg"
-                  },
-                  {
-                    "if": "theme=cyclenodes",
-                    "then": "./assets/themes/cyclenodes/logo.svg"
-                  },
-                  {
-                    "if": "theme=cyclestreets",
-                    "then": "./assets/themes/cyclestreets/logo.svg"
-                  },
-                  {
-                    "if": "theme=cyclofix",
-                    "then": "./assets/themes/cyclofix/logo.svg"
-                  },
-                  {
-                    "if": "theme=drinking_water",
-                    "then": "./assets/themes/drinking_water/logo.svg"
-                  },
-                  {
-                    "if": "theme=education",
-                    "then": "./assets/layers/school/college.svg"
-                  },
-                  {
-                    "if": "theme=elongated_coin",
-                    "then": "./assets/themes/elongated_coin/penny.svg"
-                  },
-                  {
-                    "if": "theme=etymology",
-                    "then": "./assets/layers/etymology/logo.svg"
-                  },
-                  {
-                    "if": "theme=facadegardens",
-                    "then": "./assets/themes/facadegardens/geveltuin.svg"
-                  },
-                  {
-                    "if": "theme=food",
-                    "then": "./assets/layers/food/restaurant.svg"
-                  },
-                  {
-                    "if": "theme=fritures",
-                    "then": "./assets/themes/fritures/logo.svg"
-                  },
-                  {
-                    "if": "theme=fruit_trees",
-                    "then": "./assets/themes/fruit_trees/fruit_tree.svg"
-                  },
-                  {
-                    "if": "theme=ghostbikes",
-                    "then": "./assets/themes/ghostbikes/logo.svg"
-                  },
-                  {
-                    "if": "theme=grb",
-                    "then": "./assets/themes/grb/logo.svg"
-                  },
-                  {
-                    "if": "theme=grb_fixme",
-                    "then": "./assets/svg/bug.svg"
-                  },
-                  {
-                    "if": "theme=guideposts",
-                    "then": "./assets/layers/guidepost/guidepost.svg"
-                  },
-                  {
-                    "if": "theme=hackerspaces",
-                    "then": "./assets/themes/hackerspaces/glider.svg"
-                  },
-                  {
-                    "if": "theme=hailhydrant",
-                    "then": "./assets/themes/hailhydrant/logo.svg"
-                  },
-                  {
-                    "if": "theme=healthcare",
-                    "then": "./assets/layers/doctors/doctors.svg"
-                  },
-                  {
-                    "if": "theme=hotels",
-                    "then": "./assets/layers/hotel/hotel.svg"
-                  },
-                  {
-                    "if": "theme=icecream",
-                    "then": "./assets/layers/ice_cream/ice_cream.svg"
-                  },
-                  {
-                    "if": "theme=indoors",
-                    "then": "./assets/layers/entrance/entrance.svg"
-                  },
-                  {
-                    "if": "theme=kerbs_and_crossings",
-                    "then": "./assets/layers/kerbs/KerbIcon.svg"
-                  },
-                  {
-                    "if": "theme=maproulette",
-                    "then": "./assets/layers/maproulette/logomark.svg"
-                  },
-                  {
-                    "if": "theme=maps",
-                    "then": "./assets/themes/maps/logo.svg"
-                  },
-                  {
-                    "if": "theme=maxspeed",
-                    "then": "./assets/themes/maxspeed/maxspeed_logo.svg"
-                  },
-                  {
-                    "if": "theme=nature",
-                    "then": "./assets/themes/nature/logo.svg"
-                  },
-                  {
-                    "if": "theme=notes",
-                    "then": "./assets/themes/notes/logo.svg"
-                  },
-                  {
-                    "if": "theme=observation_towers",
-                    "then": "./assets/layers/observation_tower/Tower_observation.svg"
-                  },
-                  {
-                    "if": "theme=onwheels",
-                    "then": "./assets/themes/onwheels/crest.svg"
-                  },
-                  {
-                    "if": "theme=openwindpowermap",
-                    "then": "./assets/themes/openwindpowermap/logo.svg"
-                  },
-                  {
-                    "if": "theme=osm_community_index",
-                    "then": "./assets/themes/osm_community_index/osm.svg"
-                  },
-                  {
-                    "if": "theme=parkings",
-                    "then": "./assets/themes/parkings/parkings.svg"
-                  },
-                  {
-                    "if": "theme=personal",
-                    "then": "./assets/svg/addSmall.svg"
-                  },
-                  {
-                    "if": "theme=pets",
-                    "then": "./assets/layers/dogpark/dog-park.svg"
-                  },
-                  {
-                    "if": "theme=play_forests",
-                    "then": "./assets/layers/play_forest/icon.svg"
-                  },
-                  {
-                    "if": "theme=playgrounds",
-                    "then": "./assets/themes/playgrounds/playground.svg"
-                  },
-                  {
-                    "if": "theme=postal_codes",
-                    "then": "./assets/themes/postal_codes/townhall.svg"
-                  },
-                  {
-                    "if": "theme=postboxes",
-                    "then": "./assets/layers/postboxes/postbox.svg"
-                  },
-                  {
-                    "if": "theme=rainbow_crossings",
-                    "then": "./assets/themes/rainbow_crossings/logo.svg"
-                  },
-                  {
-                    "if": "theme=shops",
-                    "then": "./assets/themes/shops/shop.svg"
-                  },
-                  {
-                    "if": "theme=sidewalks",
-                    "then": "./assets/svg/bug.svg"
-                  },
-                  {
-                    "if": "theme=speelplekken",
-                    "then": "./assets/themes/speelplekken/logo.svg"
-                  },
-                  {
-                    "if": "theme=sport_pitches",
-                    "then": "./assets/layers/sport_pitch/table_tennis.svg"
-                  },
-                  {
-                    "if": "theme=sports",
-                    "then": "./assets/themes/sports/sport.svg"
-                  },
-                  {
-                    "if": "theme=stations",
-                    "then": "./assets/themes/stations/rail-light.svg"
-                  },
-                  {
-                    "if": "theme=street_lighting",
-                    "then": "./assets/layers/street_lamps/street_lamp.svg"
-                  },
-                  {
-                    "if": "theme=street_lighting_assen",
-                    "then": "./assets/layers/street_lamps/street_lamp.svg"
-                  },
-                  {
-                    "if": "theme=surveillance",
-                    "then": "./assets/themes/surveillance/logo.svg"
-                  },
-                  {
-                    "if": "theme=toerisme_vlaanderen",
-                    "then": "./assets/themes/toerisme_vlaanderen/logo.svg"
-                  },
-                  {
-                    "if": "theme=toilets",
-                    "then": "./assets/themes/toilets/toilets.svg"
-                  },
-                  {
-                    "if": "theme=transit",
-                    "then": "./assets/layers/transit_stops/bus_stop.svg"
-                  },
-                  {
-                    "if": "theme=trees",
-                    "then": "./assets/themes/trees/logo.svg"
-                  },
-                  {
-                    "if": "theme=uk_addresses",
-                    "then": "./assets/themes/uk_addresses/housenumber_unknown.svg"
-                  },
-                  {
-                    "if": "theme=vending_machine",
-                    "then": "./assets/layers/vending_machine/vending_machine.svg"
-                  },
-                  {
-                    "if": "theme=walkingnodes",
-                    "then": "./assets/themes/walkingnodes/logo.svg"
-                  },
-                  {
-                    "if": "theme=walls_and_buildings",
-                    "then": "./assets/layers/walls_and_buildings/walls_and_buildings.png"
-                  },
-                  {
-                    "if": "theme=waste",
-                    "then": "./assets/layers/recycling/recycling-14.svg"
-                  },
-                  {
-                    "if": "theme=waste_assen",
-                    "then": "./assets/layers/recycling/recycling-14.svg"
-                  },
-                  {
-                    "if": "theme=waste_basket",
-                    "then": "./assets/themes/waste_basket/waste_basket.svg"
-                  },
-                  {
-                    "if": "theme=width",
-                    "then": "./assets/themes/width/icon.svg"
-                  }
-                ]
-              }
-            }
-          ],
-          "iconSize": "30,30",
-          "anchor": "center"
-        }
-      ],
-      "filter": [
-        {
-          "id": "theme-search",
-          "options": [
-            {
-              "osmTags": "theme~i~.*{search}.*",
-              "fields": [
-                {
-                  "name": "search"
-                }
-              ],
-              "question": {
-                "en": "Theme name contains {search}",
-                "ca": "El nom del tema conté {search}",
-                "cs": "Název motivu obsahuje {search}",
-                "de": "Themenname enthält {search}",
-                "es": "El nombre del tema contiene {search}",
-                "nl": "Themenaam bevat {search}",
-                "pl": "Nazwa tematu zawiera {search}"
-              }
-            }
-          ]
-        },
-        {
-          "id": "created_by",
-          "options": [
-            {
-              "osmTags": "user~i~.*{search}.*",
-              "fields": [
-                {
-                  "name": "search"
-                }
-              ],
-              "question": {
-                "en": "Made by contributor {search}",
-                "ca": "Fet pel col·laborador {search}",
-                "cs": "Vytvořil přispěvatel {search}",
-                "de": "Erstellt von {search}",
-                "es": "Hecho por el colaborador {search}",
-                "nl": "Gemaakt door bijdrager {search}",
-                "pl": "Wykonane przez współautora {search}"
-              }
-            }
-          ]
-        },
-        {
-          "id": "not_created_by",
-          "options": [
-            {
-              "osmTags": "user!~i~.*{search}.*",
-              "fields": [
-                {
-                  "name": "search"
-                }
-              ],
-              "question": {
-                "en": "Not made by contributor {search}",
-                "ca": "No fet pel col·laborador {search}",
-                "cs": "Není vytvořeno přispěvatelem {search}",
-                "de": "Nicht erstellt von {search}",
-                "es": "No hecho por el colaborador {search}",
-                "nl": "Niet gemaakt door bijdrager {search}",
-                "pl": "Nie wykonane przez współautora {search}"
-              }
-            }
-          ]
-        },
-        {
-          "id": "made_before",
-          "options": [
-            {
-              "osmTags": "date<{search}",
-              "fields": [
-                {
-                  "name": "search",
-                  "type": "date"
-                }
-              ],
-              "question": {
-                "en": "Made before {search}",
-                "ca": "Fet abans de {search}",
-                "cs": "Vytvořeno před {search}",
-                "de": "Erstellt vor {search}",
-                "es": "Hecho antes de {search}",
-                "nl": "Gemaakt voor {search}",
-                "pl": "Stworzone przed {search}"
-              }
-            }
-          ]
-        },
-        {
-          "id": "made_after",
-          "options": [
-            {
-              "osmTags": "date>{search}",
-              "fields": [
-                {
-                  "name": "search",
-                  "type": "date"
-                }
-              ],
-              "question": {
-                "en": "Made after {search}",
-                "ca": "Fet després de {search}",
-                "cs": "Vytvořeno po {search}",
-                "de": "Erstellt nach {search}",
-                "es": "Hecho después de {search}",
-                "nl": "Gemaakt na {search}",
-                "pl": "Stworzone po {search}"
-              }
-            }
-          ]
-        },
-        {
-          "id": "locale-filter",
-          "options": [
-            {
-              "osmTags": "locale~i~.*{search}.*",
-              "fields": [
-                {
-                  "name": "search"
-                }
-              ],
-              "question": {
-                "en": "User language (iso-code) {search}",
-                "ca": "Idioma de l'usuari (codi iso) {search}",
-                "cs": "Jazyk uživatele (iso-kód) {search}",
-                "de": "Benutzersprache (ISO-Code) {search}",
-                "es": "Use idioma (ISO-code) {search}",
-                "fr": "Langage utilisateur (code-ISO) {search}",
-                "nl": "De taal van de bijdrager is {search}",
-                "pl": "Język użytkownika (kod iso) {search}"
-              }
-            }
-          ]
-        },
-        {
-          "id": "host_name",
-          "options": [
-            {
-              "osmTags": "host~i~.*{search}.*",
-              "fields": [
-                {
-                  "name": "search"
-                }
-              ],
-              "question": {
-                "en": "Made with host {search}",
-                "ca": "Fet amb l'amfitrió {search}",
-                "cs": "Vytvořeno pomocí hostitele {search}",
-                "de": "Erstellt mit Host {search}",
-                "es": "Hecho con el host {search}",
-                "nl": "Gemaakt met host {search}",
-                "pl": "Wykonane z hostem {search}"
-              }
-            }
-          ]
-        },
-        {
-          "id": "added-image",
-          "options": [
-            {
-              "osmTags": "add-image>0",
-              "question": {
-                "en": "Changeset added at least one image",
-                "ca": "El conjunt de canvis ha afegit almenys una imatge",
-                "cs": "Sada změn přidala alespoň jeden obrázek",
-                "de": "Im Änderungssatz wurde mindestens ein Bild hinzugefügt",
-                "es": "El conjunto de cambios ha añadido al menos una imagen",
-                "fr": "Le groupe de modifications a ajouté au moins une image",
-                "nl": "Changeset bevat minstens één afbeelding",
-                "pl": "Zestaw zmian dodał co najmniej jedno zdjęcie"
-              }
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "builtin": "current_view",
-      "override": {
-        "title": "Statistics on changesets in the current view",
-        "tagRenderings+": [
-          {
-            "id": "link_to_more",
-            "render": {
-              "en": "More statistics can be found here",
-              "ca": "Es pot trobar més estadística aquí",
-              "cs": "Další statistiky najdete here",
-              "de": "Mehr Statistiken gibt es hier",
-              "es": "Puede encontrar más estadísticas aquí",
-              "fr": "D'autres statistiques sont disponibles ici",
-              "pl": "Więcej statystyk można znaleźć tutaj"
-            }
-          },
-          {
-            "id": "hist_themes",
-            "render": "{histogram(_embedded_cs:themes, Themename, Number of changesets)}"
-          },
-          {
-            "id": "hist_users",
-            "render": "{histogram(_embedded_cs:users, Contributor, Number of changesets)}"
-          }
-        ],
-        "calculatedTags": [
-          "_embedded_cs=overlapWith(feat)('mapcomplete-changes').map(f => f.feat.properties)",
-          "_embedded_cs:themes=feat.get('_embedded_cs').map(cs => cs.theme)",
-          "_embedded_cs:users=feat.get('_embedded_cs').map(cs => cs['_last_edit:contributor'])"
-        ],
-        "+pointRendering": [
-          {
-            "location": [
-              "point"
-            ],
-            "marker": [
-              {
-                "icon": "statistics:black"
-              }
-            ],
-            "iconSize": "30,30",
-            "anchor": "center"
-          }
-        ]
-      }
-    }
-  ]
-}
\ No newline at end of file
diff --git a/scripts/build.sh b/scripts/build.sh
index 359c81ecc..0d4678106 100755
--- a/scripts/build.sh
+++ b/scripts/build.sh
@@ -39,6 +39,15 @@ else
   echo "$ASSET_URL"
 fi
 
+# sanity check
+if [[ -f "bookcases.html" ]]
+then
+  
+else
+  echo "Bookcases.html does not exist - aborting"
+  exit 1
+fi
+
 export NODE_OPTIONS=--max-old-space-size=7000
 which vite
 vite build --sourcemap