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.
- 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
- 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.
- 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 runningvagrant up
.
- Install node packages (in host machine)
npm install
- Build assets (in your host machine)
npm run dev
- SSH into the VM
vagrant ssh
- Start the server and visit http://localhost:8000.
cd /vagrant
php artisan serve --host=0.0.0.0 # We specifiy the host IP to be able to access server outside VM
The Swap project is open-sourced software licensed under the MIT license.