# Gener'Communes A small generator of names of French municipalities. Based on the [list of all municipalities](https://www.data.gouv.fr/fr/datasets/referentiel-geographique-francais-communes-unites-urbaines-aires-urbaines-departements-academies-regions/), this tool analyses the names and extracts the words forming the names to train a model of names. Names can then be generated from the model. There is a model for each departement, so the names can be generated at a departement level. The web interface aggregates the models to form additional generators: by regions and for the whole set. ## Generating the model The extractor uses Racket. The script `extract.sh` downloads the list of municipalities from the original source and call the `extractor.rkt` script to generate the file `web/gener-communes.json` containing the models. ## Generating names There is two ways to generate names: - by using the `name-generator.rkt` script (generates 100 names) - by using the web interface (one at a time) ## Web interface The `web` directory contains a sample web interface to generate names from the JSON model. The implementation of generators is located in the script `web/gener-communes.js`. To use it on any webpage: - include the script on your page (`` in the headers) - add a div (or another block element) with the `gener-communes` id - call the `genercommunes.load()` function with the JSON file to use as an argument (either in the `onload` method of the body, or in a script tags placed after the `gener-communes` block ex: ``)