package main import ( "github.com/kataras/iris/v12" ) // Follow these steps first: // $ go get -u github.com/go-bindata/go-bindata/... // # OR: go get -u github.com/go-bindata/go-bindata/v3/go-bindata // # to save it to your go.mod file // $ go-bindata -prefix "assets" -fs ./assets/... // $ go run . // "physical" files are not used, you can delete the "assets" folder and run the example. // // See `file-server/embedding-gzipped-files-into-app` example as well. func newApp() *iris.Application { app := iris.New() app.Logger().SetLevel("debug") app.HandleDir("/static", AssetFile()) /* Or if you need to cache them inside the memory (requires the assets folder to be located near the executable program): app.HandleDir("/static", iris.Dir("./assets"), iris.DirOptions{ IndexName: "index.html", Cache: iris.DirCacheOptions{ Enable: true, Encodings: []string{"gzip"}, CompressIgnore: iris.MatchImagesAssets, CompressMinSize: 30 * iris.B, }, }) */ return app } func main() { app := newApp() // http://localhost:8080/static/css/main.css // http://localhost:8080/static/js/main.js // http://localhost:8080/static/favicon.ico app.Listen(":8080") }