package main import ( "log" "net/http" ) func setupRoutes(config HttpConfig, db *Database) { http.HandleFunc("/", indexMux(db, config.Templates)) http.HandleFunc("/recipe", recipeMux(db, config.Templates)) http.HandleFunc("/recipe/edit", recipeEditMux(db, config.Templates)) http.HandleFunc("/recipe/image", recipeImageMux(config.Storage)) http.HandleFunc("/add_recipes", addRecipesMux(db, config.Storage, config.Static)) http.HandleFunc("/static/style.css", staticStyleMux("style.css", config.Static)) http.HandleFunc("/favicon.ico", faviconMux("favicon.ico", config.Static)) } func runServer(config HttpConfig, db *Database) { setupRoutes(config, db) address := config.Host + ":" + config.Port log.Println("Binding to 'http://" + address) log.Fatal(http.ListenAndServe(address, nil)) }