Pablo Carvalho Projects

Project 1 — Full Stack

RailDelayTracker

Real-time DART delay monitoring dashboard for Dublin's commuter rail network, powered by the Irish Rail public API.

Java Spring Boot PostgreSQL Real-time

About the Project

RailDelayTracker is a web dashboard for monitoring delays on the DART network (Dublin Area Rapid Transit), the commuter rail line connecting the north and south coast of Dublin, Ireland. The application collects real-time data from the Irish Rail public API, stores a history of snapshots in PostgreSQL, and provides two main views: a live departure board per station and an analytics dashboard with accumulated delay statistics.


Data is collected automatically every 30 seconds during DART operating hours (06:00–00:30) using Spring's @Scheduled. Each snapshot of a train at a station is persisted to the database to build the analytics history. Filters discard bus services and intercity routes, keeping only genuine DART trains in the dataset. Live updates are streamed to the browser via SSE (Server-Sent Events) without any page reload.

Tech Stack

Backend

Java 21
Spring Boot 3.2
Spring Web
Spring Data JPA
Jackson XML

Database & Infrastructure

PostgreSQL
Maven
SSE
REST API

Frontend

Thymeleaf
Bootstrap 5
Chart.js 4
JavaScript

Featured Technologies

🚆

Irish Rail API

XML responses parsed with Jackson XML, pulling live departure data for all DART stations every 30 seconds.

SSE Live Updates

Server-Sent Events push real-time train updates to the browser without polling or page refreshes.

🗄️

PostgreSQL

Trip snapshots and delay records persisted with a 90-day retention policy, powering the analytics dashboard.

📊

Chart.js

Interactive delay analytics charts — network-wide or filtered by station — rendered from Spring REST endpoints.

← Back to Projects