Skip to content

cesium/swap

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TravisCI Status Coverage Status ScrutinizerCI Status

About Swap

Swap simplifies the control of enrollments and shifts exchanges for both students and teachers. The project is developed considering the following features:

  • Students enroll in the available courses;
  • Shifts are assigned to enrollments by teachers;
  • Students propose and confirm shift exchanges among them.

This project was developed with the Board of Directors of the University of Minho Informatics Engineering Integrated Masters and counts on several Hackathonners who either concluded the aforementioned Masters or are in the process of doing so.

Requirements

  • PHP 7.4+
  • MySQL - Database Management System
  • Composer - Installs package dependencies
  • NodeJS - Provides NPM to install node packages
  • Vagrant - Provides a fast, reliable and secure node package manager.
  • VirtualBox - Virtual machine provider for Vagrant

Installation

  • Clone or download this repository.
  • Rename .env.example to .env and fill the options.
cp -n .env.example .env

Note: This project sends e-mails. Therefore, ensure that the e-mail driver is specified.

Setting up Vagrant

  • To configure the Vagrant VM run
vagrant up
vagrant ssh
  • In the VM run
cd /vagrant
bash bootstrap.sh

Note If the prespecified IP in Vagrantfile is already in use, you need to change it before running vagrant up.

  • Install node packages (in host machine)
npm install

Building and running

  • Build assets (in your host machine)
npm run dev
  • SSH into the VM
vagrant ssh
cd /vagrant
php artisan serve --host=0.0.0.0 # We specifiy the host IP to be able to access server outside VM

License

The Swap project is open-sourced software licensed under the MIT license.

Releases

No releases published

Languages

  • PHP 82.5%
  • Blade 13.2%
  • Vue 3.6%
  • Other 0.7%