https://github.com/hmaach/01blog-archive
01Blog is a social blogging platform where students can share their learning experiences, discoveries, and progress. Built with Java Spring Boot (backend) and Angular (frontend)
https://github.com/hmaach/01blog-archive
01-edu angular java spring-boot zone01oujda
Last synced: 8 months ago
JSON representation
01Blog is a social blogging platform where students can share their learning experiences, discoveries, and progress. Built with Java Spring Boot (backend) and Angular (frontend)
- Host: GitHub
- URL: https://github.com/hmaach/01blog-archive
- Owner: hmaach
- Created: 2025-02-09T17:43:18.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-10-17T11:41:49.000Z (8 months ago)
- Last Synced: 2025-10-26T13:18:19.868Z (8 months ago)
- Topics: 01-edu, angular, java, spring-boot, zone01oujda
- Language: Java
- Homepage:
- Size: 2.55 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Roadmap: docs/roadmap.md
Awesome Lists containing this project
README
# 01Blog
## Overview
In this project, you will build a social blogging platform called **01Blog**, where students can share their learning experiences, discoveries, and progress throughout their journey. Users can interact with each other’s content, follow one another, and engage in meaningful discussions.
You will develop this platform as a fullstack application, using **Java Spring Boot** for the backend and **Angular** for the frontend. The project covers essential features such as REST API development, user authentication, media handling, and more.
### Key Features:
* User registration and secure login
* Role-based access control (User vs Admin)
* Media uploads (Images/Video)
* Real-time post interactions (Likes/Comments)
* Admin panel for content moderation
## Clean Architecture
**Clean Architecture** is a software design philosophy that emphasizes separation of concerns, testability, and scalability. It structures your application into layers, each with a specific responsibility, making it easier to maintain and extend.
* **Entities**: Core business logic, independent of any external dependencies.
* **Use Cases**: Application-specific business rules.
* **Interface Adapters**: Converts data from external sources into a format that can be understood by the use cases and entities.
* **Frameworks & Drivers**: External agents such as databases, web frameworks, or UI components.
[Read more about Clean Architecture](https://medium.com/@souzaluis/applying-clean-architecture-in-java-with-spring-boot-framework-part-iv-a3cb82d5421a)

---
## Backend Documentation
For more detailed backend implementation and setup instructions, please check the [Backend Documentation](./docs/README-backend.md).
---
## Database Schema
For more detailed, please check the [Database Schema](https://dbdiagram.io/d/01Blog-68c981561ff9c616bdf62bbc).
---
### Technologies Used:
* **Java**: Spring Boot, Spring Security
* **SQL**: PostgreSQL
* **Frontend**: Angular
* **Docker**