Create interactive applications with Golang, HTMX, and Templ
The project (for now) is in the experimental phase.
- GOTHKIT
- Installation
- Getting started
- Migrations
- Creating views with Templ
- Validations
- Testing
- Create a production release
go install github.com/anthdm/gothkit@master
After installation you can create a new project by running:
gothkit [myprojectname]
You can now navigate to your project:
cd [myprojectname]
You can run the development server with the following command:
make dev
Hot reloading is configured by default when running your application in development.
NOTE: on windows or on in my case (WSL2) you might need to run
make watch-assets
in another terminal to watch for CSS and JS file changes.
make db-mig-create add_users_table
The command will create a new migration SQL file located at app/db/migrations/add_users_table.sql
make db-up
make db-reset
make db-seed
This command will run the seed file located at cmd/scripts/seed/main.go
Gothkit uses Templ as its templating engine. Templ allows you to create type safe view components that renders fragments of HTML. In-depth information about Templ can be found here: Templ documentation
todo
Gothkit will compile your whole application including its assets into a single binary. To build your application for production you can run the following command:
make build
This will create a binary file located at /bin/app_prod
.
Make sure you also set the correct application environment variable in your .env
file.
APP_ENV = production