htmgo/htmgo-site/main.go

40 lines
829 B
Go
Raw Normal View History

2024-09-20 16:45:23 +00:00
package main
import (
"github.com/labstack/echo/v4"
"github.com/maddalax/htmgo/framework/h"
"github.com/maddalax/htmgo/framework/service"
"htmgo-site/__htmgo"
2024-09-20 16:45:23 +00:00
"htmgo-site/internal/markdown"
2024-09-20 18:25:14 +00:00
"io/fs"
2024-09-20 16:45:23 +00:00
)
func main() {
locator := service.NewLocator()
staticAssets := GetStaticAssets()
markdownAssets := GetMarkdownAssets()
2024-09-20 16:45:23 +00:00
service.Set(locator, service.Singleton, markdown.NewRenderer)
h.Start(h.AppOpts{
ServiceLocator: locator,
LiveReload: true,
Register: func(e *echo.Echo) {
sub, err := fs.Sub(staticAssets, "assets/dist")
if err != nil {
panic(err)
}
2024-09-20 18:25:14 +00:00
e.StaticFS("/public", sub)
e.Use(func(next echo.HandlerFunc) echo.HandlerFunc {
return func(c echo.Context) error {
c.Set("embeddedMarkdown", markdownAssets)
2024-09-20 18:25:14 +00:00
return next(c)
}
})
2024-09-24 03:44:20 +00:00
__htmgo.Register(e)
2024-09-20 16:45:23 +00:00
},
})
}