01Blog is a fullstack social blogging platform designed for students to document and share their learning experiences, discoveries, and progress. The platform fosters a collaborative environment where users can interact with content, follow peers, and engage in meaningful educational discussions.
Built with modern technologies, 01Blog combines a robust Java Spring Boot backend with a dynamic Angular frontend to deliver a seamless user experience.
- Secure Authentication - User registration and login with JWT-based security
- Role-Based Access Control - Distinct permissions for Users and Administrators
- Rich Content Creation - Create and publish blog posts with formatting options
- Media Support - Upload and embed images and videos in posts
- Social Interactions - Like, comment, and share posts with the community
- User Profiles - Follow other users and build your network
- Admin Panel - Comprehensive content moderation and user management tools
- Responsive Design - Optimized experience across all devices
- Java Spring Boot - RESTful API development
- Spring Security - Authentication and authorization
- PostgreSQL - Relational database management
- Docker - Containerization and deployment
- Angular - Component-based UI framework
- Angular Material - Modern UI components
- SCSS - Enhanced styling capabilities
- TypeScript - Type-safe development
01Blog follows Clean Architecture principles, ensuring maintainability, testability, and scalability through clear separation of concerns.
- Entities - Core business logic, independent of external dependencies
- Use Cases - Application-specific business rules and workflows
- Interface Adapters - Data transformation layer between external sources and business logic
- Frameworks & Drivers - External integrations (database, web framework, UI)
This architectural approach provides:
- Independence from frameworks and external tools
- Highly testable business logic
- Flexibility to swap implementations
- Clear dependency flow (inward only)
Learn more about Clean Architecture →
View the complete database schema and relationships:
View Database Schema on dbdiagram.io →
Comprehensive backend setup, API endpoints, and implementation details:
Topics covered:
- Installation and setup
- API endpoints and usage
- Security configuration
- Database migrations
- Testing strategies
Frontend architecture, components, and development guide:
Topics covered:
- Installation and setup
- Project structure
- Component architecture
- State management
- Styling guidelines
- Java 17 or higher
- Node.js 18+ and npm
- PostgreSQL 14+
-
Clone the repository
git clone https://github.com/hmaach/01blog.git cd 01blogcd backend cp .env-example .envUpdate
.envwith your credentials: -
Backend Setup
cd backend ./mvnw spring-boot:run -
Frontend Setup
cd frontend npm install ng serve
Visit http://localhost:4200 to access the application.
Made with ❤️ by Talent of ZoneO1 Oujda

