Skip to content

n4wf3l/Interschool-VA

Repository files navigation

EhB Interschool Voetbal App

Introduction

Since the Erasmushogeschool campuses in Brussels lack sports activities and a change of scenery, we have decided to design a responsive platform allowing students to register on the Interschool Voetbal App. This involves automating a football competition among students from multiple campuses. Students can register by choosing from ten teams, either joining their friends, meeting new students from other campuses, or both. They can play as a regular player, captain, or reserve player (each team consists of 7 players, including 2 reserves and 1 captain).

The captain has a personalized page to modify the team name and enter the final score of each match. After each match, both captains must enter the final result by selecting the goal-scorers. In the case of a tie, the championship ranking is automatically updated, along with the top scorers' ranking. If the two captains do not agree on the score, the administrator receives a notification to address the issue.

The administrator is the one who initiates the championship by pressing the button to generate the schedule. At the end of each season, the administrator can reset the database for a fresh start to a new championship season.

In the future, the student services STUVO and Enigma (student association of Campus Kaai in Anderlecht) are open to collaboration if this project is to be organized.

Project Setup

Follow these steps to set up and run the project locally:

  • Open your terminal

  • Use these commands :

    • composer install
    • cp .env.example .env
    • php artisan key:generate
    • php artisan migrate:fresh --seed (Wait for Seeding database)
    • php artisan serve

    Open a new terminal and use these commands:

    • npm install
    • npm run dev

