chat-messaging-app

module
v0.0.0-...-e93f347 Latest Latest
Warning

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

Go to latest
Published: Oct 28, 2024 License: MIT

README

Chat Messaging App

A clean and scalable chat messaging app built with Golang, designed to maintain modularity, testability, and independence in business logic. This project leverages PostgreSQL and the Gin framework to create a lightweight and efficient backend solution.

Features

  • Modular architecture: Clear separation of business logic and infrastructure.
  • RESTful APIs: Powered by the Gin framework.
  • PostgreSQL integration: Ensures reliable data storage.
  • Dependency injection: Promotes flexibility and scalability.
  • Swagger documentation: Simplifies API exploration.
  • Testing support: Unit and integration tests included.

Installation

  1. Clone the repository:
    git clone https://github.com/maxyong7/chat-messaging-app.git
    cd chat-messaging-app
    
  2. Set up PostgreSQL and configure the .env file with database credentials.
  3. Install project dependencies:
    go mod download
    
  4. Run the application:
    go run main.go
    

Folder Structure

  • /api: API endpoints and routing.
  • /models: Database models.
  • /services: Core business logic.
  • /config: Application configurations.

Directories

Path Synopsis
cmd
app command
Package docs GENERATED BY THE COMMAND ABOVE; DO NOT EDIT This file was generated by swaggo/swag
Package docs GENERATED BY THE COMMAND ABOVE; DO NOT EDIT This file was generated by swaggo/swag
internal
app
Package app configures and runs application.
Package app configures and runs application.
controller/http/v1
Package v1 implements routing paths.
Package v1 implements routing paths.
usecase
Package usecase implements application business logic.
Package usecase implements application business logic.
usecase/mocks
Package mock_usecase is a generated GoMock package.
Package mock_usecase is a generated GoMock package.
pkg
httpserver
Package httpserver implements HTTP server.
Package httpserver implements HTTP server.
postgres
Package postgres implements postgres connection.
Package postgres implements postgres connection.

Jump to

Keyboard shortcuts

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