psibal / golang-fiber-realworld-example-app

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

Home Page:https://realworld.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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

https://realworld.io

License:MIT License


Languages

Language:Go 94.0%Language:Makefile 5.0%Language:Dockerfile 0.9%Language:Shell 0.1%