Mastering Live(View) development in Go (GoLang)
Modern Phoenix LiveView inspired development in GoLang, where JS is not needed (almost)
What You’ll Learn:
- Create interactive web apps in GoLang
- Utilize websockets for modern client-server communication
- Develop UI-based applications with your existing GoLang backend skills
- Employ Push techniques to update users from the backend
- Create collaborative applications using the popular LiveView approach
- Accelerate your development process with modern programming techniques
- Craft highly maintainable and easily readable application code
What is the LiveView Programming Approach/Model? LiveView offers rich, real-time user experiences with server-rendered HTML. The LiveView programming model is primarily declarative, simplifying the development process. Instead of specifying detailed event-driven behavior, events in LiveView are managed by handlers bound to event IDs. When the application’s state changes, LiveView automatically re-renders the relevant parts of its HTML template, calculates the difference, and pushes these updates to the browser via websocket communication. This means developers can write LiveView templates like any other server-rendered HTML, with LiveView handling the complexity of tracking changes and efficiently updating the browser.
The Phoenix Framework widely popularized this approach, and implementations exist for various languages and platforms.
Topics Covered by This Course: Throughout the course, we create a basic web application in Go Lang using the Live(View) approach. Key topics covered include:
- LiveView-inspired programming, including technical insights
- Explanation of essential Live(View) concepts
- Implementation of Pub/Sub communication
- Integration of Live(View) into popular frameworks
- Connecting a Live(View) application with a NATS server
An integral aspect of this course is understanding what you don’t need to do when utilizing the Live(View) approach. Simplification is a significant benefit, aligning with the adage that “the best code is the code you don’t have to write.”
Summary: This course aims to serve as a guide to the Live(View) programming world. We take a pragmatic approach by building real applications and practically exploring the Live(View) programming model.
GitHub Repository: Access the source code through the link provided in the last lecture of this course. You can clone the repository and utilize the code snippets developed throughout the course.
Who This Course Is For: This course is ideal for both existing and aspiring Go programmers interested in adopting a LiveView-like programming approach to effortlessly build interactive applications.
Instructor: David Marko – Developer/Architect
What Will You Learn?
- Real-time user experiences with server-rendered HTML
- Phoenix(Elixir) LiveView-like programming in Go
- Form-based UI using Live(View)
- Pub/Sub based user communication using Live(View)
- Periodic background jobs using Live(View)
- Creating a single-page application in one file
- Integration with Fabric framework
- Handling application events in a declarative way
- Using websocket communication between frontend and backend