Now open your browser on [http://127.0.0.1:8000] and enjoy our website!

Configurations and Structure

  • Go to the .env file and copy this code from line 31 to 38: MAIL_MAILER=smtp MAIL_HOST=smtp.googlemail.com MAIL_PORT=465 MAIL_USERNAME=info.va.ehb@gmail.com MAIL_PASSWORD=zxsajznwtlugkvrr MAIL_ENCRYPTION=ssl MAIL_FROM_ADDRESS=info.va.ehb@gmail.com MAIL_FROM_NAME="Interschool Voetbal App"

The XAMPP software is essential to activate the Apache and MySQL modules. By clicking the 'Admin' button next to start for MySQL, you will have access to the database with PhpMyAdmin.

About Laravel

Laravel is a web application framework with expressive, elegant syntax. We believe development must be an enjoyable and creative experience to be truly fulfilling. Laravel takes the pain out of development by easing common tasks used in many web projects, such as:

Laravel is accessible, powerful, and provides tools required for large, robust applications.

Learning Laravel

Laravel has the most extensive and thorough documentation and video tutorial library of all modern web application frameworks, making it a breeze to get started with the framework.

You may also try the Laravel Bootcamp, where you will be guided through building a modern Laravel application from scratch.

If you don't feel like reading, Laracasts can help. Laracasts contains over 2000 video tutorials on a range of topics including Laravel, modern PHP, unit testing, and JavaScript. Boost your skills by digging into our comprehensive video library.

Programming languages, technologies and frameworks

The programming language used in this project is PHP. A portion of the project has been generated using Laravel 10 framework. For the frontend, we utilized Tailwind to simplify the design of our views. We also use CSS and JS, which are consolidated in the "public" folder under the names "js blades" and "css blades."

  • Programming languages : PHP
  • Database management system : PhpMyAdmin (via XAMPP)
  • Laravel 10
  • Styling : HTML, CSS and JS
  • Styling frameworks : Tailwind and Bootstrap

Sources/References

Here are some sources consulted during the development of this project:

https://laravel.com/docs/10.x/readme

https://www.php.net/docs.php

https://stackoverflow.com/

https://medium.com/

https://laracasts.com/

https://www.javatpoint.com/

https://www.webdew.com/

Contributions

Instructions for those who wish to contribute to the project. This may include information on pull requests, coding conventions, etc. If you're interested in contributing to our project, follow these guidelines:

  • Fork the Repository: Start by forking our project repository to your own GitHub account.
  • Clone the Repository: Clone the forked repository to your local machine.
  • Create a New Branch: Create a new branch for your contribution.
  • Make Changes: Make your desired changes or additions to the code.
  • Commit Changes: Commit your changes with a descriptive commit message.
  • Push Changes: Push your changes to your forked repository.
  • Submit a Pull Request (PR): Open a pull request from your branch to the main project repository. Provide a clear description of your changes.
  • Code Review: Your contribution will undergo a code review. Make any necessary changes as requested.
  • Merge: Once approved, your changes will be merged into the main branch.

Thank you for contributing to our project!

License

This project is distributed under the MIT License. See the LICENSE file for details.

License Terms

Key Terms:

  • Modification: You are free to modify and adapt the code.
  • Redistribution: You may redistribute the code in both source and binary forms.
  • Commercial Use: The code can be used for commercial purposes without restrictions.
  • Attribution: Attribution to the original author(s) must be included in copies or substantial portions of the code.
  • Derivative Works: You can create derivative works based on the code.
  • Warranty: The code is provided "as is," without any warranty or guarantee.
  • State Changes: Changes made to the code must be clearly stated.

For the full text of the MIT License, please see the LICENSE file included in the project.

We encourage contributions to this project. Check out the CONTRIBUTING.md for more information on how to get involved.

Note: While this project was created in an academic context, adding a license aims to clearly define usage terms and protect the rights of contributors.

Image Credits

In the project's public directory, you will find a file called "img blades" containing a variety of images used to illustrate the platform's pages.

This project uses images from various sources, and we would like to express our gratitude to the talented photographers who created these works. Below is a list of the images used, along with the appropriate credits:

Background Image

  1. !backgroundimage.png (Link) Photo Credit: Martin Piechotta (Link to Profile)
  2. !composition.jpg (Link) Photo Credit: Elena Kopusova (Link to Profile)
  3. !coveradmin.jpg (Link) Photo Credit: Jan du Bois (Link to Profile)
  4. !fustal.jpg (Link) Photo Credit: Songphol Thesakit (Link to Profile)
  5. !headadminpage.jpg (Link) Photo Credit: Wangwukong (Link to Profile)
  6. !fustalcovermyprofile.jpg(Link) Photo Credit: Elena Popova (Link to Profile)

Other Images

  1. !backgroundfoto.jpg (Link) Photo Credit: Cherry Chapstick (Link to Profile)
  2. !erasmusgebouw.png (Link) Photo Credit: Timmermans Frères

Icons

  1. !topscorericon.png (Link) Logo Credit: The Noun Project (Link to Website)

  2. !positionicon.png (Link) Icon Credit: Flaticon (Link to Website)

  3. !iconyoutube.png (Link) Icon Credit: Alexis Doreau (Link to Profile)

  4. !iconsettings.png (Link) Icon Credit: Pavel Kozlov (Link to Profile)

  5. !iconfacebook.png (Link) Icon Credit: Kryston Schwarze (Link to Profile)

  6. !iconlinkedin.png (Link) Icon Credit: Dave Gandy (Link to Profile)

  7. !messagelogo.png (Link) Icon Credit: HevnGrafix (Link to Profile)

  8. !positionicon.png(Link) Icon Credit: Esfir Dzhyshkariani (Link to Profile)

  9. !icontel.png(Link) Icon Credit: IconDuck (Link to Website)

We are thankful to these artists for their outstanding visual contributions to our project.

Contributors

Thanks

First and foremost, we would like to express our gratitude to the entire team of developers who participated in this project with fascinating motivation. The professionalism exhibited by each member of the team is noteworthy, enabling us to conduct a project overview and analysis under optimal conditions, brimming with ideas, inspirations, and, most importantly, resolutions to potential challenges.

On the technical front, special thanks to Kristian Vasiaj, who fully dedicated himself to the backend, ensuring the realization of all the logical components. I would also like to extend my appreciation to Jack Thyssens for his work on building the database, while also being fully engaged in the backend development. Ismael Bouzrouti was also highly involved in this project: few commits, significant results, that's how his work ethic can be described—implementation of a Maps API, resolution of numerous bugs, and additional assistance in the backend trio. Soufian Jaâtar also played a key role in the frontend, providing valuable support on important details. Nawfel Ajari (product owner) was key for the frontend and overall UX/UI. Without his creativity, skills, passion and overall contagious motivation we would have never had a project like this. All of this was developed in record time, within two weeks, divided into two sprints with one to two on-campus sessions.

A special thanks goes to our project supervisors, Professors Robin Bervoets, Tom Aertssens and Ruben Dejonckheere, for their valuable feedback. Their guidance has strengthened our commitment to delivering high-quality work, not only on the technical front but also in the imaginative design of the project, foresight into potential future issues, thorough analysis, and adherence to the disciplines of web development sprints. We appreciate the support of our academic mentors. Additionally, we extend our gratitude to Johan Peeters for his insightful guidance throughout the project. While our project did not explicitly focus on security aspects, we thank Johan for his valuable expertise and contributions to our overall understanding of web development.

Project Status

The project is currently under development and will continue until Sunday, December 24, 2023 (deadline). It will be assessed in January 2024 by the mentioned professors.

Contact

You can always contact one of our developers or report issues via our LinkedIn social media. Here they are below:

Examples / Screenshots

![Admin Page](Image URL)

![MyTeam Page](Image URL)

![Dashboard](Image URL)

![Ranking](Image URL)

![Calendar](Image URL)

![Contact Page](Image URL)

![Register Teams](Image URL)

See Github Repository

About

🚀 Interschool Voetbal App - Student registration and participation in a responsive platform with an administrator who generates the competition when the teams are complete. Features include team captain management, top scorers table, calendar, previous seasons and much more. ⚽️🏆

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors