diff --git a/README.md b/README.md
index f9d4011..1b20de3 100644
--- a/README.md
+++ b/README.md
@@ -13,7 +13,47 @@ live information for gtfs data feeds (though is specifically tailored to SEPTA).
- [] implement support for connecting legs of a Regional Rail trip
- [] work on providing a better experience with non-SEPTA gtfs files
- [] simple account system to save info such as work commute/fav routes
+- [] parse gtfs data ourselves instead of using library
+- [] support more of the gtfs specification
+
+## Building
+
+The build system for this isn't extremely straightforward. I have a shell.nix that
+contains some shell utils specific to this project, but don't have a flake setup
+that would allow you to easily build. If you have a newer rust toolchain installed,
+you should be able to run this with Cargo.
+
+I also provide a Dockerfile you can use as the base for a dev container.
+
+## Running
+
+There's a config file in this repository that has a format for specifying GTFS
+file locations as well as 'annotations' to those files to enrich them. Currently,
+the following annotations exist:
+
+- **multiplatform_stops:** used to combine multiple stops into one stop as though
+each 'sub-stop' is it's own platform. This is useful for when a transit authority
+(specifically one in southeastern PA) does not provide [stop_areas.txt](https://gtfs.org/documentation/schedule/reference/#stop_areastxt).
+
+```yaml
+- id: 'WTC'
+ name: 'Wissahickon Transit Center'
+ platform_station_ids:
+ - 'SEPTABUS_2'
+ - 'SEPTABUS_31032'
+ - 'SEPTABUS_32980'
+ - 'SEPTABUS_32988'
+ - 'SEPTABUS_32989'
+ - 'SEPTABUS_32990'
+ - 'SEPTABUS_32992'
+ - 'SEPTABUS_32993'
+ - 'SEPTARAIL_90220'
+```
+
+This project uses postgres (via sqlx) to store an archive of realtime data, though
+it is not required to run SEPTASTIC (all transit data is stored in-memory).
---
-I have an instance of this running at [septastic.net](https://septastic.net)
+I have an instance of this running at [septastic.net](https://septastic.net),
+feel free to check it out.
diff --git a/web/src/controllers/stop.rs b/web/src/controllers/stop.rs
index 1cd8012..5321509 100644
--- a/web/src/controllers/stop.rs
+++ b/web/src/controllers/stop.rs
@@ -4,13 +4,12 @@ use crate::{
templates::TripPerspective,
};
use actix_web::{
- HttpResponse, Responder, get,
- web::{self, Data},
+ HttpResponse, Responder, get, post, web::{self, Data}
};
use askama::Template;
use chrono::{TimeDelta, Timelike};
use chrono_tz::America::New_York;
-use libseptastic::stop_schedule::{SeatAvailability, Trip, TripTracking};
+use libseptastic::{stop::Stop, stop_schedule::{SeatAvailability, Trip, TripTracking}};
use serde::{Deserialize, Serialize};
use serde_qs::actix::QsQuery;
use std::{
@@ -193,6 +192,39 @@ async fn get_stops_html(state: Data
- SEPTASTIC is a website and (a soon to be) mobile app. Its purpose is to provide - information about how to ride SEPTA (and connecting transit authorities) in a - quick and information-rich manner. + SEPTASTIC is a website which provides information about riding SEPTA. It's + source code is available at + git.nickorlow.com
+- Currently, all this website has is timetables for every - SEPTA route. More to come soon! + This website is mostly for personal use, and thus the interface and data + is tailored to my SEPTA riding experience. This manifests in a couple of + weird things, such as the non-existent 'Susquehanna Transit Center'.
+ + diff --git a/web/templates/stop_search_results.html b/web/templates/stop_search_results.html new file mode 100644 index 0000000..9c16d43 --- /dev/null +++ b/web/templates/stop_search_results.html @@ -0,0 +1,12 @@ +{% for stop in results %} + +[ {{ stop.name }}
+]
+ +{% endfor %} + +{% if results.len() == 0 %} +No results found
+{% endif %} diff --git a/web/templates/stops.html b/web/templates/stops.html index b64ba08..17158d6 100644 --- a/web/templates/stops.html +++ b/web/templates/stops.html @@ -14,6 +14,19 @@ {% endfor %} +