Skip to content

Manukumar7644/BlogHub-Blogging-Platform

Repository files navigation

🚀 BlogHub – Full Stack Blogging Platform

BlogHub is a full-stack blogging web application built using Java (JDK 21), Spring Boot, Spring Data JPA (Hibernate), MySQL, REST APIs, JSP, HTML, CSS, and JavaScript.

It provides a modern blogging platform where users can create, edit, manage, and explore blog posts with secure role-based access.

✨ Features

  • ✍️ Create, edit, and delete blog posts
  • 🗂️ Organize posts by categories
  • 🔐 Role-based authentication (Admin / User)
  • ⚡ REST APIs for efficient backend communication
  • 📄 Pagination and sorting for blog posts
  • ✅ DTO-based validation and structured API responses

🛠️ Tech Stack

🔹 Backend

  • Java (JDK 21)
  • Spring Boot
  • Spring Data JPA (Hibernate)
  • REST APIs
  • MySQL

🔹 Frontend

  • HTML5
  • CSS3
  • JavaScript
  • JSP

🔹 Tools & Utilities

  • Spring Tool Suite (STS)
  • Maven
  • Git & GitHub

👤 User Features

  • User Registration & Login
  • Session-based Authentication
  • Create Blog Posts
  • Edit Own Posts
  • Delete Own Posts
  • View Posts by Category
  • Pagination & Sorting

🛡️ Admin Features

  • Manage Users
  • Manage Categories
  • Delete Inappropriate Posts
  • Full Control Over Platform Content

📝 Blog Management

  • Create, Update & Delete Posts
  • Category-wise Blog Organization
  • Pagination & Sorting Support
  • DTO-based Validation
  • Clean and Structured Data Handling

⚙️ Backend Architecture

  • Layered Architecture (Controller → Service → Repository)
  • Spring Data JPA (Hibernate)
  • DTO Pattern
  • Global Exception Handling
  • Structured REST API Responses
  • MVC Design Pattern

📂 Project Modules

  • Authentication Module
  • User Management
  • Blog Management
  • Category Management
  • Admin Dashboard
  • REST API Layer

🗃️ Database Tables

  • users
  • posts
  • categories

🚀 How to Run the Project

1️⃣ Clone the Repository

git clone https://github.com/github.com/Manukumar7644/BlogHub-Blogging-Platform/BlogHub.git

2️⃣ Open the Project

Import the project into Spring Tool Suite (STS), IntelliJ IDEA, or Eclipse.

3️⃣ Configure MySQL

Update your application.properties file:

spring.datasource.url=jdbc:mysql://localhost:3306/bloghub
spring.datasource.username=root
spring.datasource.password=your_password

4️⃣ Run the Application

Run the Spring Boot application as a Java Application.

5️⃣ Open in Browser

http://localhost:8080/

📸 Project Screenshots

Add screenshots of your application here.

Example:

screenshots/
├── login.png
├── dashboard.png
├── create-post.png
├── category.png

👨‍💻 Developed By

Manu Kumar

B.Tech – Computer Science & Engineering

⭐ If you found this project useful, consider giving it a Star on GitHub!

About

"A blogging application is a platform where users can publish, update, delete, and read blogs online."

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages