Transportation planning and traffic simulation software for creating cities friendlier to walking, biking, and public transit
Go to file
Dustin Carlino 4cfb06da97 Make the Map cloneable, by being careful with the thread-local pathfinder state.
I think this will help simplify calculate_unedited_map. But even if not,
this is bound to come in handy.
2021-07-15 18:34:42 -07:00
.github/workflows Upgrade to Rust 1.53 2021-06-17 23:04:35 -07:00
abstio Import a new city using Overpass, instead of Geofabrik + clipping. #523 2021-07-12 14:06:54 -07:00
abstutil Serialize trimmed f64's in the geom crate as i32, since the f64's are 2021-06-30 06:35:42 -07:00
cloud Rewrite the heuristics for stop signs. Similar to traffic signals, only 2021-05-27 15:37:46 -07:00
collisions Fix compilation failures and most clippy warnings (#642) 2021-05-14 08:32:56 -07:00
convert_osm Fixing small style/clippy problems and kicking off a [rebuild] [release] 2021-07-13 22:52:56 -07:00
data Update actdev scenarios with fixed departure times 2021-07-14 15:04:56 -07:00
fifteen_min Fix some clippy warnings 2021-06-16 16:21:35 -07:00
game Consistently follow rules for whether a lane can be edited. #597 2021-07-15 18:21:49 -07:00
geom add tests, fix remainder rounding in parts 2021-07-13 22:51:18 -07:00
headless Some fixups to the regenerated data from the past two commits: 2021-07-05 17:51:40 -07:00
importer Grab everything from Overpass, so importing from it looks more complete. #523 2021-07-12 14:21:33 -07:00
kml CLI flag to start in the KML viewer for convenience 2021-06-16 11:14:17 -07:00
map_editor Add a button to reload RawMap in editor, effectively making a way to undo a tested merge operation. #654 2021-07-11 12:29:45 -07:00
map_gui Speed up the previous by caching road_to_buildings in Map. 2021-07-15 18:12:15 -07:00
map_model Make the Map cloneable, by being careful with the thread-local pathfinder state. 2021-07-15 18:34:42 -07:00
osm_viewer Draw building driveways per zoomed-in road, rather than as one map-wide batch. Otherwise, every single edit to road width needs to redraw all driveways. This doesn't scale with larger maps! 2021-07-15 18:05:04 -07:00
parking_mapper Upgrade to Rust 1.53 2021-06-17 23:04:35 -07:00
popdat Fix some clippy warnings 2021-06-16 16:21:35 -07:00
release Update links to docs after some reorg in the other repo 2021-06-12 13:38:38 -07:00
santa Upgrade to Rust 1.53 2021-06-17 23:04:35 -07:00
sim estimate_duration already knows the mode, from the PathRequest 2021-07-14 12:38:19 -07:00
sumo Fix some clippy warnings 2021-06-16 16:21:35 -07:00
tests Update actdev scenarios with fixed departure times 2021-07-14 15:04:56 -07:00
traffic_seitan Add a debug tool to dump JSON for different objects and open up with an external viewer. [rebuild] [release] 2021-07-04 15:32:49 -07:00
traffic_signal_data Stop building huge_seattle twice in the importer workflow 2021-06-25 12:18:04 -07:00
updater Import a new city using Overpass, instead of Geofabrik + clipping. #523 2021-07-12 14:06:54 -07:00
videos Delete mdbook. It's been split out to https://github.com/a-b-street/docs 2021-01-31 15:44:41 -08:00
web Just trigger [rebuild] [release] 2021-06-06 14:32:59 -07:00
widgetry return Duration not mins 2021-07-13 22:51:18 -07:00
widgetry_demo Upgrade more dependencies. 2021-05-22 16:36:57 -07:00
.dockerignore Create a Docker image to run the map importer in the almighty cloud. #326 2021-05-06 17:35:58 -07:00
.gitignore Start importing a piece of Sao Paulo for a collaboration. 2021-07-06 10:57:53 -07:00
Cargo.lock Fix the Dijkstra pathfinding, by using DiGraph, which is serializable 2021-07-10 17:14:10 -07:00
Cargo.toml Update dependencies (#656) 2021-05-22 16:23:06 -07:00
import.sh Two slight adjustments to speed up the map importer development 2021-06-24 12:13:47 -07:00
LICENSE Initial import of A/B Street prototype. 2018-03-13 08:06:03 -07:00
README.md new release, mid-week 2021-07-14 09:37:31 -07:00
rgrep.sh Download only the cities specified in the UI map updater. 2021-04-19 17:55:42 -07:00

A/B Street

Ever been stuck in traffic on a bus, wondering why is there legal street parking instead of a dedicated bus lane? A/B Street is a game exploring how small changes to a city affect the movement of drivers, cyclists, transit users, and pedestrians. It works anywhere in the world, thanks to OpenStreetMap.

Show, don't tell

Alpha release trailer

Find a problem:

exploring_traffic

Make some changes:

editing_map

Measure the effects:

evaluating_impacts

Documentation

Roadmap and contributing

See the roadmap for current work, and all of the ways to contribute. Follow r/abstreet for weekly updates or @CarlinoDustin for occasional videos of recent progress.

Project mission

If you fix some traffic problem while playing A/B Street, my ultimate goal is for your changes to become a real proposal for adjusting Seattle's infrastructure. A/B Street is of course a game, using a simplified approach to traffic modeling, so city governments still have to evaluate proposals using their existing methods. A/B Street is intended as a conversation starter and tool to communicate ideas with interactive visualizations.

Why not leave city planning to professionals? People are local experts on the small slice of the city they interact with daily -- the one left turn lane that always backs up or a certain set of poorly timed walk signals. Laura Adler writes:

"Only with simple, accessible simulation programs can citizens become active generators of their own urban visions, not just passive recipients of options laid out by government officials."

Existing urban planning software is either proprietary or hard to use. A/B Street strives to be highly accessible, by being a fun, engaging game. See here for more guiding principles.

Credits

Core team:

See full credits