Let's Build a Go version of Laravel
Let's 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: Let's Build a Go version of Laravel
Summary
Title: Let's 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 with"make 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
-
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!
You may also like
- Top 10 Video Editing Courses to Learn in November 2024
- Top 10 Music Production Courses to Learn in November 2024
- Top 10 Animation Courses to Learn in November 2024
- Top 10 Digital Illustration Courses to Learn in November 2024
- Top 10 Renewable Energy Courses to Learn in November 2024
- Top 10 Sustainable Living Courses to Learn in November 2024
- Top 10 Ethical AI Courses to Learn in November 2024
- Top 10 Cybersecurity Fundamentals Courses to Learn in November 2024
- Top 10 Smart Home Technology Courses to Learn in November 2024
- Top 10 Holistic Health Courses to Learn in November 2024
- Top 10 Nutrition And Diet Planning Courses to Learn in November 2024
- Top 10 Yoga Instruction Courses to Learn in November 2024
- Top 10 Stress Management Courses to Learn in November 2024
- Top 10 Mindfulness Meditation Courses to Learn in November 2024
- Top 10 Life Coaching Courses to Learn in November 2024
- Top 10 Career Development Courses to Learn in November 2024
- Top 10 Relationship Building Courses to Learn in November 2024
- Top 10 Parenting Skills Courses to Learn in November 2024
- Top 10 Home Improvement Courses to Learn in November 2024
- Top 10 Gardening Courses to Learn in November 2024