Spaces:
Running
Running
Amlan-109
feat: Initial commit of LocalAI Amlan Edition with premium branding and personalization
750bbe6
| package http | |
| import ( | |
| "io/fs" | |
| "net/http" | |
| "github.com/labstack/echo/v4" | |
| "github.com/mudler/LocalAI/core/explorer" | |
| "github.com/mudler/LocalAI/core/http/middleware" | |
| "github.com/mudler/LocalAI/core/http/routes" | |
| "github.com/mudler/xlog" | |
| ) | |
| func Explorer(db *explorer.Database) *echo.Echo { | |
| e := echo.New() | |
| // Set renderer | |
| e.Renderer = renderEngine() | |
| // Hide banner | |
| e.HideBanner = true | |
| e.Pre(middleware.StripPathPrefix()) | |
| routes.RegisterExplorerRoutes(e, db) | |
| // Favicon handler | |
| e.GET("/favicon.svg", func(c echo.Context) error { | |
| data, err := embedDirStatic.ReadFile("static/favicon.svg") | |
| if err != nil { | |
| return c.NoContent(http.StatusNotFound) | |
| } | |
| c.Response().Header().Set("Content-Type", "image/svg+xml") | |
| return c.Blob(http.StatusOK, "image/svg+xml", data) | |
| }) | |
| // Static files - use fs.Sub to create a filesystem rooted at "static" | |
| staticFS, err := fs.Sub(embedDirStatic, "static") | |
| if err != nil { | |
| // Log error but continue - static files might not work | |
| xlog.Error("failed to create static filesystem", "error", err) | |
| } else { | |
| e.StaticFS("/static", staticFS) | |
| } | |
| // Define a custom 404 handler | |
| // Note: keep this at the bottom! | |
| e.GET("/*", notFoundHandler) | |
| return e | |
| } | |