Platform for teachers & students, to offer or search for tutoring.
- User registration with mail confirmation.
- Authorization and authentication.
- Java
- SpringBoot
- Maven
- Postgres
- Docker
- Lombok
- Swagger
- Log4j 2
- Git
To setup and run this project:
git clone https://github.com/Simple-as-Coding/tutoring-platform
cd tutoring-platform
Choose the appropriate version of the script depending on the operating system to run database in a docker container. Data for database configuration in Docker are taken from the src/main/resources/application.properties file or install local PostgreSQL database (name your database "simpleascoding") for the app to detect it.
and fire up docker desktop via command or GUI
docker
Wait for docker daemon in docker desktop to start before running the script below in PowerShell
.\scripts\database-launch-starter\database-launch-starter.ps1
If you are getting an error related to the script execution policy, you can change it by running PowerShell as an administrator and typing: Set-ExecutionPolicy RemoteSigned
The following command is valid for these operating system versions:
- Ubuntu 15.04 and newer
- Fedora
- CentOS 7 and newer
- Debian 8 and newer
- Arch Linux
- openSUSE 42.2 and newer
- RHEL 7 and newer
- SLES 12 and newer
sudo systemctl start docker
The following command is valid for these operating system versions:
- Ubuntu prior to 15.04
- Debian prior to 8
- CentOS 6 and older
- RHEL 6 and older
- SLES 11 and older
sudo service docker start
The following commands are not version dependent sometimes you need to give execute permissions to the script
sudo chmod +x scripts/database-launch-starter/database-launch-starter.bash
Run with root rights
sudo ./scripts/database-launch-starter/database-launch-starter.bash
After creating the database we install the project from the tutorial-platform directory. Important! The project will not build without a database connection.
path: /tutoring-platform/...
mvn clean install
mvn spring-boot:run
After launching the project, the database should be supplemented with tables by Hibernate.
You need to run docker before running the script.
Run with root rights
.\scripts\mailserver-launch-starter\mailserver-launch-starter.ps1
sudo chmod +x scripts/mailserver-launch-starter/mailserver-launch-starter.bash
Run with root rights
sudo ./scripts/mailserver-launch-starter/mailserver-launch-starter.bash
Mailbox --> http://localhost:1080/ default credentials: hello, hello (if it doesn't work then check application.properties spring.mail.username, spring.mail.password)
Swagger Documentation --> http://localhost:8080/swagger-ui/index.html At the very end, we can enter the API documentation check by Swagger or a tool with tools like POSTMAN for testing REST API
- Implement core functionalities
- Expand database model
- Create documentation
For any information about contributions check here.
Distributed under the GPL-3.0 License. Check here for more information.