HOME > Development > Let Build a Go version of Laravel

Let Build a Go version of Laravel

  • Development
  • Mar 20, 2025
SynopsisLets Build a Go version of Laravel, available at $79.99, has...
Let Build a Go version of Laravel  No.1

Lets Build a Go version of Laravel, available at $79.99, has an average rating of 4.68, with 129 lectures, based on 223 reviews, and has 3017 subscribers.

You will learn about How to build a reusable package in Go How to integrate multiple database types into a Go application How to build a complete User authentication system (web and API) in Go How to build a caching system using Go and Redis How to implement a caching system using Go and BadgerDB How to build a command line tool that writes code for you How to automate database migrations in Go How to integrate multiple template rendering engines into a single application How to write unit tests in Go How to write integration tests in Go This course is ideal for individuals who are Developers with some knowledge of Go, and Laravel developers who want faster, more scalable applications It is particularly useful for Developers with some knowledge of Go, and Laravel developers who want faster, more scalable applications.

Enroll now: Lets Build a Go version of Laravel

Summary

Title: Lets Build a Go version of Laravel

Price: $79.99

Average Rating: 4.68

Number of Lectures: 129

Number of Published Lectures: 129

Number of Curriculum Items: 129

Number of Published Curriculum Objects: 129

Original Price: $129.99

Quality Status: approved

Status: Live

