Skip to content

emma-k-alexandra/GTFS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GTFS

Static and real time GTFS 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

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

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.