Skip to content

Queue optimisation tool for Jungraubahnen Switzerland

License

Notifications You must be signed in to change notification settings

nicololuescher/flypast

Repository files navigation

FlyPast

A
Web Application
where the Jungfraubahnen are managing their adventure queueing.

Build License GitHub go.mod Go version (subdirectory of monorepo)

Github Workflows

GitHub Workflow Status (branch) GitHub Workflow Status (branch) GitHub Workflow Status (branch)

This project was created at the BernHackt Hackathon in 2022.

Check out the project team university behind FlyPast – BFH

 

Everything you would expect

It's a simple web app

At the Jungfraubahnen there are many different adventures.
People are waiting for their turn to go on an adventure currently.
Each day the people are waiting very long for their turn to go on an adventure.
Sometimes they are waiting for hours.
With FlyPast, people can easily reserve their ride online or in person.
So they don't have to wait anymore in the line.

It's free

Everything is free to use and distribute.

Open Source

Trust me, I'm open source.
You can find the source code on Github.
The frontend is written in Next.js and the backend in GoLang.
License: MIT

 

Setup

You can deploy FlyPast with Docker-Compose.
Some test data will get seeded automatically.

docker-compose up -d

User View

On the user view you can enter your ticket number and select a slot for any given adventure.
Visit http://localhost:8080

Admin View

On the admin view, you can login as an admin and manage the adventures.
Visit http://localhost:8080/admin

Dashboard

On the dashboard you can see the current status of the adventures.
Visit http://localhost:8080/dashboard

Environment Variables

Frontend

none

Backend

  • CORS (optional): Set CORS headers for the API.
    Default: *
  • JWT_SECRET_KEY (optional): Set the JWT secret key.
  • ADMIN_PASSWORD (optional): Set the admin password.
    Default: admin
  • DB_USERNAME (optional): Set the database username.
    Default: postgres
  • DB_PASSWORD (optional): Set the database password.
    Default: postgres
  • DB_HOST (optional): Set the database host.
    Default: localhost
  • DB_PORT (optional): Set the database port.
    Default: 5432
  • DB_NAME (optional): Set the database name.
    Default: postgres