go-html-boilerplate

command module
v0.8.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 23, 2023 License: MIT Imports: 20 Imported by: 0

README

Go html boilerplate

This is a starter pack for doing web development with Go, with support for some of the things you'll usually want to add to an HTML web server:

  • Adding templates and rendering them
  • Regex matching for routes
  • Logging requests and responses
  • Serving static content with caching/busting
  • Watching/restarting the server after changes to CSS/templates
  • Loading configuration from a config file
  • Flash success and error messages

Read more about the choices and the feature set found here. You can see an example project using go-html-boilerplate here.

Feel free to adapt the project as you see fit; that should be pretty easy to do since no one component does too much on its own, and all of them operate on standard library interfaces like http.Handler.

To get started, run go get ./... and then make serve to start a server on port 7065. You may need to run make generate_cert to generate a self-signed certificate for local use.

Templates go in the "templates" folder; you can see how they're loaded by examining the init function in main.go. Run make assets to recompile them into the binary.

Static files go in the "static" folder. Run make assets to recompile them into the binary.

Watching for changes

Run make watch to restart the server after you make changes to the assets directory.

If you are on a Mac, be sure to add this folder to the Spotlight privacy list, or file modify events will fire a second time when Spotlight indexes updates.

Documentation

Overview

go-html-boilerplate loads configuration from a file and starts a HTTP server that can render HTML templates and static assets.

See config.yml for an explanation of the configuration options for the server, and the Makefile for various tasks you can run in coordination with the server (run tests, build assets, start the server).

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL