cd /news/ai-tools/railbreaker-a-local-open-source-ai-p… · home › topics › ai-tools › article
[ARTICLE · art-152432] src=dev.to ↗ pub= topic=ai-tools verified=true sentiment=↑ positive

RailBreaker: a local, open-source AI planner for breaking a long Indian train journey into confirmed-seat hops

A Mumbai-based developer built RailBreaker, an open-source tool that plans long Indian train journeys as one to three confirmed-seat hops instead of a single direct booking. The tool runs a deterministic pruned search over the open DataMeet timetable dataset in Python and Streamlit, using a locally hosted Gemma 3 model via Ollama only for parsing English, Hindi and Hinglish trip requests and reading availability screenshots, so routing and arithmetic stay in code. It does not check live IRCTC availability, and its timetable data is an old snapshot with fares estimated.

by read3 min views2 publishedOct 18, 2026

#

What I built

I live in Mumbai. Home is Lucknow, about 24 hours away by train. A flight is out of budget and the direct train is almost always waitlisted. So I end up trying combinations by hand: "Mumbai → Bhopal tonight, then Bhopal → Lucknow tomorrow?" IRCTC only searches direct trains, and nothing lists the break-journey options for you.

RailBreaker lists every schedule-feasible way to make the trip in 1 to 3 separate sittings. It ranks them by extra time over the fastest direct train, estimated fare, class and layover risk. Each plan ends in a copy-paste IRCTC checklist, so I only check seats on a short list instead of guessing.

It covers combinations I could never enumerate by hand:

  • different break stations (Nagpur, Bhopal, Itarsi, Jhansi, Kanpur...)
  • the same train booked as two tickets , which adds zero extra time and often fixes a waitlisted full journey
  • switching between stations of one city (Dadar ↔ LTT) and nearby destinations with a road leg

#

Demo

Code: https://github.com/heyujjwal/p5y-pathify

#

The open-source stack

| Piece | What it does | | Gemma 3 via Ollama (open weights, runs on my laptop) | understands trips typed in English, Hindi or Hinglish, turns "via MP, no night layovers, 3AC or better" into filters, explains trade-offs, and reads availability screenshots | | DataMeet railways dataset (open data) | stations, trains and schedules | | Python + Streamlit | the engine and the UI |

The routing is deterministic Python (a pruned search over a timetable graph). The model only handles language and reading. It never does the routing or the arithmetic, so it can't invent a train.

#

Why open innovation mattered here

Private and offline. My trips and my IRCTC screenshots never leave my laptop. Gemma runs locally through Ollama. #

Free to run. There is no per-query API bill, so the tool can stay free for students and people on a tight budget. A closed API would charge per request, which breaks the business for exactly the people who need this. #

Swappable and tunable. I can change the model (Gemma, Qwen, Llama) with one environment variable. I can also fine-tune a small model on Hinglish travel phrasing, which a general API handles poorly. #

No lock-in on data. Open timetable data means I can fix a wrong train or add days-of-run myself, instead of waiting for a vendor. #

Honest split of work. Using a small local model only where language is involved kept it fast on a laptop and kept the numbers trustworthy.

#

Would anyone pay for this?

Possible ways to charge (these are ideas I haven't tested with customers):

  • a small yearly pass for students and migrants who travel home during festival season
  • a version for relocation companies and PG operators to give newcomers
  • a "waitlist predictor" add-on trained on user-reported outcomes

#

What it does not do (read this)

  • It plans possible journeys. It doesnot know live seat availability and never touches IRCTC. You check the listed legs yourself, or paste the screenshot back so the local model marks plans Verified or Blocked.
  • The free dataset is an old snapshot (around 2016) with no days-of-run, so trains default to daily. I added a days-file override and a validator that prints direct trains to compare with IRCTC.
  • Fares are estimates.
  • Separate tickets are not protected if the first train runs late.

#

  Try it

The README has a step-by-step build guide and a one-page use-case doc.
── more in #ai-tools 4 stories · sorted by recency
── more on @railbreaker 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
→ Live at https://your-agent.zahid.host ✓
Get free account → Pricing
from €0/mo · no card required
LIVE [news/railbreaker-a-local-…] indexed:0 read:3min 2026-10-18 · —