Giter Club home page Giter Club logo

tutoring-platform's Introduction

tutoring-platform

Contributors Forks Stargazers Issues MIT License

Table of contents

About The Project

Platform for teachers & students, to offer or search for tutoring.

  • User registration with mail confirmation.
  • Authorization and authentication.

Technologies

  • Java
  • SpringBoot
  • Maven
  • Postgres
  • Docker
  • Lombok
  • Swagger
  • Log4j 2
  • Git

How to build

To setup and run this project:

git clone https://github.com/Simple-as-Coding/tutoring-platform
cd tutoring-platform

1. Install PostgreSQL Database

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.

1.1. Windows:

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

1.2. Linux:

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

Launching The Project

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/...

2.1. Building an Application

mvn clean install

2.2. Running application

mvn spring-boot:run

After launching the project, the database should be supplemented with tables by Hibernate.

3. Launch MailServer

You need to run docker before running the script.

3.1 Windows

Run with root rights

.\scripts\mailserver-launch-starter\mailserver-launch-starter.ps1

3.2 Linux

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

Roadmap

  • Implement core functionalities
  • Expand database model
  • Create documentation

Contributing

For any information about contributions check here.

License

Distributed under the GPL-3.0 License. Check here for more information.

tutoring-platform's People

Contributors

dawciobiel avatar eukon05 avatar mateuszciapala avatar mateuszbednarczyk avatar mcblankenburg avatar dawidstuzynski avatar wh15tl3r avatar grzegorzholui avatar matsior avatar a-dubaj avatar saqie avatar xan2301 avatar wiktorekx avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.