package main import ( "log" "net/http" "os" "strings" "github.com/joho/godotenv" ) var debug = false var apiKey = "" /* root handler */ func rootHandler(w http.ResponseWriter, r *http.Request) { path := strings.Trim(r.URL.Path, "/") if path == "" { //http.ServeFile(w, r, "static/index.html") renderIndexTemplate(w) } else { renderWatchTemplate(w, path) } } /* main */ func main() { // load .env file if it exists godotenv.Load() debug = os.Getenv("DEBUG") != "" apiKey = os.Getenv("API_KEY") // setup routes setupRoutesAPI() setupRoutesWatch() setupHome() http.Handle("/static/", http.StripPrefix("/static/", http.FileServer(http.Dir("static")))) http.HandleFunc("/", rootHandler) // start http server log.Println("Listening on http://localhost:8080") err := http.ListenAndServe(":8080", nil) if err != nil { log.Fatal(err) } }