An open API service indexing awesome lists of open source software.

https://github.com/walidbosso/springboot-angular-trainingcenter-management

🍃 🅰️ This project is a web application developed as an academic project. The goal is to create a system for efficiently managing a training center. The technologies used include Spring Boot for the backend, Angular for the frontend, and MySQL for database storage.
https://github.com/walidbosso/springboot-angular-trainingcenter-management

angular controller full-stack java lombok model mysql mysqldrivers phpmyadmin repositories services spring-boot spring-data-jpa springweb sts training-ce typescript webdevelopment

Last synced: 5 months ago
JSON representation

🍃 🅰️ This project is a web application developed as an academic project. The goal is to create a system for efficiently managing a training center. The technologies used include Spring Boot for the backend, Angular for the frontend, and MySQL for database storage.

Awesome Lists containing this project

README

        

![SpringBoot-Angular-TrainingCenter-Management](https://socialify.git.ci/walidbosso/SpringBoot-Angular-TrainingCenter-Management/image?description=1&font=Source%20Code%20Pro&forks=1&issues=1&language=1&name=1&pattern=Formal%20Invitation&pulls=1&stargazers=1&theme=Auto)







[![GitHub WidgetBox](https://github-widgetbox.vercel.app/api/profile?username=walidbosso&data=followers,repositories,stars,commits&theme=nautilus)](https://github.com/walidbosso/SpringBoot-Angular-TrainingCenter-Management)









# Training Center Management with Spring Boot, Angular, and MySQL

## Overview

This project is a web application developed as part of a module's final project, The goal is to create a system for efficiently managing a training center. The technologies used include Spring Boot for the backend, Angular for the frontend, and MySQL for database storage.

## Objectives

- **Store and manage training project documents efficiently:** Develop a system to effectively handle and organize documents related to training projects.

- **Plan training sessions and allocate trainers appropriately:** Create a scheduling mechanism for training sessions and ensure trainers are assigned based on their expertise and availability.

## Details

1. **Authentication Interface:**
- Create an authentication interface for the roles: admin, formateur, and assistant.

2. **Admin Adds Formation:**
- Allow the admin to add a new formation for the public, specifying details such as duration, cost, objectives, and a detailed program.

3. **Admin Adds Formateurs:**
- Enable the admin to add formateurs, specifying a set of keywords that characterize their skills. Also, include a remarks field.

4. **Admin/Assistant Adds Entreprises:**
- Allow the admin or assistant to add a list of entreprises, specifying name, address, phone, URL, and email.

5. **Admin/Assistant Plans Formation:**
- Enable the admin or assistant to plan a new formation by assigning a formateur and an entreprise to a set of dates.

6. **Individuals Registration for Formation:**
- If the formation is for individuals, allow them to register (providing name, surname, date of birth, city, email, and phone) via a dedicated form on the homepage. Admin or assistant then assigns the formateur to the group of individuals.

7. **Public Homepage:**
- The homepage is public and displays all formations added by the admin. Include simple filters for formation category, and date.

8. **Participant Evaluation:**
- Participants receive a link to an evaluation form where they rate the formateur on pedagogical quality, pace, course and practical work support, and subject mastery.

9. **External Formateur Interest:**
- Allow external formateurs to express interest in conducting a formation by registering on the platform and providing keywords reflecting their profile.

10. **Considerations:**
- Consider aspects such as ergonomics, graphic design, layered modeling and security.

## Technologies Used

- **Backend:** Spring Boot
- **Frontend:** Angular
- **Database:** MySQL

## Prerequisites

Before you begin, ensure you have the following installed:

- Java Development Kit (JDK)
- Node.js and npm
- Angular CLI
- MySQL Server
- Lombok: Java library to reduce boilerplate code, making development cleaner and more concise.
- Xampp

## Development Environment

- **Spring Tool Suite (STS):** An integrated development environment for building, testing, and deploying Spring applications.
- **PHPMyAdmin:** Web-based tool for managing MySQL databases.
- **Visual Studio Code**

## Getting Started

1. Fork then clone the repository

```bash
git clone https://github.com//SpringBoot-Angular-TrainingCenter-Management.git
```

2. Set up the backend: Just open the project on STS, It will automatically built and compile, if anything just then search for Maven Install and click it.

3. Set up the frontend

```bash
cd angular-frontend
npm install
```
> If it didn't work for some reason, download and unzip node_modules.rar in unzip it in angular -frontend, here's the [Link to download](https://drive.google.com/drive/folders/1T1bHVZHut04A0udNwZhJ1waRtQm76RiE)

4. Set up the database:

- Create a MySQL database, name it: `gestion_centre_formation` .

5. Run the application:

- Start the Spring Boot backend in STS.
- Start the Angular frontend `ng serve --open`.

## License

This project operates under the **MIT License**. Refer to the [LICENSE](LICENSE) file for detailed information.

## Feedback and Contributions

Your feedback and contributions are invaluable! Feel free to open issues, submit pull requests, or connect for discussions.

- Contact me in [LinkedIn](https://www.linkedin.com/in/walidbosso) for questions.




----------------------
> >  
© *Walid BOUSSOU, Mohamed Aymane ASSLADDAY, Soulaimane OULED TALEB*  🇲🇦 😄
 
----------------------

👏 Thanks for the support

## Stargazers

[![Stargazers repo roster for @walidbosso/SpringBoot-Angular-TrainingCenter-Management](http://reporoster.com/stars/dark/walidbosso/SpringBoot-Angular-TrainingCenter-Management)](https://github.com/walidbosso/SpringBoot-Angular-TrainingCenter-Management/stargazers)

## Forkers

[![Forkers repo roster for @walidbosso/SpringBoot-Angular-TrainingCenter-Management](http://reporoster.com/forks/dark/walidbosso/SpringBoot-Angular-TrainingCenter-Management)](https://github.com/walidbosso/SpringBoot-Angular-TrainingCenter-Management/network/members)

## Contributors





![GitHub last commit (by committer)](https://img.shields.io/github/last-commit/walidbosso/SpringBoot-Angular-TrainingCenter-Management?style=social)


![GitHub License](https://img.shields.io/github/license/walidbosso/SpringBoot-Angular-TrainingCenter-Management?style=social)

𝚂𝚑𝚘𝚠 𝚜𝚘𝚖𝚎 💙 𝚋𝚢 𝚜𝚝𝚊𝚛𝚛𝚒𝚗𝚐 ⭐ 𝚝𝚑𝚎 𝚛𝚎𝚙𝚘𝚜𝚒𝚝𝚘𝚛𝚢!








Back to top


Back to Top