alacarte-maps-server — an easy to use renderer and server for OpenStreetMap tiles.


alacarte-maps-server [OPTIONS]


alaCarte is a tile renderer for OpenStreetMap data written in C++11, using Cairo for rendering and Boost-Spirit for MapCSS parsing. It includes an HTTP server to serve the tiles using the Slippy map tilenames convention. With this you can run the whole rendering stack with just one command.

alaCarte was designed with medium dataset size in mind. On a typical machine with at leat 8GB RAM, alaCarte can handle a unfiltered export from the federal state of Baden-Wuerttemberg (Germany).

alaCarte was developed as part of a lab course student software project at KIT.

It uses its own file format. For this you can use the alacarte-maps-importer to convert an osm xml file.


-h, --help
Produce help message
-c, --config <path> (=alacarte-maps.conf)
Specifies a config file which will be loaded at program start. Absolute and relative paths are possible. Additionally we search in /etc.
-l, --logfile <path> (=log.txt)
Specifies the path of the logfile.
-g, --server.geo-data <path>
Path where preprocessed data is saved.
-s, <path> (=.)
Path to be observed for stylesheets, default current directory.
-a, --server.access-log <path> (=access_log.txt)
File where server access will be logged.
-d, --server.default-style <arg> (=default)
Name of the default stylesheet. The name is given without the suffix .mapcss
-t, --server.default-tile <path> (=default.png)
Default tile, which is returned if an error occured. The path is relative to current directory.
-n, --server.num-threads <num> (=4)
Number of threads used to process a request.
-o, --server.parse-timeout <num> (=750)
Maximal time in ms to parse a stylesheet.
-z, --server.prerender-level <num> (=12)
Highest zoomlevel to enqueue for prerendering.
--server.address <IP> (=
Address of the server.
-p, --server.port <num> (=8080)
Port to bind the server.
-q, --server.max-queue <num> (=1024)
Size for server queue.
--server.cache-size <num> (=1024)
Maximal amount of tiles in cache in memory.
--server.cache-keep-tile <num> (=12)
From 0 this zoomlevel, tiles are written to harddrive. Above they have to be rendered again, whih may be faster than rading from hard drive for high zoomlevels.
--server.cache-path <path> (=cache)
Path to store evicted prerendered tiles which can no loonger be kept in memory. Relative to current directory.
--server.log-mute-component arg
List of all components which should be muted.
--server.performance-log <path>
Path where the performance log will be saved. If not set the performance log will not be created.


$ alacarte-maps-server -g data.carte -s ../data/mapcss