#public-transport #dresden #system-api #query #serialization #iso-8601 #rfc-3339

dvb

An unofficial crate to query publicly accessible API methods for Dresden's public transport system

13 releases (7 breaking)

Uses new Rust 2024

new 0.8.0 Feb 20, 2026
0.7.3 Dec 25, 2025
0.7.0 Oct 29, 2025
0.4.1 Dec 22, 2022
0.3.0 Nov 22, 2016

#478 in Web programming


Used in dvb-mcp

MIT/Apache

59KB
1.5K SLoC

Dvb API library in Rust

An unofficial Rust library for querying Dresden's public transport system API.

Features

iso8601-serialization

By default, DvbTime deserializes from the DVB API's custom /Date(...) format and serializes back to the same format.

Enable the iso8601-serialization feature to serialize DvbTime as ISO8601/RFC3339 format instead, while still deserializing from the DVB format:

[dependencies]
dvb = { version = "0.7", features = ["iso8601-serialization"] }

This is useful when you need to:

  • Receive data from the DVB API (deserializes /Date(...) format)
  • Pass that data forward in a more standard format (serializes as ISO8601)

Without the feature:

let time = DvbTime::from_str("/Date(1609459200000+0100)/").unwrap();
let json = serde_json::to_string(&time).unwrap();
// json = "\"/Date(1609459200000+0100)/\""

With the feature:

let time = DvbTime::from_str("/Date(1609459200000+0100)/").unwrap();
let json = serde_json::to_string(&time).unwrap();
// json = "\"2021-01-01T00:00:00+01:00\""

Dependencies

~8–25MB
~293K SLoC