Module 1 - Introduction
1. Welcome to the course2. Why Go3. Why start and build a blog?4. What about React/Vue/Angular?5. Getting setup and source filesModule 2 - Tech Stack Walkthrough
1. Introduction to Golang Part 12. Introduction to Golang Part 23. Introduction to Golang Part 34. Structuring Golang Applications5. Templating with Templ6. Just enough interactivity with HTMX7. Getting started with postgres8. Servers, routers and endpointsModule 3 - Creating the MVP
1. What are the minimal requirements?2. Doing some initial plumbing3. Embedding static assets4. Creating our first views5. Tailwind & Utility-first CSS6. Styling the Landing Page7. Styling the Article PageModule 4 - Managing Content
1. Choose your own adventure2. Writing in Markdown3. Parsing Markdown to HTML4. Frontmatter and Meta Information5. Making our code examples look nice6. Adding error pagesModule 5 - Adding the Database
1. What is a Migration?2. Our first migration: articles table3. Creating the Database Layer4. Showing the Latest Posts5. Slugs and Human Readable URLsModule 6 - Managing the Blog
1. What are the minimum requirements?2. A new layout approaches3. Introduction to authentication4. Our second migration: Users Table5. Storing passwords securely6. Authenticating users Part One7. Authenticating users Part Two8. Remember me/Forget me9. Managing posts using a hypermedia API - Part One10. Managing posts using a hypermedia API - Part Two11. Managing posts using a hypermedia API - Part Three12. Managing posts using a hypermedia API - Part Four13. Implementing CRUD For Articles - Part One14. Implementing CRUD For Articles - Part Two15. Implementing CRUD For Articles - Part Three16. Implementing CRUD For Articles - Part Four17. Flashing Ourselves/Providing Visual Feedback - Part One18. Flashing Ourselves/Providing Visual Feedback - Part Two19. Flashing Ourselves/Providing Visual Feedback - Part ThreeModule 7 - Adding Subscribers
1. What are the minimum requirements?2. Expanding the database: Tokens & Subscribers3. Creating the token and subscriber models - Part One4. Creating the token and subscriber models - Part Two5. Creating the subscription form6. Saving and verifying subscribers - Part One7. Saving and verifying subscribers - Part Two8. Saving and verifying subscribers - Part Three9. Emails and Clients - Part One10. Emails and Clients - Part Two11. Emails and Clients - Part Three12. Our fifth migration: Tokens Table13. Email validation view14. Email validation tokens15. Sending validation emails with SES16. Making it all come togetherIntroduction
Welcome to the course
Summary
In this video, I introduce my Go blog course where I'll teach you to build a full-stack web application by creating a personal blog. I'll cover building a robust backend, a management dashboard, custom authentication, and email setup. I explain our tech stack, including Go, Echo, Templ, HTMX, AlpineJS, Tailwind CSS, and Postgres SQL. While I provide some optional introductory content, I encourage you to check out the last part of this module for information on accessing the source code and getting help.
Transcript
Welcome to the Go blog course in this course, I'll be teaching you how to build a full stack web application using Go and we're doing this by creating our own personal blog that have include like a robust backend, a dashboard to manage your subscribers, your newsletters, your articles, we'll be rolling our own authentication, setting up our own emails so that by the end of this course, you have all the skills you need to build real life production, great web application using Go. The tech stack we'll be working with consists only of a few components. In addition to Go, it includes Echo, which is a minimalistic web framework. Temple, which is a HTML templating engine that will be in charge of rendering our views. HTMX that enables us to add just enough interactivity without needing a big JavaScript framework. We're going to be adding AlpineJS, which is really useful for those client side interactivities that we can really add with HTMX. You're Tailwind CSS for styling. And then lastly, we're gonna be using Postgres Quill for all of our database needs. The rest of this module introduces you to the philosophy behind building web replication using Go and why you wanna consider that router leads compared to something like reactive view and also how, uh, personal blog can benefit you in your developing career. However, these are not necessary, so feel free to skip ahead to module two if you just want to get started with the code. But maybe consider checking out the last episode on this module as we go over how you can get access to the source code and also how you can get help if you need to.