Skip to main content

Module 16: E-Contact Backend Project - Complete Guide

Module Objectives​

This module guides you through the complete realization of the e-contact-backend project, a professional Spring Boot application with:

  • Complete REST API for contact form
  • JWT authentication and security
  • PostgreSQL database
  • Frontend integration
  • Deployment with GitHub Codespaces

📦 Main GitHub Repository​

Project Access

Repository: inskillflow-docs-formation-spring-boot-projet-e-contact-backend

This repository contains the complete source code, documentation, troubleshooting guides, and test frontend.


Module Plan​

Practical Chapters​

#ChapterDurationDescription
1Getting Started with Codespaces1hGitHub Codespaces environment setup
2Troubleshooting1h30Solving common issues
3Frontend Integration1hConnecting the frontend to the backend
4Supplementary Course3hModules 22-28 - In-depth study
5Advanced Security4hModules 11-18 - Step-by-step security

Estimated total duration: 10-12 hours


🔗 Project Resources​

Source Code and Documentation​

ResourceLinkDescription
Main RepositoryGitHubComplete project source code
TroubleshootingTroubleshooting folderProblem-solving guides
FrontendFrontend folderSimple frontend to test the API
Frontend GuideIntegration guideFrontend integration with Codespaces

Courses and Training​

ResourceLinkDescription
Supplementary CourseCourse folderComplete courses (especially modules 22-28)
Detailed SecuritySecurity AnnexesModules 11-18 on security

Project Architecture​

e-contact-backend/
├── 📁 src/main/java/
│ ├── 📁 config/ # Spring Security, CORS configuration
│ ├── 📁 controller/ # REST Controllers (Contact, Auth, Admin)
│ ├── 📁 dto/ # Data Transfer Objects
│ ├── 📁 model/ # JPA Entities (Lead, User)
│ ├── 📁 repository/ # Spring Data JPA Repositories
│ ├── 📁 security/ # JWT, Filters, Authentication
│ └── 📁 service/ # Business logic
├── 📁 src/main/resources/
│ └── application.yml # Configuration
├── 📁 frontend/ # HTML/JS test frontend
├── 📁 troubleshooting/ # Troubleshooting guides
└── 📁 cours/ # Documentation and courses
└── 📁 annexes-security-1/ # Detailed security course

Quick Start​

  1. Open the repository on GitHub
  2. Click on Code → Codespaces → Create codespace on main
  3. Wait for the environment to load (~2 min)
  4. Launch the application:
./mvnw spring-boot:run

Option 2: Locally​

# Clone the repository
git clone https://github.com/hrhouma1/inskillflow-docs-formation-spring-boot-projet-e-contact-backend.git

# Access the folder
cd inskillflow-docs-formation-spring-boot-projet-e-contact-backend

# Launch the application
./mvnw spring-boot:run

📋 Prerequisites​

Required Knowledge​

  • Modules 1-13 of this training
  • Basics of Spring Boot and Spring MVC
  • Understanding of Spring Data JPA
  • Familiarity with REST APIs

Necessary Tools​

ToolVersionUsage
GitHub Account-For Codespaces
Web BrowserRecentTo test the API and frontend
(Optional) Java17+If running locally
(Optional) Maven3.8+If running locally
(Optional) PostgreSQL14+If running locally

Suggested Order​

  1. Chapter 1 - Start by setting up your Codespaces environment
  2. Chapter 2 - Refer to troubleshooting if you encounter issues
  3. Chapter 3 - Connect the frontend to visualize the result
  4. Chapter 4 - Deepen your knowledge with supplementary courses
  5. Chapter 5 - Master Spring Security and JWT security

Developed Skills​

By the end of this module, you will be able to:

SkillLevel
Create a complete REST API⭐⭐⭐⭐⭐
Implement JWT Authentication⭐⭐⭐⭐⭐
Use GitHub Codespaces⭐⭐⭐⭐
Integrate a frontend⭐⭐⭐⭐
Debug a Spring application⭐⭐⭐⭐⭐
Configure Spring Security⭐⭐⭐⭐⭐

📞 Support​

If you encounter difficulties:

  1. First consult the troubleshooting guide
  2. Check the GitHub issues
  3. Contact your instructor

⏭️ Next Step​

Start with GitHub Codespaces →


Back to home