# Developing Nominatim-UI
+[![Continuous Integration](https://github.com/osm-search/nominatim-ui/actions/workflows/ci.yml/badge.svg)](https://github.com/osm-search/nominatim-ui/actions/workflows/ci.yml)
+
## Background
The user interface used to be included in the geocoder. Thus the
first version avoid being a redesign and still uses some of the
-same configuration values. For simplicity it's not a single
-page application (SPA) written in a framework though it could
-be in the future if complexity grows.
+same configuration values. Version 2 was a full refactor using
+Svelte. Version 3 added theme and easier configuration.
-Uses [jQuery](https://jquery.com/) for browser DOM interaction,
-[handlebar](http://handlebarsjs.com/) templates to build pages,
+Uses [svelte](https://svelte.dev/) framework,
[leaflet](https://leafletjs.com/) for map interaction,
[bootstrap](https://getbootstrap.com/) for layout styling.
* After you change files in `src` directory run
```
- yarn build
+ yarn dev
```
+ which will start a webserver on port 9880 and auto-reloads
+ whenever you edit files.
-* Start a webserver on port 8000 to preview changes
-
- ```
- yarn start
- ```
+## Testing
-* Run code style check
+* Run syntax linter
```
yarn lint
4. Tag release: `git tag THE_VERSION_NUMBER`, `git push --tags`
-5. Upload release
\ No newline at end of file
+5. Create release on https://github.com/osm-search/nominatim-ui/releases
+ This (a triggered Github Action) will run `yarn build` and add the `dist/build/bundle.*` files.