Loading repository data…
Loading repository data…
Mohamed-Imran-12 / repository
AuthShield is a hobby and learning-based authentication project built with Spring Boot, React.js, and MySQL. It provides basic authentication features like signup/login, JWT, email verification, and password reset to help students focus on core application development.
AuthShield is a hobby and learning-oriented authentication project built using Spring Boot for the backend, React.js for the frontend, and MySQL as the database. It implements features such as signup/login, JWT authentication, email verification, and password reset. It can be useful for students and learners who want a basic authentication setup so they can focus on building core application features without spending too much time on security implementation.
static folder contains the React production build filestemplates folder inside static is used to store email templates
git clone https://github.com/Mohamed-Imran-12/AuthShield.git
Open the project in IntelliJ IDEA / Eclipse
Open pom.xml and allow Maven to download dependencies
application.properties)spring.datasource.url=your_DB_URL
spring.datasource.username=your_DB_USERNAME
spring.datasource.password=your_DB_PASSWORD
apiKey=your_BREVO_MAIL_API
Run AuthShieldApplication.java
http://localhost:8080/
Email functionality works only with Brevo API.
To use another mail provider, update mail-related code in mailServices.java.
The ADMIN role is manually assigned directly in the database.
This is intentional to maintain higher security and prevent unauthorized users from registering as admins.
Do not edit files inside the backend static folder directly.
cd "frontend src"
npm install
npm run dev
This starts the React development server for UI changes.
cd "frontend src"
npm run build
static/
├── assets/
│ ├── *.css
│ ├── *.js
├── index.html
Steps:
index.html and files inside assetsdiststatic directory