Metadata-Version: 2.4
Name: LTADatamall-py
Version: 0.1.2
Summary: LTA Datamall API Wrapper
Author-email: FishballNoodles <joelkhor.work@gmail.com>
License: MIT
Project-URL: Homepage, https://github.com/TheReaper62/ltadatamall-py
Project-URL: Bug_Tracker, https://github.com/TheReaper62/ltadatamall-py/issues
Keywords: lta,datamall,bus,timing,arrival,train,service,passenger volume,taxi
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Build Tools
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: requests>=2.31.0
Requires-Dist: aiohttp>=3.9.0
Provides-Extra: docs
Requires-Dist: mkdocs>=1.5; extra == "docs"
Requires-Dist: mkdocs-material>=9.5; extra == "docs"
Requires-Dist: mkdocstrings[python]>=0.24; extra == "docs"
Provides-Extra: dev
Requires-Dist: pytest>=8.0; extra == "dev"
Requires-Dist: pytest-cov>=4.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.23; extra == "dev"
Requires-Dist: python-dotenv>=1.0; extra == "dev"
Dynamic: license-file


# LTADatamall-py

Welcome to the documentation for **LTADatamall-py**, an elegant Python wrapper for Singapore's Land Transport Authority (LTA) DataMall API. It offers full synchronous and asynchronous implementations to monitor real-time transport services smoothly.

---

## Navigation & API Reference

Explore the different modules of the SDK by jumping straight to their specific reference guides:

* 🚍 **[Bus Manager](reference/bus_manager.md):** Track real-time bus arrival timings, view comprehensive metadata for active services, and fetch route paths or bus stop positions.
* 🚇 **[Train Alerts](reference/train_service_alert.md):** Monitor live MRT and LRT network operational breakdowns, affected station codes, and free shuttle bus availability options.
* 📊 **[Passenger Volume](reference/passenger_volume.md):** Generate dynamic download URL links for bulk monthly passenger volume CSV matrix sheets.

---

## Quick Installation

Install the package directly from PyPI:

```bash
pip install LTADatamall-py
```

---

## Services/Information Provided

1. Bus Related

   - Bus Arrival
   - Bus Stop
   - Bus Route
2. Passenger Volume

   - Train Station
   - Bus Stop
3. Train Service Alert

   - Train Service Alert Messages

   ---

   ## Quick Start Paradigm

   Here is a quick-start example showing how easily you can use the package to stream real-time Singapore transit configurations:

```python
from ltadatamall import BusManager

# Initialize the manager using your confidential LTA Account Key profile
manager = BusManager(api_key="YOUR_LTA_DATAMALL_ACCOUNT_KEY")

# Fetch structured real-time arrival metrics for an explicit bus stop
arrivals = manager.get_bus_arrival(bus_stop_code="65009")

for service in arrivals:
    print(f"Service: {service.service_no} -> Next Bus: {service.next_bus.estimated_arrival}")
```
