A Spring Boot backend for managing blog posts with support for image uploads, likes, and user-friendly APIs. Built with Kotlin, PostgreSQL, and follows modern best practices for scalable backend development. Link to the frontend repository
- User authentication and authorization (Session, roles)
- Blog post CRUD operations
- Commenting system
- Like functionality
- Image upload and management
- Contact Us form with status tracking
- Swagger API documentation
- Exception handling
- Database migrations with Flyway
- Java 17 + Spring Boot
- PostgreSQL
- Maven
- Flyway
- Spring Security
- Elastic Beanstalk
- Multipart File Upload Support
- Clone the repository
- Configure the database in
application-<your profile>.yml
- Run migrations (Flyway auto-runs on startup)
- Start the application
- Access Swagger UI at
/swagger-ui.html
- Java 17
- Maven
- PostgreSQL (Ensure it's running locally on port
5432
) - IntelliJ IDEA (Recommended)
git clone https://github.com/Kotik112/blog-backend.git
cd blog-backend