emma-k-alexandra/gtfs
Static and real time [GTFS](https://github.com/google/transit/blob/master/gtfs/spec/en/reference.md) structures for Swift.
Note
This package is intentionally left as a simple converter into GTFS-reference exact structures. Individual GTFS and GTFS-RT data feeds vary and you will want to build on top of the provided structures for more convient usage with your specific data.
Contents
- Getting Started - GTFS - GTFS-RT - Design
Requirements
- Swift 5.4
Installation
Swift Package Manager
dependencies: [
.package(
name: "GTFS",
url: "https://github.com/emma-k-alexandra/GTFS.git",
.upToNextMajor(from: .init(1, 0, 1))
)
]Add the dependency GTFS to your target.
Usage
Getting Started
GTFS
let gtfs = try GTFS(path: stringPath)Where stringPath points to your GTFS folder.
GTFS-RT
let data: Data = fetchGTFSRTData()
let feedMessage = TransitRealtime_FeedMessage(serializedData: data)Design
GTFS provides simple structures for GTFS data. Notably initializing a GTFS object can take a long time, so this portion of the package is not recommended for on-device usable. GTFS-RT structures are provided via Apple's Swift ProtoBuff package.
Dependencies
- swift-protobuf, for GTFS-RT.
Testing
Currently SwiftPM doesn't provide fixtures, so testing this package is difficult, and in progress.
Contact
Feel free to email questions and comments to emma@emma.sh
License
GTFSis released under the MIT license. See LICENSE for details.
Package Metadata
Repository: emma-k-alexandra/gtfs
Default branch: main
README: README.md