https://github.com/sadiksunbul/blogify
Blogify is a platform where users can create, edit and delete blog posts. Users can also like and comment on their posts. The project will be designed in accordance with Onion Architecture principles.
https://github.com/sadiksunbul/blogify
blog-project clean-architecture clean-code go go-api go-blog go-onion-architecture go-project go-rest-api golang postgresql postgresql-database
Last synced: 11 months ago
JSON representation
Blogify is a platform where users can create, edit and delete blog posts. Users can also like and comment on their posts. The project will be designed in accordance with Onion Architecture principles.
- Host: GitHub
- URL: https://github.com/sadiksunbul/blogify
- Owner: SadikSunbul
- License: mit
- Created: 2024-06-26T12:31:33.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-06-27T06:34:29.000Z (almost 2 years ago)
- Last Synced: 2025-04-02T21:06:06.449Z (about 1 year ago)
- Topics: blog-project, clean-architecture, clean-code, go, go-api, go-blog, go-onion-architecture, go-project, go-rest-api, golang, postgresql, postgresql-database
- Language: Go
- Homepage:
- Size: 35.2 KB
- Stars: 2
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
README
# Blogify
Blogify is a comprehensive platform designed for users to create, edit, and delete blog posts. It also allows users to engage with posts through likes and comments. The project is structured following the principles of Onion Architecture, ensuring a clean and maintainable codebase.
## Table of Contents
- [Features](#features)
- [Architecture](#architecture)
- [Technologies Used](#technologies-used)
- [Setup and Installation](#setup-and-installation)
- [API Documentation](#api-documentation)
- [Contributing](#contributing)
- [License](#license)
## Features
- **User Authentication**: Secure sign-up and login functionality.
- **Blog Management**: Create, edit, and delete blog posts.
- **Engagement Tools**: Like and comment on posts.
- **Onion Architecture**: Structured for maintainability and scalability.
## Architecture
Blogify follows the Onion Architecture, which emphasizes the separation of concerns and dependency inversion. The architecture is divided into several layers:
- **Domain Layer**: Contains the core business logic and entities.
- **Application Layer**: Manages use cases and orchestrates the application logic.
- **Infrastructure Layer**: Handles external interactions such as databases and APIs.
- **Presentation Layer**: Manages user interface and API endpoints.
## Technologies Used
- **Backend**: Go (Golang) with Gin framework
- **Database**: PostgreSQL
- **Authentication**: JWT (JSON Web Tokens)
- **API Documentation**: Postman
## Setup and Installation
1. **Clone the repository:**
```bash
git clone https://github.com/yourusername/Blogify.git
cd Blogify
2. **Install dependencies:**
```bash
go mod download
3. **Run the application:**
```bash
go run main.go
## API Documentation
For detailed API documentation and testing, please visit the [Blogify Postman Workspace](https://documenter.getpostman.com/view/27431083/2sA3dsmDY2).
## Contributing
Contributions are welcome! Please read the [contributing guidelines](CONTRIBUTING.md) to get started.
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.