Skip to content

sebivenlo/esd-2024-goth-stack

 
 

Repository files navigation

GOTH Stack Workshop 🚀

Welcome to the ESD-2024-GOTH-Stack workshop repository! It contains everything you need to follow along with the workshop, including assignments, documentation, and examples. This workshop demonstrates how to build a web application using the GOTH stack:

  • Go – a fast, statically typed, compiled programming language
  • Templ – a template-based code generator for Go, simplifying your HTML generation
  • HTMX – a lightweight JavaScript library for extending HTML with dynamic, server-driven functionality

Check out our wiki for more in depth explanations and further resources on the different components of this stack.


You can access our presentation here!


Table of Contents

  1. Overview
  2. Repository Structure
  3. Getting Started

Overview

During this workshop, you’ll learn how to:

  • Build server-side logic in Go.
  • Use Templ for generating static HTML components (or other Go boilerplate).
  • Enhance your web pages with dynamic interactions using HTMX.

By the end, you’ll have a solid starting point for creating modern, server-driven web applications without the complexity of heavy frontend frameworks.


Repository Structure

We’ve organized the repository to make it easy for you to find relevant materials and examples.

esd-2024-goth-stack/
├─ Documentation/
│  ├─ WorkshopPresentation
│  ├─ Go.md
│  ├─ Templ.md
│  └─ HTMX.md
├─ Assignment/
│  ├─ workshop-instructions.md
│  └─ ...
├─ Example_Project/
│  ├─ Cookbook
│  └─ ...
├─ LiveExamples/
│  └─ ...
└─ README.md

Documentation

  • Purpose: Contains workshop materials, references, and guides explaining key GOTH stack concepts.
  • Highlights:
    • WorkshopPresentation All slides used during the workshop.
    • Individual information pages for each element. These include more indepth information and links to further resources, tutorials, articles, videos and more..

Assignment

  • Purpose: Houses practical tasks or homework for each workshop module.
  • Highlights:
    • assignment_instructions.md describing the goals and deliverables for the tasks.

Example_Project

  • Purpose: A sample application utilizing Go, Templ, and HTMX.

LiveExamples

  • Purpose: Includes example code to be shown during the presentation.

Getting Started

  1. Clone the Repo

    git clone https://github.com/sebivenlo/esd-2024-goth-stack.git
    cd esd-2024-goth-stack
  2. Open the root folder in VSCode, then reopen in the container

  3. Follow the presentation and live demo

    • Lean back and enjoy our introductions into the different elements of the Goth stack (we put a lot of work into it 🩵)
  4. Complete the Assignments

    • Head over to the Assignment folder and review the tasks outlined in assignment_instructions.md.
    • Each assignment builds on concepts introduced in the Documentation folder and the example project.
  5. Explore the Example_Project

    • Navigate into Example_Project/.
    • Use go run . to run the application

Happy coding with Go, Templ, and HTMX! If you have any questions or need clarification, feel free to approach us!

About

esd-2024-esd-2024-esd-template created by GitHub Classroom

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • templ 54.9%
  • Go 35.2%
  • JavaScript 7.5%
  • Dockerfile 2.4%