https://github.com/sonjek/go-full-stack-example
Example CRUD app based on Go + templ + </>htmx + PicoCSS + Ionicons
https://github.com/sonjek/go-full-stack-example
example-code example-project go golang htmx htmx-app htmx-notes picocss servemux server-side-rendering templ
Last synced: about 1 month ago
JSON representation
Example CRUD app based on Go + templ + </>htmx + PicoCSS + Ionicons
- Host: GitHub
- URL: https://github.com/sonjek/go-full-stack-example
- Owner: sonjek
- License: mit
- Created: 2024-03-19T17:32:52.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2026-04-04T11:42:51.000Z (about 1 month ago)
- Last Synced: 2026-04-04T13:23:19.749Z (about 1 month ago)
- Topics: example-code, example-project, go, golang, htmx, htmx-app, htmx-notes, picocss, servemux, server-side-rendering, templ
- Language: Go
- Homepage:
- Size: 1.85 MB
- Stars: 12
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# go-full-stack-example
Example of full-stack Go based Web app
[](https://go.dev) [](https://github.com/a-h/templ) [](https://github.com/bigskysoftware/htmx) [](https://gitlab.com/cznic/sqlite) [](https://github.com/go-gorm/gorm) [](https://github.com/tailwindlabs/tailwindcss) [](https://daisyui.com) [](https://github.com/ionic-team/ionicons)
Features:
- Comfortable and flexible component based templates via [templ](https://github.com/a-h/templ)
- CRUD functionality (Create, Read, Update, and Delete entries)
- Persistent storage via [SQLite](https://gitlab.com/cznic/sqlite) + ORM ([gorm](https://github.com/go-gorm/gorm))
- Error handling on server and user interface side
- Infinite Scrolling via lazy loading
- User friendly interface
- Interactive Modals for better UX
- Native light and dark mode support
- Preserve static files
## Quick start
```bash
# 1. Clone this repository
git clone https://github.com/sonjek/go-full-stack-example && cd go-full-stack-example
# 2. Run (with hot-reload)
make dev
# Or run (without hot-reload)
make start
# Or build a binary and run
make build && bin/app
```
The server starts on `:8089`.
The SQLite database is created automatically and migrations are applied on startup.
---