Transportation planning and traffic simulation software for creating cities friendlier to walking, biking, and public transit
Go to file
2021-03-19 11:56:22 -07:00
.github/workflows Prepare the new map importer to work in the release. [rebuild] 2021-03-15 14:16:18 -07:00
abstio Use our native download function instead of external curl command from the importer. #523 2021-03-17 10:29:28 -07:00
abstutil Change some uses of Into<String> to AsRef<str>, to avoid allocations. #253 2021-03-11 11:29:18 -08:00
collisions Upgrade most dependencies 2021-02-03 18:13:06 -08:00
convert_osm Scrape elevation_lookups output, filling out the elevation just at intersections. #82 2021-03-18 17:48:33 -07:00
data Workaround an issue with how the length of roads is measured and related 2021-03-18 19:04:15 -07:00
fifteen_min Use AsRef<str> in more widgetry methods, getting rid of &format at many 2021-03-11 11:29:18 -08:00
game fix missized icon 2021-03-19 11:03:40 -07:00
geom meter shows "finished trips vs baseline" instead of time (#565) 2021-03-15 17:10:08 -07:00
headless Rename Map::new to be more clear that it should only be used in non-UI 2021-03-12 06:38:17 -08:00
importer Remove the old SRTM code, which has always been broken. Remove the elevation from importer config; the new approach will detect the right data source to use automatically using the bbox. #82 2021-03-18 10:14:43 -07:00
kml Refactor lots of places that construct paths to the data/input dir, which is always organized by city. This would've made the previous change way easier. #326 2021-02-13 18:30:01 -08:00
map_editor Scrape elevation_lookups output, filling out the elevation just at intersections. #82 2021-03-18 17:48:33 -07:00
map_gui Fix crash when viewing settings in osm_viewer 2021-03-19 11:03:40 -07:00
map_model Workaround an issue with how the length of roads is measured and related 2021-03-18 19:04:15 -07:00
osm_viewer minimap controls: agent toggles and meters into one row 2021-03-16 18:28:50 -07:00
parking_mapper Rename {Text,TextSpan}::draw to into_widget, for consistency. #253 2021-03-09 09:59:30 -08:00
popdat Tidy up the new UK census gen code. #556 2021-03-05 16:51:02 -08:00
release Remove the old SRTM code, which has always been broken. Remove the elevation from importer config; the new approach will detect the right data source to use automatically using the bbox. #82 2021-03-18 10:14:43 -07:00
santa Replace ButtonImage with Image 2021-03-17 19:06:43 -07:00
sim Add a button to save scenarios to a file if they're generated. This is useful for avoiding the performance hit of regenerating them again. 2021-03-17 10:02:52 -07:00
sumo The grand country split. #326 2021-02-13 15:45:59 -08:00
tests Remove the old SRTM code, which has always been broken. Remove the elevation from importer config; the new approach will detect the right data source to use automatically using the bbox. #82 2021-03-18 10:14:43 -07:00
traffic_seitan Rename Map::new to be more clear that it should only be used in non-UI 2021-03-12 06:38:17 -08:00
traffic_signal_data Make Poundbury run more smoothly, and prebake sim data for all 2021-03-09 10:45:44 -08:00
updater Start to integrate Eldan's elevation_lookups tool. #82 2021-03-18 11:18:05 -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
widgetry WIP: spiked tabs implementation for widgetry demo 2021-03-19 11:56:22 -07:00
widgetry_demo use daytheme in widgetry demo 2021-03-19 11:56:22 -07:00
.gitignore Import Tempe, AZ for collaboration with ASU 2021-03-17 10:55:04 -07:00
Cargo.lock Remove the old SRTM code, which has always been broken. Remove the elevation from importer config; the new approach will detect the right data source to use automatically using the bbox. #82 2021-03-18 10:14:43 -07:00
Cargo.toml Fix flatgeobuf dependency, which was bringing in native SSL bindings. Closes #519 2021-02-18 10:28:11 -08:00
clippy.sh round of clippy. not fixing everything. 2019-12-11 16:17:15 -08:00
import.sh Attempt to display the Timer progress and logs in separate parts of the screen when running the importer. #262 2021-01-21 19:57:38 -08:00
LICENSE Initial import of A/B Street prototype. 2018-03-13 08:06:03 -07:00
README.md Start to integrate Eldan's elevation_lookups tool. #82 2021-03-18 11:18:05 -07:00
rgrep.sh Set up a test scenario for lane-changing to reproduce #382. The same 2020-11-11 11:33:47 -08:00
rustfmt.toml tweaking rustfmt options; the long literal string vecs in tutorial look awful 2020-01-21 15:20:02 -08: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, including ways to help. If you want to bring this to your city or if you're skilled in design, traffic simulation, data visualization, or civic/government outreach, please contact Dustin Carlino at dabreegster@gmail.com. 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:

Others:

Data: