/golang-starter-pack

Codebase to demonstrate a fully fledged full-stack web application built with Golang, Echo, and Gorm.

Primary LanguageGoMIT LicenseMIT

Golang Starter Pack

Go Report Card Build Status

Codebase containing real world examples that adhere to the RealWorld API and specifications.

Created to demonstrate a complete full-stack application built with Golang, Echo, and Gorm.

Features

  • CRUD operations
  • Authentication
  • Routing
  • Pagination
  • ...and more!

Directory Structure

├── main.go
├── article
│   └── article.go
├── db
│   └── db.go
├── handler
│   ├── article.go
│   ├── article_test.go
│   ├── handler.go
│   ├── handler_test.go
│   ├── request.go
│   ├── response.go
│   ├── routes.go
│   ├── user.go
│   └── user_test.go
├── model
│   ├── article.go
│   └── user.go
├── router
│   ├── middleware
│   │   └── jwt.go
│   ├── router.go
│   └── validator.go
├── store
│   ├── article.go
│   └── user.go
├── user
│   └── user.go
└── utils
    ├── errors.go
    ├── jwt.go
    └── utils.go

9 directories, 33 files

Requirements

Getting Started

Clone the Repository

Clone this repository:

git clone https://github.com/make-school-labs/golang-starter-pack.git ~/go/src/PROJECT_NAME_HERE
cd ~/go/src/PROJECT_NAME_HERE

Install Dependencies

export GO111MODULE=on && go mod download

Run

go run main.go

Build

go build

Tests

go test ./...

Credits

Based on xesina/golang-echo-realworld-example-app on GitHub.