Add AequilibraE support (#1)#511
Conversation
* Initial commit, re-target npm deploy and change tagline * Stop the deploy command trying (and failing) to set relative paths. Do it myself. * misc splash page reformatting * add aeq plugin, copied from xml viewer * Add to plugin repo * Flesh out reader.vue, add file system to extend http fs * Clean up sqlite calls * update templates, config access, add yaml parsing, etc * Successfully reading tables from spatialite database * remove comment * Complete architecture for dashboards etc * refine dashboard functionality * Remote hosted demo * hit s3 bucket files, not the aws console * Extend file system to support S3 * Drop custom map component, use the existing one * . * Trim comments * Refactor * Add style by param * Map centering and zoom * Adds ability to join another (results) database * many small fixes * Revert irrelevant changes * Dont track changes to package-lock.json, bloating PR * Did that last one wrong * Revert changes to scripts in package.json * drop erroneous notes * Refactor of styling * stop tracking changes on package-lock.json * . * Scaling by meters/pixels options * Main .vue refactor * tweaks * Add dataRange to colours * Add ability to filter sql query from yaml * Fix map resize bug * Manually defined legends * . * Fix S3 support for panels opening webworkers * revert changes to tile.vue * Remove localhost from datasources on splash * add manual linewidths to styling * Fix basemap and uncolour tiles * style tweaking in tile panel, plotly now supports fixed axis * Meter or pixels for radius units * Removed dark-matter, use internal options * Linting * Drop dark matter * rounding out styling, more careful loading and memory management, documentation and refactoring * Cleaning, add sqlfilter to joined db * cache database loading * Refactoring * Compacting code * Apply suggestions from code review Co-authored-by: Copilot <[email protected]> * Refactor aequlibrae plugin to sqlite-map to generalise * sqlite-map: avoid caching remote DBs; clear join-data cache and export clearAllCaches alias * sqlite-map: re-enable DB caching for all paths; deck: honor initialView and finalize overlay on destroy * revert: undo DeckMapComponent.vue edits (restore previous behavior) * refactoring, fixes to zoom. Issue with caching * More refactoring * Init. commit adding POLARIS features * Drop polaris again, extend db.ts for some better generality * Tom/extend tile panel (#4) * Extend tile.vue to support hard-coded key-value pairs, sqlite queries for said values, sqlite queries for entire table * Full SQL support, either individual queries or a full table * Add usage comment * Colour palette-ing, defaults to original pastel palette * Apply suggestions from review * Revert erroneous changes * Cleaning, renaming * Refactoring sqlite-map, mostly styling * . * Linting * Move docs out of comments * rename to aequilibrae-map * Tidy, replace filesystem with default * Rename map 'readers' to 'mapComponents' * Fix legend * Refactor * . --------- Co-authored-by: Copilot <[email protected]>
|
@tomstephen - wow this is quite a nice addition, thanks so much for sending this PR! I think the SQL-based viewer could be really beneficial for many people out there 🙏 It's a large PR so I need to some time to go through all of this. Just some quick notes before I dive in:
Lots to chew on here! This is by far the largest PR I've received from outside our little dev team here in Berlin. Heaps of thanks to you and your team for putting this much effort into this open source project. |
|
Great to hear such a positive response, we were a little worried it was too
much for a single pr so totally get that this might take a while to review
I'll let Tom respond to the bulk of your comments but the last question I
can help with. When someone outside your org submits a out you have to
approve them to use your ci automations - just in case we included a
Bitcoin miner inn the ci pipeline
We tried to make sure the tile components were backwards compatible
hopefully it lines up with all the user cases you have automated
- Jamie
http://jamiecook.wordpress.com
…On Tue, 20 Jan 2026 at 12:17 am, Billy Charlton ***@***.***> wrote:
*billyc* left a comment (simwrapper/simwrapper#511)
<#511 (comment)>
@tomstephen <https://github.com/tomstephen> - wow this is quite a nice
addition, thanks so much for sending this PR! I think the SQL-based viewer
could be really beneficial for many people out there 🙏
It's a large PR so I need to some time to go through all of this. Just
some quick notes before I dive in:
- Yes, the docs should be a separate PR in the
github.com/simwrapper/simwrapper.github.io repo. It would help me
understand the code if that was added soon.
- The example site looks really nice! It would be cool if I could get
a .zip of the files (or similar) to add to our automated testing suite for
the new views. Is that possible?
- There are a few new dependencies, including packages that only have
a few hundred weekly installs. I'm usually wary of one-off npm packages.
There are already a TON of dependencies. Can you tell me the difference
between the spatialite and spl.js packages? Do we need both? (At one
point, we were using the sql.js package but removed it since we ended
up not using it. So I know that one :-) )
- There are changes to some common components like the Plotly and Tile
plugins. I'll have to make sure that these additions aren't causing
problems for our existing dashboards, of which there are many!
- GitHub is telling me that "1 workflow awaiting approval" in the PR.
What is this? I haven't seen that before.
Lots to chew on here! This is by far the largest PR I've received from
outside our little dev team here in Berlin. Heaps of thanks to you and your
team for putting this much effort into this open source project.
—
Reply to this email directly, view it on GitHub
<#511 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AABE4VEEAUGBWD26BSOPSPD4HTRQRAVCNFSM6AAAAACR4FGVRKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZTONRYGU3DANZVGY>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
|
@jamiecook ok makes sense re: the workflow. I guess the previous PRs have all been internal to my org so I didn't notice that before. Now that it's enabled, the test suite tries to run... but fails immediately because So, please run |
|
Thanks for all the feedback @billyc ! On those dot points,
|
…erived columns work (lineColor+lineWidth) sqlite-map: robust join query and fetch all needed join columns for style-driven columns
|
Hey @billyc - was there anything else you identified as needing done on this? I think it's looking fairly complete, but tests still haven't been authorized so might be one or two little changes needed. @tomstephen can you update the PR description with the linkage to the documentation PR too please. |
|
Hi guys, I'm back from holiday. And stupidly I didn't click the "authorize tests" button before I left so you couldn't see them run or fail 🤣 . Sorry about that. The package-lock.json file was out of sync with your new carto-colors which caused the action to fail. Once I updated that, the tests ran here locally without incident. I also reviewed the files you changed and briefly examined the new plugin: everything seems quite compartmentalized and in good shape!
Next I'm going to load up the test data files that you sent and see if I can get them to display, make sure it's loading and unloading properly, etc. |
…ads, pass center info with view-state update
|
Hey Billy, thanks for all the advice! (0) Doh. package.lock updated! (1) Yes, I see that too. Now closing things properly, I can see the worker disappear between dashboards. I do see one remaining, which I believe is the maplibre worker. This seems to remain while other dashboards however (say, https://simwrapper.app/examples/11-public-transport/) so I'm guessing that is intentional. Also noticed a potential memory issue from passing the view state poorly (ie not providing the center), then maps competing to update it, fixed that. Seems better on my end now... (2) Not intentional, have added scale bar/north arrow! Cheers, |
|
Hey @billyc , The latest AequilibraE support brings tools to build SimWrapper dashboards!! The documentation is coming, so you should see an uptick in usage in the next few months! |
@pedrocamargo This is awesome! I always felt like these projects/tools were complementary. Now it's happening! Thanks guys :-) |
|
@tomstephen I'll put this on staging today, it's more than good enough at this point. With your permission may I use those test files you sent me as part of the Playwright automated test suite? I try to have at least one test per plugin, to ensure that the view loads and appears on-screen. Then as bugs arrive we try to to TDD to fix the bugs. (Most of the time, anyway). |
|
Thanks @billyc ! Yes, those test files are fine to include. |
|
The Aequilibrae support is now live with release v4.5 of SimWrapper. You can see the test dashboard at the following link: Thanks guys, this is great. 🙏 Normally I write up a little announcement when new features land. If you have something you want me to say other than "now supports Aequilibrae networks" please let me know!! I'll also merge the documentation you supplied now, since the features are live. |
|
Just saying it supports AequilibraE models should be enough, @billyc. Thanks! Well done, @tomstephen. |

This PR,
Closes #507
I have documentation for the AequilibraE map panels and extension to Tile, am I right in assuming that should be a PR back to https://github.com/simwrapper/simwrapper.github.io ?Documentation PR open hereThere is also a demo hosted at https://explore.outerloop.io/chicago/. Happy to look to setup a more permanent demo for the docs if that would help.
Some run-time errors and tidying left to do but mostly complete as is.Open to any and all feedback while I'm finishing this off!