/railway-reservation-rs

Railway reservation system, written in Rust with actix-web, diesel, yarte, rustls & MariaDB

Primary LanguageRustGNU Affero General Public License v3.0AGPL-3.0

railway-reservation-rs

AGPLv3 logo: free software, free as in freedom

Railway reservation system, written in Rust

Timetable from mobile

More screenshots

Database ER diagram

Database ER diagram

ER diagram in MySQL Workbench format (.mwb)

Usage

  1. Install mariadb & libmysqlclient using your distribution's package manager (e. g. pacman, apt).
  2. Start MariaDB server:
    • for runit: for the first time after install run sudo touch /etc/sv/mysqld/down && sudo ln -s /etc/sv/mysqld /var/service once, then sudo sv start mysqld to start MariaDB.
    • for systemd: sudo systemctl start mariadb
  3. mysql -u root -p, enter empty password
    • CREATE USER 'artur'@localhost IDENTIFIED BY 'pass';
    • CREATE DATABASE railway;
    • GRANT ALL PRIVILEGES ON railway.* TO 'artur'@localhost;
    • quit
  4. git clone https://github.com/Logarithmus/railway-reservation-rs && cd railway-reservation-rs
  5. cargo run
  6. Go to https://localhost:8443 in your browser.

Tech stack