jeancochrane / findsepta Goto Github PK
View Code? Open in Web Editor NEW๐ A web app for geolocating SEPTA buses and trolleys in Philadelphia.
Home Page: https://findsepta.org
๐ A web app for geolocating SEPTA buses and trolleys in Philadelphia.
Home Page: https://findsepta.org
Not super high priority, but we should probably be testing that is in the list of routes before sending it along to SEPTA. Could be a security problem in a slightly different program (making a request from unsanitized user input) and should definitely throw an exception instead of getting an error from SEPTA.
Unfortunately, the route line information served by SEPTA isn't contiguous, so we can't model the movement of vehicles along their route. Once the map debugger is up and running we should try to clean these up and make them useable.
Get rid of the Bottle; switch to Flask instead.
Right now the hover effect on the bus stops is done through the Mapbox api and the mouseMove event โ could be replaced with CSS (:hover styling) and a custom marker for both performance and customization reasons. The cursors can also be changed to pointers via CSS instead of JS, over both the buses and the stops.
Bus data doesn't update in Safari! Opening the debugger shows javascript throwing an error "Object.values is not a function" โ because it's not supported in Safari.
For reference:
Object.values
Combobox currently has a bug where if you don't manually select the suggested route from the drop-down menu before sending the form (either by hitting "Find SEPTA" or the return key) it sends a request for the default route (2). Not the end of the world, but it makes for unintuitive UX.
Map debugger should probably be its own separate page, routed through app.py
. (Potentially a good standalone service?)
:D
Rather than requesting new data every 5 seconds, we could consider opening a request to the server that will only be completed if the data changes (and otherwise will time out and be repeated by the client). Here's a guide to doing that with bottle.
Alternatively, we could switch to node.js for the backend and use socket.io to update via websockets.
Something like this. We need to:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.