An open API service indexing awesome lists of open source software.

https://github.com/wylee/mystops

A map-based view of transit stops and arrivals
https://github.com/wylee/mystops

django maps openlayers openstreetmap postgis postgresql python transit typescript vuejs

Last synced: 6 months ago
JSON representation

A map-based view of transit stops and arrivals

Awesome Lists containing this project

README

          

# MyStops

This application shows bus & train arrivals from TriMet's
TransitTrackerâ„¢ service. It will allow users to save stops of interest
and view upcoming arrivals on a map or in a list.

## Disclaimer

This application is currently in the initial stages of development and
_should not_ be considered a reliable source for TriMet arrival times or
any other information. Arrival times and other information _should_ be
verified via TriMet's official TransitTrackerâ„¢ or by other means.

## Planned Features

* Stop lookup by stop ID
* Stop lookup by current location
* Stop lookup by address search (maybe?)
* Saving of looked-up stops
* Grouping of saved stops; e.g., stops near home and work
* Filtering by route per stop; e.g., for the stop near home, only show
me the MAX Green Line
* Map view of saved stops showing upcoming arrivals using visual cues;
i.e., highlight stops with arrivals in the next few minutes in green,
stops with arrivals in ~10 minutes in yellow, etc

## Technical Details

### TriMet API

* Developer site: http://developer.trimet.org/
* API registration: http://developer.trimet.org/appid/registration/
* Arrivals: http://developer.trimet.org/ws_docs/arrivals2_ws.shtml
* Stops: http://developer.trimet.org/ws_docs/stop_location_ws.shtml

NOTE: You'll need a TriMet API key for use in development. You can get
one from the API registration page.

### Installation

```shell
uv sync
uv run dk install
uv run dk migrate
uv run dk start
```

### Running

```shell
uv run dk start
```

### Stack

* Linux
* PostgreSQL 13
* PostGIS 3
* Python 3.9
* Django 4.2
* TypeScript
* React
* React Router
* OpenLayers