What You Will Learn

  • How to build a reusable package in Go
  • How to integrate multiple database types into a Go application
  • How to build a complete User authentication system (web and API) in Go
  • How to build a caching system using Go and Redis
  • How to implement a caching system using Go and BadgerDB
  • How to build a command line tool that writes code for you
  • How to automate database migrations in Go
  • How to integrate multiple template rendering engines into a single application
  • How to write unit tests in Go
  • How to write integration tests in Go
  • Who Should Attend

  • Developers with some knowledge of Go, and Laravel developers who want faster, more scalable applications
  • Target Audiences

  • Developers with some knowledge of Go, and Laravel developers who want faster, more scalable applications
  • Laravel is one of the most popular web web application frameworks in the PHP world, and with good reason. It’s easy to use, well designed, and lets developers work on their applications without worrying about re-inventing the wheel every time they start a project. Go, often referred to as Golang, is one of the most popular programming languages in the world, and has been used to create systems at Netflix, American Express, and many other well known companies. It’s extremely fast, type safe, and designed from the ground up to be used on the web.

    This course is all about taking some of the most useful features found in Laravel, and implement similar functionality in Go. Since Go is compiled and type safe, web applications written in this language are typically much, much faster, and far less error prone that a similar application written in Laravel/PHP.

    The key features we’ll work on in this course include:

  • Implementing an Object Relation Mapper (ORM) that is database agnostic, and offers much of the functionality found in Laravel’s Eloquent ORM.

  • A fully functional Database Migrationsystem

  • Building a fully featured user authentication system that can be installed with a single command, which includes:

  • A password reset system

  • Session based authentication (for web based applications)

  • Token based authentication (for APIs and systems built with front ends like React and Vue)

  • A fully featured templating system (using both Go templates and Jet templates)

  • A complete caching system that supports Redis and Badger

  • Easy session management, with cookie, database (MySQL and Postgres), Redis stores

  • Simple response types for HTML, XML, JSON, and file downloads

  • Form validation

  • JSON validation

  • A complete mailing system which supports SMTP servers, and third party APIs including MailGun, SparkPost, and SendGrid

  • A command line application which allows for easy generation of emails, handlers, database models

  • Finally, the command line application will allow us to create a ready-to-go web application by tying a single command: celeritas new <myproject>

  • The only requirements for this course are:

  • A basic understanding of Go

  • A basic understanding of SQL databases

  • A Windows, Mac, or Linux computer

  • An internet connection

  • Docker

  • Visual Studio Code (or the IDE of your choice)

  • Course Curriculum

    Chapter 1: Introduction

    Lecture 1: Introduction

    Lecture 2: A bit about me

    Lecture 3: How to ask for help

    Lecture 4: Install Go

    Lecture 5: Installing VS Code

    Lecture 6: Install Make

    Chapter 2: Getting Started with the Celeritas Module

    Lecture 1: Setting up our project structure

    Lecture 2: Keeping our application and package in sync with Make

    Lecture 3: Starting work on Celeritas

    Lecture 4: Creating application folders

    Lecture 5: Creating and reading the .env file

    Lecture 6: Creating logs

    Lecture 7: Setting up Celeritas configuration

    Lecture 8: Getting a simple web server up and running

    Chapter 3: Rendering Pages

    Lecture 1: Implementing a page renderer in the Celeritas package (for Go templates)

    Lecture 2: A note about configuration

    Lecture 3: Trying out the Go render functionality

    Lecture 4: Cleaning up Celeritas

    Lecture 5: Adding Jet support to our page rendering package

    Lecture 6: Rendering a Jet Template

    Lecture 7: Working with Jet Templates

    Chapter 4: Testing

    Lecture 1: Testing the render package

    Lecture 2: Writing more tests for the render package

    Lecture 3: Simplifying our tests using Table Tests

    Chapter 5: Sessions

    Lecture 1: Implementing Sessions in Celeritas

    Lecture 2: Choosing and Installing a session package

    Lecture 3: Adding session middleware

    Lecture 4: Verifying that sessions work with myapp

    Lecture 5: Reading data from the session and passing it to the Jet template

    Lecture 6: Writing tests for the session package

    Lecture 7: Checking our Coverage

    Chapter 6: Installing MariaDB, Postgres, and Redis using Docker

    Lecture 1: Installing Docker

    Lecture 2: Bringing up and tearing down a development environment using docker-compose

    Chapter 7: Adding support for Postgres to Celeritas

    Lecture 1: Getting started with Postgres

    Lecture 2: Building a Postgres connection string and connecting to the database

    Lecture 3: Trying out our database connection

    Lecture 4: Adding ORM like functionality to our application with upper/db

    Lecture 5: Creating a real users table and a user model

    Lecture 6: Additional database functions for the User type

    Lecture 7: Finishing up the database functions for the User model

    Lecture 8: Inserting a user

    Lecture 9: Testing other database functions on the User model

    Lecture 10: Creating a login page and handler

    Lecture 11: Creating the post handler for logging in

    Lecture 12: Adding functions to the Tokens model

    Chapter 8: Testing Models

    Lecture 1: Writing tests for models.go

    Lecture 2: Getting started with our integration tests

    Lecture 3: Creating tables in our test docker image, and running some tests

    Lecture 4: Continuing to write integration tests

    Lecture 5: Finishing up our integration tests

    Lecture 6: Cleaning up our tests

    Chapter 9: Starting work on the Celeritas Command Line application

    Lecture 1: Setting up a simple CLI package in Celeritas

    Lecture 2: Adding support for migrations to the Celeritas package

    Lecture 3: Starting work on make migration in our CLI application

    Lecture 4: Using templates in our CLI

    Lecture 5: Trying out our make migration functionality

    Lecture 6: Running migrations

    Lecture 7: Trying out our make migrate commands with the Celeritas CLI

    Lecture 8: Getting started with Implementing make auth functionality

    Lecture 9: Trying out the make auth functionality

    Lecture 10: Continuing with the make auth functionality in our command line program

    Lecture 11: Creating simple auth middleware, and adding it to the make auth command

    Lecture 12: Installing our auth middleware with the celeritas command line utility

    Lecture 13: Trying out our improved make auth functionality

    Lecture 14: Implementing make handler functionality

    Lecture 15: Implementing make model functionality

    Lecture 16: Adding database stores to our sessions package

    Lecture 17: Adding support for database session store to the celeritas project

    Lecture 18: Supporting MySQL/MariaDB withmake auth

    Chapter 10: Validation

    Lecture 1: Creating a validation package

    Lecture 2: Trying out our validation

    Lecture 3: Adding validation to models

    Lecture 4: Trying out our model validation

    Lecture 5: Building a simple form and performing validation on it

    Lecture 6: Building our PostForm handler with validation

    Chapter 11: Helper utilities

    Lecture 1: Helper functions for the routes file

    Lecture 2: Helper functions for handlers

    Chapter 12: Response Utilities, Encryption, and More

    Lecture 1: JSON, XML, and other response types

    Lecture 2: Creating handlers for our response types

    Lecture 3: Creating the routes and links for our response types

    Lecture 4: Ecryption/Decryption

    Lecture 5: Generating and getting our encryption key

    Lecture 6: Trying out our encryption functionality

    Chapter 13: Implementing a Redis cache

    Lecture 1: Installing the necessary package and getting started

    Lecture 2: Connecting to Redis

    Lecture 3: Completing the rest of the cache functions

    Lecture 4: Testing the cache package

    Instructors

  • Let Build a Go version of Laravel  No.2
    Trevor Sawler
    Ph.D.
  • Rating Distribution

  • 1 stars: 0 votes
  • 2 stars: 0 votes
  • 3 stars: 6 votes
  • 4 stars: 43 votes
  • 5 stars: 175 votes
  • Frequently Asked Questions

    How long do I have access to the course materials?

    You can view and review the lecture materials indefinitely, like an on-demand channel.

    Can I take my courses with me wherever I go?

    Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don’t have an internet connection, some instructors also let their students download course lectures. That’s up to the instructor though, so make sure you get on their good side!