Welcome to the Spring Boot & Angular Starter Kit! This repository provides a full-stack template for building modern web applications using Spring Boot (backend) and Angular (frontend). It’s designed to help developers quickly set up a robust, scalable, and production-ready project with minimal configuration.
Whether you're a beginner learning full-stack development or an experienced developer starting a new project, this starter kit has you covered.
-
RESTful APIs with Spring Boot.
-
JWT-based authentication with Spring Security.
-
Database integration using Spring Data JPA (supports MySQL).
-
Exception handling and validation.
-
Modular Angular application with a clean structure.
-
Responsive UI components.
-
Authentication and role-based access control.
-
Ready-to-use project structure.
-
Sample code for CRUD operations.
-
Step-by-step setup guide.
-
Backend: Spring Boot, Spring Security, JWT, Spring Data JPA, MySQL.
-
Frontend: Angular, TypeScript, Angular Material.
-
Tools: Maven, npm, Docker (optional).
-
Java 21
-
Node.js (v22.12.0 or higher)
-
npm (10.9.0 or higher)
-
Angular CLI (19.0.3 or higher)
-
MySQL
-
Apache Tomcat (for production deployment)
- Clone the repository:
git clone https://github.com/your-username/spring-boot-angular-starter-kit.git
cd spring-boot-angular-starter-kit- Set up the database:
-
Create a new database (e.g.,
starter_db) in MySQL. -
Update the
application-<dev|prod>.propertiesfile with your database credentials.
- Build and run the backend:
./mvnw spring-boot:runThe backend will be accessible at http://localhost:8085.
- Navigate to the frontend folder:
cd src/main/webapp- Install dependencies:
npm install- Run the Angular app:
ng serveThe frontend will be accessible at http://localhost:4200.
-
Run the backend and frontend separately using the commands above.
-
The backend serves REST APIs, while the frontend connects to them.
-
Backend:Build a WAR file usingmvn clean installand deploy it to a server like Tomcat. -
Frontend:Generate a production build usingnpm run buildand deploy the static files to a web server or use the backend as a reverse proxy.
The backend API is documented using Swagger. Access the OpenAPI specification at:
- Development:
http://localhost:8085/swagger-ui/index.html
Contributions are welcome! Here’s how you can help:
-
Fork the repository.
-
Create a new branch (
git checkout -b feature/YourFeature). -
Make your changes.
-
Commit your changes (
git commit -am 'Add some feature'). -
Push to the branch (
git push origin feature/YourFeature). -
Create a new Pull Request.
This project is open source and available under the MIT License. See the LICENSE file for details.