Skip to content

School project for the third semester of the french Computer Science Bachelor

License

Notifications You must be signed in to change notification settings

LukaMrt/Parraindex

Repository files navigation

Parraindex

Version Lines of Code Coverage Quality Gate Status GitHub language count GitHub

All Contributors

About the project

This project is a school project made for the third semester of the Bachelor's degree in Computer Science at the University of Lyon 1. The objective of this project is to create a web application with a visual interface and an administration interface used to manage the application.

We decided to create a website which presents the relationship existing between students of the Institute of Technology. There are many sponsor relationships between students, and we wanted to create a website that would allow students to see all the links between people. This website will also allow students to create their own profile and to add their own sponsor relationships (through a contact form because administrators need to validate those creations). Administrators are able to manage the website and the users (add, delete, modify, etc.) with an admin panel which is accessible only to them and gathers all the requests made by users with the contact form.

This project is kind of a social network. You can see the relationships between people and customize your profile. You can't post anything, you can't follow people, you can't chat with people, etc...

You can visit the final website at this address : https://parraindex.com You can also find the source code of the website at this address : https://github.com/LukaMrt/Parraindex

Built with

The school imposed to not use any framework, so we decided to use the following technologies to create the website:

  • Twig for the front-end
  • SCSS for styling
  • JavaScript for front-end interactions
  • PHP and some libraries for back-end with Composer to manage these dependencies
  • MariaDB for the database

Installation

Requirements

To launch the project, you need to have the following software installed on your computer (or on a server and reachable from your computer, for example the MariaDB database):

  • PHP
  • MariaDB
  • Composer
  • SCSS

You also need to have a working mail server to send emails.

Launching the project

To launch the project, you need to follow these steps:

  1. Clone the repository

  2. Install the dependencies with composer install

  3. Create a database and import the creation.sql file located in the database folder

  4. Create a .env file in the root folder of the project and fill it with the following information (follow the example of the .env.example file):

     # Environment
    DEBUG="false"               # Set to "true" to enable debug mode
    
    # Database
    DRIVER="mysql"              # Database driver (mysql, pgsql, sqlite, ...)
    HOST="host"                 # Host of the database (ip or domain name)
    PORT="3306"                 # Port of the database (default for mariadb: 3306)
    DATABASE="database"         # Name of the used database
    USERNAME="user"             # Username used to connect to the database
    PASSWORD="password"         # Password of the user used to connect to the database
    
    # Mail
    MAIL_HOST="host"            # Host of the mail server (ip or domain name)
    MAIL_PORT="587"             # Port of the mail server (default: 587)
    MAIL_USERNAME="username"    # Username used to connect to the mail server
    MAIL_PASSWORD="password"    # Password of the user used to connect to the mail server
  5. Build the CSS files with sass --update scss:public/css or composer sass if you want to watch the changes in the SCSS files and automatically rebuild the CSS files

  6. Launch the project with php -S localhost:8000 -t public or composer server

Contributing

Feel free to contribute to the project by creating a pull request or by opening an issue. If you want to contribute to the project, please read the CONTRIBUTING.md file.

Contributors

Thanks goes to these wonderful people (emoji key):

Luka Maret
Luka Maret

💻 🚇 📆 ⚠️ 📖
Lilian Baudry
Lilian Baudry

💻 👀 🤔 🎨
Melvyn Delpree
Melvyn Delpree

💻 🎨 📖
Vincent Chavot-Dambrun
Vincent Chavot-Dambrun

💻

This project follows the all-contributors specification. Contributions of any kind welcome!

License

The Parraindex is licensed under the MIT License.

About

School project for the third semester of the french Computer Science Bachelor

Resources

License

Stars

Watchers

Forks

Packages

No packages published