Blogify

module
v0.0.0-...-c362b27 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 27, 2024 License: MIT

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

  • 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:
    git clone https://github.com/yourusername/Blogify.git 
    cd Blogify
    
  2. Install dependencies:
    go mod download
    
  3. Run the application:
    go run main.go
    

API Documentation

For detailed API documentation and testing, please visit the Blogify Postman Workspace.

Contributing

Contributions are welcome! Please read the contributing guidelines to get started.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Directories

Path Synopsis
cmd
server command
internal
pkg

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL