
I created this course to be what I would have loved when I was learning Web development with Go.
The Complete Web Development Bootcamp with Go and Gin starts with a simple web application, then developing CRUD APIs, and then full-fledged applications.
The best way to learn any programming paradigm is by building. We will do the same in this Bootcamp.
I will be developing projects with my screen shared from the very beginning. I recommend you develop these applications with me. This will help you learn and give you a kind of hands-on experience.
We will build 3 applications (excluding the 'Hello World' application):
- A note-taking application with user accounts and authentication.
- Oauth2 Login using Facebook
- TODO list manager application with Facebook login.
If you get stuck, I’m here to help.
I know while programming a new language or framework people get stuck.
I check the discussions section every day to help you get unstuck. I reply to every question to get you back on track.
What you’ll learn
Build Gin applications
GORM - ORM package for Golang
Store data in MySQL.
Bootstrap Integration
Create HTML views.
Use Middlewares
Build custom middleware for Authentication
Prerequisites
A Windows, Linux, or Mac machine. I prefer Linux, this Bootcamp is wholly done on a Linux machine.
A basic understanding of Golang, and Web development with any language.
Setup your dev environment with VS Code.
Setup your first Gin project
Install required packages
main function
The first route of the app '/'
HTML template to show the view
We will be using Bootstrap to beautify the applications we will be building. We start with integrating bootstrap in the Hello Gin project.
In this section, we are going to build an application with which you can keep track of your notes.
Integrate GORM in the project to access the database.
Create your first data model to interact with the table 'notes'.
Reorganize the code to move data interaction-related code to models.
Create the first controller
First CRUD API implementation
CRUD API for new note form page
CRUD API to create a new note on form submission
Let's do some cosmetic changes to the application using Bootstrap
CRUD API to display a note
CRUD API to edit a note
Build signup and login forms with email and password fields, create templates and routes for sign up and login, and implement a session controller with login and signup handlers.
Implement authentication in a Go Gin app by adding a session middleware that reads the session, sets user ID and email in the Gin context, and enables login and logout.
Add a user_id field of type uint64 to the node model, index it, and filter all queries by the current user's ID to restrict access and enforce authorization in controllers.
Form binding
Group routes under a single umbrella using route groups in Gin, move related routes from default to the notes group, and test the application after restarting the server.
Set up a login with Facebook by creating a Facebook app and configuring web login at localhost:9000, with the token stored in the database and other providers supported.
Log in with Facebook to obtain an access token, then connect to a MySQL database and store user data across users and OAuth users tables via create-or-update flows.
Builds a Go and Gin todo app with a MySQL table, a user-scoped model, endpoints for listing, creating, updating, and completing items via a JSON api and bootstrap accordion views.
The Complete Web Development Bootcamp with Go and Gin is a course for (naive) Go developers to take their first step toward web development. The course starts with a simple web application, then developing CRUD APIs, and then full-fledged applications.
This Bootcamp is the outcome of developing mission-critical web applications and services in Golang (and Gin Gonic). The performance of Go and Gin combo is exceptional. Gin has become one of my favorite frameworks to develop web applications.
What you’ll learn
Build Gin applications
GORM - ORM package for Golang
Store data in MySQL.
Bootstrap Integration
Create HTML views.
Use Middlewares
Build custom middleware for Authentication
How to structure your project
How does this course work?
I will be developing projects with my screen shared from the very beginning. I recommend you develop these applications with me. This will help you learn and give you a kind of hands-on experience.
We will build 3 applications (excluding the 'Hello World' application):
- A note-taking application with user accounts and authentication.
- Oauth2 Login using Facebook
- TODO list manager application with Facebook login.
Prerequisites
A Windows, Linux, or Mac machine. I prefer Linux, this Bootcamp is wholly done on a Linux machine.
A basic understanding of Golang, and Web development with any language.