JacobHearst / GTFS

GTFS and GTFS-RT structures for Swift

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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.

About

GTFS and GTFS-RT structures for Swift

License:MIT License


Languages

Language:Swift 100.0%