Skip to content

idarlington/nsdiruptions

Repository files navigation

NS-Disruptions

  • Scrapes the disruptions from api provided by the Dutch train service (NS)

Getting Started

This project is built using

  • Scala
  • FS2
  • Flink
  • HTTP4S
  • Kafka
  • Postgres

It contains a couple of microservices

  • Scraper service that scrapes disruptions from the NS API and dumps in a Kafka topic
  • Decoder service that decodes this data and dumps successfully decoded data into Kafka
  • DeDuplicator service that filters out duplicate entries and store single entries in a kafka topic
  • DatabaseSink

Running the project

Docker Compose

To run the project, a docker-compose file is provided.

From the base directory, you can run

sbt docker:publishLocal && docker-compose -f docker/docker-compose.yml up

Helm

Assuming you already have a Kubernetes cluster setup, you can start one locally with minikube. You can run the project on it.

You can start with exporting your NS API Keys

export SCRAPER_AUTH_KEY=

Run the helm installation script for the provided chart

Running the tests

sbt test 

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages