the-septa-times

Crates.iothe-septa-times
lib.rsthe-septa-times
version0.9.1
sourcesrc
created_at2023-10-28 03:12:26.681209
updated_at2024-11-27 22:58:28.871662
descriptionA CLI application for the SEPTA API
homepagehttps://github.com/dotzenith/TheSeptaTimes.rs
repositoryhttps://github.com/dotzenith/TheSeptaTimes.rs
max_upload_size
id1016671
size89,742
zenith (dotzenith)

documentation

README

━━━━━━ ❖ ━━━━━━



❖ TheSeptaTimes.rs

TheSeptaTimes.rs is an easy-to-use commandline utility to fetch information about regional SEPTA trains

septa gif

❖ Installation

Shell

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/dotzenith/TheSeptaTimes.rs/releases/latest/download/the-septa-times-installer.sh | sh

Brew

brew install dotzenith/tap/the-septa-times

Powershell

powershell -ExecutionPolicy ByPass -c "irm https://github.com/dotzenith/TheSeptaTimes.rs/releases/latest/download/the-septa-times-installer.ps1 | iex"

Cargo

cargo install the-septa-times

Binaries

Pre-Compiled binaries for linux, mac, and windows are available in Releases

Source

  • First, install rust
git clone https://github.com/dotzenith/TheSeptaTimes.rs.git
cd TheSeptaTimes.rs
cargo build --release
./target/release/tst

❖ Usage

A CLI application for the SEPTA API

Usage: tst <COMMAND>

Commands:
  next      Search for the next train going from an origin to a destination
  arrivals  Find the next arrivals at a given train station
  train     Track a given train
  stations  Get all valid station names
  extra     All of the extra endpoints added by Septum
  help      Print this message or the help of the given subcommand(s)

Options:
  -h, --help     Print help
  -V, --version  Print version

❖ Base commands

Get times for the next two trains that go from a given train station to another:

tst next '30th Street Station' 'North Philadelphia'

Since tst uses fuzzy matching, you can also do:

tst next 'suburban' '30th'

Setting SeptumURL as seen below will help make the fuzzy matching more accurate, but it is optional

List the next 6 arrivals at a given train station:

tst arrivals '30th Street Station' --count 6

Take a look at any given train's schedule using the train number:

tst train 9374

Get all valid train station names:

tst stations

❖ Extra commands provided by Septum

These commands require endpoints provided by Septum. tst requires the SeptumURL environment variable to be set like:

export SeptumURL="https://septum.jawn.website/api"

Get all lines supported by the tst extra schedule command:

tst extra lines

Get all stations on a given track, as supported by the tst extra schedule command:

tst extra stations TRE          # On the Trenton line

Get train schedule going from one station to another on a given line

This command also uses fuzzy matching so station names do not need to be exact

tst extra schedule TRE "Trenton" "Gray 30th Street" inbound weekday

❖ What's New?

0.9.1 - Updated the fallback for next-to-arrive station names


Commit count: 51

cargo fmt