package main import ( "html/template" "log" "net/http" "path/filepath" "git.netflux.io/rob/elon-eats-my-tweets/config" "git.netflux.io/rob/elon-eats-my-tweets/httpserver" "github.com/gorilla/sessions" "go.uber.org/zap" ) func main() { cfg, err := config.NewFromEnv() if err != nil { log.Fatal(err) } logger, err := zap.NewDevelopment() if err != nil { log.Fatal(err) } templates, err := template.ParseGlob(filepath.Join(cfg.PublicPath, "views", "*.html")) if err != nil { log.Fatalf("error loading templates: %v", err) } handler := httpserver.NewHandler( cfg, templates, sessions.NewCookieStore([]byte(cfg.SessionKey)), httpserver.RandomTokenGenerator{}, logger, ) log.Fatal(http.ListenAndServe(cfg.ListenAddr, handler)) }