Learn how to build and HTTP web server from scratch in the Go programming language. You'll build a production ready JSON API using farily minimalistic tools. You'll incorporate middleware, routing, logging, webhooks, authentication, authorization, JWTs, and more. This course is the coup-de-grace for any aspiring backend developer.
Overview
Syllabus
- Servers
- We'll cover the basics of web servers, and why Go is such a great language for building performant web servers
- Routing
- We'll cover the basics of HTTP routing, and how to build a router using Go's standard library
- Architecture
- We'll talk about some different web architectures, and how to choose the right one for your project
- JSON
- Learn about how to parse and send JSON data from a Go server
- Storage
- We'll add a PostgreSQL database and talk about data storage and database migrations
- Authentication
- We'll build an authentication system using JWTs from scratch, and compare JWTs to other authentication methods
- Authorization
- Learn about how authorization differs from authentication, and how to implement it in your application
- Webhooks
- Webhooks are a special kind of HTTP handler that you'll use often in modern web applications. Learn how to use them here
- Documentation
- Learn about documentation, why it's important, and learn about some tools that can help you write good documentation
Taught by
Lane Wagner, Allan, Matt, Hunter, and Dan