coderqh

Haltora — Flutter Bus Ticket Booking App with Laravel Admin

Every stop on one line.

Haltora — Flutter Bus Ticket Booking App with Laravel Admin

The live preview on CodeCanyon is this app compiled for the web: the real build, not a video.

A complete Flutter app for one coach operator: pick where you board and where you get off on the route itself, read departures off a flip board that turns when a bay or a time changes, tell the app what kind of seat you like and watch the coach light up your window, and follow your bus stop by stop on the ticket. Sample data and photographs included, and a Laravel admin panel for the operator's own lines, stops, departures and tickets.

What it does well

from the app
Book on the route, not in a form — Haltora screen

Book on the route, not in a form

The line is drawn as one rail of stops. Tap where you board, tap where you get off, and the fare and travel time appear for exactly that stretch.

Departures that flip — Haltora screen

Departures that flip

Times, bays and seats left sit on split flap tiles. When a bay moves or a coach fills up, the tile turns over in front of you instead of quietly changing.

Say what seat you like — Haltora screen

Say what seat you like

Window, aisle, front, extra legroom, quiet. Choose what matters and the coach side view lights the window you got, with a next option one tap away.

What it looks like

10 images
Rail — Haltora
Rail
Board — Haltora
Board
Seat — Haltora
Seat
Ticket — Haltora
Ticket
Day one — Haltora
Day one
Network — Haltora
Network
More screens — Haltora
More screens
What you get — Haltora
What you get
Admin — Haltora
Admin
Landing — Haltora
Landing

In the box

from the shipped zip
  • Full Flutter source in haltora_ui_kit/, no obfuscation and no licence server
  • Offline HTML documentation: setup, re-theming, app name and bundle id, troubleshooting
  • The back end, with full source: Laravel admin and REST API
  • Back-end setup notes for Docker and for shared hosting
  • A one-page landing site for the app, ready to host
  • 15 Dart test files in the app

Run it after download

the app
# unzip the download, then
$ cd haltora_ui_kit
$ flutter pub get
$ flutter run

The app runs on its bundled demo data first. The back end has its own README for Docker and for shared hosting, and the app keeps working without it.

Spec

measured
Screen widgets23
Dart files84
Tests in the package15
Dart SDK^3.7.0
Back endLaravel admin and REST API
PlatformsiOS + Android, one codebase

Counted from haltora-v1.0.zip, the file uploaded to CodeCanyon. Screen widgets are the view, screen and page classes in the source, so the number can differ slightly from a count of routes.

Questions

Something else? Ask on the item's CodeCanyon page; the author answers there.

Does it need a server?

Only when you want live rows. The app ships with sample lines, stops and departures and every screen works without a network; point it at the included Laravel companion when you want real timetables and tickets with an admin panel behind them.

Is this for one operator or a marketplace?

One operator. Lines, stops, coaches, departures and fares all belong to a single company, which is what the admin panel manages and what makes the flip board and the stop by stop progress possible.

Can I change the colors, fonts and photos?

Yes. One color file and one text theme drive every screen, the fonts are bundled, and the photographs live in one assets folder with a licence file, so swapping in your own fleet and destinations is a file replace.

See Haltora on CodeCanyon →

Sold on Envato's CodeCanyon marketplace, which handles payment, VAT, invoices and the download.