Show HN: htmgo - build simple and scalable systems with golang + htmx
htmgo, in alpha release, enables interactive web application development using Go and htmx. It features single binary deployment, live reload, automatic page registration, Tailwind CSS support, and a plugin architecture.
Read original articlehtmgo is currently in its alpha release phase, designed to facilitate the development of interactive websites and web applications using Go and htmx. This framework allows developers to create fast and simple web applications without the need for JavaScript, as it combines the efficiency of Go with the hypermedia capabilities of htmx. The applications built with htmgo are compiled into a single deployable binary, simplifying deployment. Key features include live reload functionality, which automatically rebuilds CSS, Go code, and routes upon changes, as well as automatic registration of pages and partials based on file paths. htmgo also supports Tailwind CSS out of the box, eliminating the need for additional configuration. Furthermore, it offers a plugin architecture for integrating optional plugins, such as those from entgo.io, and includes custom htmx extensions to minimize boilerplate code for common tasks.
- htmgo is in alpha release, focusing on building interactive web applications with Go and htmx.
- It compiles applications into a single deployable binary, enhancing deployment simplicity.
- Key features include live reload, automatic page registration, and built-in Tailwind CSS support.
- The framework supports a plugin architecture for optional enhancements and custom htmx extensions to reduce boilerplate.
Related
78MB Hugo binary is full of paths and URLs
Hugo, a fast and flexible static site generator written in Go, offers advanced templating and quick site rendering. Installation options include prebuilt binaries, package managers, and repositories. The extended edition provides additional features. Documentation covers various aspects, and users are encouraged to seek support on the community forum. Contributions involve diverse tasks with detailed guidelines available.
Show HN: Gothem stack – An Htmx and templ template
The "gothem-stack" GitHub project is a flexible template using Go, Templ, HTMX, Echo, and Mage. It supports TailwindCSS, DaisyUI, and Alpine.js, aiding quick setup and various functionalities. Persistence relies on Postgres and sqlc.
From React to Htmx on a real-world SaaS product (2022) [video]
David Guillo shares his experience replacing React with htmx in a SAS product, highlighting htmx's advantages for creating rich user interfaces without JavaScript frameworks, emphasizing accessibility and ease of use.
HMPL – template language for displaying UI from server to client
hmpl is a lightweight server-side template language that generates HTML, reducing JavaScript size and improving loading speeds for SPAs. It supports loading indicators, error handling, and offers various installation options.
Htmx, Raku and Pico CSS
The author simplifies web development using HTMX, Raku, and Pico CSS, emphasizing semantic HTML and dynamic content creation without JavaScript, while working on a project to rebuild HTMX examples.
- Some users appreciate the combination of Go and HTMX, highlighting its potential for building web applications without relying heavily on JavaScript.
- Critics express concerns about the complexity and limitations of using a DSL for HTML generation, preferring more traditional methods.
- There is a call for more open-source templates and components that are not tied to specific licensing restrictions.
- Several commenters mention the need for features like live reload and integration with existing frameworks to enhance developer experience.
- Overall, there is a recognition of the evolving landscape of web development tools, with some questioning whether new approaches can truly replace established standards like HTML.
Don't get me wrong, I love HTMX, I just don't want to write DSL to generate HTML. IMO a backend language should integrate HTMX similar to how https://hotwired.dev/ works.
return h.NewPage( h.Div( h.Class("flex gap-2"), h.TextF("the current time is %s", now.String()) ) )
To me that is horrible.
edit: typo
I dream of a library like ours to take on the likes of React, and to get there the devex needs to have some key features. Most notably, imo, is live reload. You could use air, but I find it still to be too slow to recompile the entire app. I have had some success so far with yaegi to interpret the go at runtime [2]. It isn't perfect, but the full language spec is implemented.
My personal goal is to build the Go equivalent of rails/django. Live reloading is needed in addition to plugins that provide web app primitives (auth, storage, logging, metrics, etc). Additionally, I think the network effect of React is a powerful value driver, so some easy way to include React in an app is also important. Thankfully evanw has made this trivial with esbuild [3]
[1] https://github.com/breadchris/share/blob/master/html2/html.g... [2] https://github.com/traefik/yaegi [3] https://github.com/breadchris/share/blob/master/graph/build....
Which I have also been starting to use for one project, with quarkus, been a nice experience so far.
I’m mean fine have fun with your libraries but the amount of excitement for something like this? Amazing.
There were a few typos in the docs page: https://triplechecker.com/s/D32t6y/htmgo.dev?v=HrUfl
Hand-coding HTML is three decades in, like using computer languages from the 1970s in the 2000s.
There are so many of these experiments the last few years, could any be what replaces HTML5?
If not, why not? What would be enough better? Most likely not just another form of the same.
Related
78MB Hugo binary is full of paths and URLs
Hugo, a fast and flexible static site generator written in Go, offers advanced templating and quick site rendering. Installation options include prebuilt binaries, package managers, and repositories. The extended edition provides additional features. Documentation covers various aspects, and users are encouraged to seek support on the community forum. Contributions involve diverse tasks with detailed guidelines available.
Show HN: Gothem stack – An Htmx and templ template
The "gothem-stack" GitHub project is a flexible template using Go, Templ, HTMX, Echo, and Mage. It supports TailwindCSS, DaisyUI, and Alpine.js, aiding quick setup and various functionalities. Persistence relies on Postgres and sqlc.
From React to Htmx on a real-world SaaS product (2022) [video]
David Guillo shares his experience replacing React with htmx in a SAS product, highlighting htmx's advantages for creating rich user interfaces without JavaScript frameworks, emphasizing accessibility and ease of use.
HMPL – template language for displaying UI from server to client
hmpl is a lightweight server-side template language that generates HTML, reducing JavaScript size and improving loading speeds for SPAs. It supports loading indicators, error handling, and offers various installation options.
Htmx, Raku and Pico CSS
The author simplifies web development using HTMX, Raku, and Pico CSS, emphasizing semantic HTML and dynamic content creation without JavaScript, while working on a project to rebuild HTMX examples.