# roadstyle > Python library: turn a GeoDataFrame of road edges (LineString geometry + an OSM `highway` column) into one styled, interactive, offline HTML map (MapLibre, data inlined) with road cartography (casing and fill, per-zoom widths, labels, one-way arrows, bridges and tunnels, 3D), Google Street View for the clicked road (a Street View button and floating window by default; `street_view=True` for a plain popup link, `False` for none; `rs.render_street_view` for a side-by-side page), and a `window.rs*` JavaScript API. `pip install roadstyle`; main call `rs.render_edges(gdf, ...).save("map.html")`. osmnx edges work as they are; `pip install "roadstyle[mcp]"` adds `roadstyle-mcp`, an MCP server for AI agents. Edges are directed: a two-way road is two edges with reversed geometry. JS calls (rsSelect, rsColor, rsFocus) take roadstyle feature ids from `rsQuery`, never your own `edge_id`. Unknown keywords to `render_edges` are silently ignored. ## Start here - [Agent skill](https://raw.githubusercontent.com/Khoshkhah/roadstyle/main/skills/roadstyle/SKILL.md): the one call, the data contract, the JS API and the traps, in one page - [README](https://raw.githubusercontent.com/Khoshkhah/roadstyle/main/README.md): install, quickstart, data contract ## Reference - [Every parameter](https://raw.githubusercontent.com/Khoshkhah/roadstyle/main/docs/reference/parameters.md): every public function and class, every keyword of render_edges per backend, the pages, stylers, Overlay, StyleConfig - [JavaScript API](https://raw.githubusercontent.com/Khoshkhah/roadstyle/main/docs/reference/javascript.md): every window.rs* function, every rs:* event, the registries - [Settings & palettes](https://raw.githubusercontent.com/Khoshkhah/roadstyle/main/docs/reference/settings.md): the settings files, the palettes, base maps and API keys - [Command line](https://raw.githubusercontent.com/Khoshkhah/roadstyle/main/docs/reference/cli.md): every flag of `roadstyle`, --page, roadstyle studio ## Guides - [Get started](https://raw.githubusercontent.com/Khoshkhah/roadstyle/main/docs/get-started.md): install, a first map, what your data needs, loading data - [Style the roads](https://raw.githubusercontent.com/Khoshkhah/roadstyle/main/docs/guides/style.md): palettes, base maps, labels, arrows, 3D bridges, filtering - [Colour by your data](https://raw.githubusercontent.com/Khoshkhah/roadstyle/main/docs/guides/colour.md): color_by, color_table, several colourings with a menu - [Roads from OpenStreetMap](https://raw.githubusercontent.com/Khoshkhah/roadstyle/main/docs/guides/osmnx.md): osmnx download → render_edges, area and network_type, bridge/tunnel-safe simplification, Overpass failures - [Add your own layers](https://raw.githubusercontent.com/Khoshkhah/roadstyle/main/docs/guides/overlays.md): Overlay zones, points, lines - [Google Street View](https://raw.githubusercontent.com/Khoshkhah/roadstyle/main/docs/guides/street-view.md): the floating window (default) and the side-by-side page (beside / below) - [Big networks](https://raw.githubusercontent.com/Khoshkhah/roadstyle/main/docs/guides/big-networks.md): tiles=True, lonboard, choosing a backend - [Dashboards & JavaScript](https://raw.githubusercontent.com/Khoshkhah/roadstyle/main/docs/guides/dashboards.md): ready-made pages, driving the map from your own page - [AI agents](https://raw.githubusercontent.com/Khoshkhah/roadstyle/main/docs/guides/agents.md): the MCP server (render_place, render_file, snapshot) and the agent skill - [Put it on a website](https://raw.githubusercontent.com/Khoshkhah/roadstyle/main/docs/guides/website.md): iframe, the JSON spec, roadstyle.js - [Gallery](https://raw.githubusercontent.com/Khoshkhah/roadstyle/main/docs/gallery.md): one screenshot and the code for each look ## Optional - [Studio](https://raw.githubusercontent.com/Khoshkhah/roadstyle/main/docs/studio.md): the no-code Streamlit workbench - [Changelog](https://raw.githubusercontent.com/Khoshkhah/roadstyle/main/CHANGELOG.md)