Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

TutorialEdge/go-rest-api-course

Open more actions menu

Repository files navigation

Building a Production Ready REST API in Go Course Repository

Building a Production Ready REST API in Go - Course Materials

This repo contains all of the source code for my course - Building a Production Ready REST API in Go.

Join the TutorialEdge clan for the cost of $12.99 a month to gain access to all of the courses on the site - Pricing

Application Overview

I've designed the code in this course to follow clean architecture principles.

We'll be building a layered app with 3 distinct layers:

  • The Transport Layer - responsible for handling incoming HTTP requests and passing them on to the relevant service functions.
  • The Service Layer - responsible for all the business logic in your application.
  • The Repository Layer - responsible for all the interactions with the database!

This ends up looking something like this:

Architecture Overview

Technologies Used:

  • Postgres
  • Docker + Docker-Compose
  • Go (This one was fairly obvious no?)
  • Postman - for testing our service manually with HTTP request.

Frameworks + Libraries Used

  • sqlx - for simplifying our interactions with the database
  • golang-migrate - for running our migrations on app startup
  • dgrijalva/jwt-go - for working with JWTs in our transport layer.
  • satori/go.uuid - for generating and working with UUIDs.
  • sirupsen/logrus - nicer logging.
  • stretchr/testify - For easier testing!

Prerequisites

This course is designed to help teach you one approach for building and structuring a production-ready REST API in Go. It's designed for people with some Go already, I wont be covering the basic syntax for Go, but mostly focused on higher-level topics.

Support

Have any support issues or follow-up questions? Join us on the TutorialEdge Clan discord and get real-time support for all of your Go needs!

About

No description, website, or topics provided.

Resources

Stars

76 stars

Watchers

2 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Morty Proxy This is a proxified and sanitized view of the page, visit original site.