Skip to content

Example real world backend API built with Golang + Fiber + Gorm + Swagger

License

Notifications You must be signed in to change notification settings

dw4n/template-golang-fiber

 
 

Repository files navigation

RealWorld Example App

Golang/Fiber codebase containing real world examples (CRUD, auth, advanced patterns, etc) that adheres to the RealWorld spec and API. Project based on RealWorld example for Golang/Echo

This codebase was created to demonstrate a fully fledged fullstack application built with Golang/Fiber including CRUD operations, authentication, routing, pagination, and more.

We've gone to great lengths to adhere to the Golang/Fiber community styleguides & best practices.

For more information on how to this works with other frontends/backends, head over to the RealWorld repo.

Quick start

Before quick start you must install docker, docker-compose and Git.

Starts ready docker container

mkdir database && chmod o+w ./database && docker run -d -p 8585:8585 -v $(pwd)/database:/myapp/database alpody/golang-fiber-real-world 

Builds and tests

git clone https://github.com/alpody/golang-fiber-realworld-example-app.git
cd golang-fiber-realworld-example-app 
chmod a+x start.sh
./start.sh

Press Ctrl + c for stop application.

See asciinema this process:

asciicast

Getting started

Install Golang (go1.11+)

Please check the official golang installation guide before you start. Official Documentation Also make sure you have installed a go1.11+ version.

Environment Config

make sure your ~/.*shrc have those variable:

echo $GOPATH
/Users/xesina/go
➜  echo $GOROOT
/usr/local/go/
➜  echo $PATH
...:/usr/local/go/bin:/Users/alpody/test/bin:/usr/local/go/bin

For more info and detailed instructions please check this guide: Setting GOPATH

Clone the repository

Clone this repository:

➜ git clone https://github.com/alpody/golang-fiber-realworld-example-app.git

Or simply use the following command which will handle cloning the repo:

➜ go get -u -v github.com/alpody/golang-fiber-realworld-example-app

Switch to the repo folder

cd $GOPATH/src/github.com/alpody/golang-fiber-realworld-example-app

Working with makefile

If you had installed make utility, you can simply run and select command.

make help

Install dependencies

➜ go mod download

Run

➜ go run main.go

Build

➜ go build

Tests

➜ go test ./...

Swagger UI

Open url http://localhost:8585/swagger/index.html in browser.

2021-10-07_17-01-27

About

Example real world backend API built with Golang + Fiber + Gorm + Swagger

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 94.0%
  • Makefile 5.0%
  • Other 1.0%