efectn / fiber-boilerplate

Simple and scalable boilerplate to build powerful and organized REST projects with Fiber.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Fiber Boilerplate

Go Reference

Simple and scalable boilerplate to build powerful and organized REST projects with Fiber.

Directory Structure

├── app
│   ├── database
│   │   ├── schema
│   │   │   └── article.go
│   │   └── seeder
│   │       └── article_seeder.go
│   ├── middleware
│   │   ├── register.go
│   │   └── token
│   │       └── token.go
│   ├── module
│   │   └── article
│   │       ├── article_module.go
│   │       ├── controller
│   │       │   ├── article_controller.go
│   │       │   ├── article_controller_mock.go
│   │       │   └── controller.go
│   │       ├── repository
│   │       │   ├── article_repository.go
│   │       │   └── article_repository_mock.go
│   │       ├── request
│   │       │   └── article_request.go
│   │       └── service
│   │           ├── article_service.go
│   │           └── article_service_mock.go
│   └── router
│       └── api.go
├── build
│   ├── Dockerfile
│   └── DockerfileAir
├── cmd
│   └── example
│       ├── generate.go
│       └── main.go
├── config
│   └── example.toml
├── docker-compose.yaml
├── go.mod
├── go.sum
├── internal
│   └── bootstrap
│       ├── database
│       │   └── database.go
│       ├── logger.go
│       └── webserver.go
├── LICENSE
├── Makefile
├── README.md
├── storage
│   ├── ascii_art.txt
│   ├── private
│   │   └── example.html
│   ├── private.go
│   └── public
│       └── example.txt
└── utils
    ├── config
    │   └── config.go
    ├── response
    │   ├── response.go
    │   └── validator.go
    └── utils.go

Usage

You can run that commands to run project:

go mod download

go run cmd/example/main.go or air -c .air.toml if you want to use air

Docker

docker-compose build
docker-compose up

CUSTOM="Air" docker-compose up # Use with Air

Tech Stack

To-Do List

  • More error-free logging.
  • Add makefile to make something shorter.
  • Introduce repository pattern.
  • Add unit tests.
  • Add mocking with GoMock.

License

fiber-boilerplate is licensed under the terms of the MIT License (see LICENSE).

About

Simple and scalable boilerplate to build powerful and organized REST projects with Fiber.

License:MIT License


Languages

Language:Go 96.5%Language:Dockerfile 1.9%Language:Makefile 1.5%Language:HTML 0.2%