new favicon
|
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 6.1 KiB |
BIN
htmgo-site/assets/public/favicon-96x96.png
Normal file
|
After Width: | Height: | Size: 3 KiB |
|
Before Width: | Height: | Size: 5.1 KiB After Width: | Height: | Size: 15 KiB |
3
htmgo-site/assets/public/favicon.svg
Normal file
|
After Width: | Height: | Size: 60 KiB |
|
Before Width: | Height: | Size: 3.6 KiB |
|
Before Width: | Height: | Size: 6.9 KiB |
|
Before Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 23 KiB |
21
htmgo-site/assets/public/site.webmanifest
Normal file
|
|
@ -0,0 +1,21 @@
|
||||||
|
{
|
||||||
|
"name": "htmgo",
|
||||||
|
"short_name": "htmgo",
|
||||||
|
"icons": [
|
||||||
|
{
|
||||||
|
"src": "/public/web-app-manifest-192x192.png",
|
||||||
|
"sizes": "192x192",
|
||||||
|
"type": "image/png",
|
||||||
|
"purpose": "maskable"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"src": "/public/web-app-manifest-512x512.png",
|
||||||
|
"sizes": "512x512",
|
||||||
|
"type": "image/png",
|
||||||
|
"purpose": "maskable"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"theme_color": "#ffffff",
|
||||||
|
"background_color": "#ffffff",
|
||||||
|
"display": "standalone"
|
||||||
|
}
|
||||||
BIN
htmgo-site/assets/public/web-app-manifest-192x192.png
Normal file
|
After Width: | Height: | Size: 6.7 KiB |
BIN
htmgo-site/assets/public/web-app-manifest-512x512.png
Normal file
|
After Width: | Height: | Size: 24 KiB |
|
|
@ -80,6 +80,17 @@ func ConfigurableRootPage(ctx *h.RequestContext, props RootPageProps) *h.Page {
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func RootPageWithTitle(ctx *h.RequestContext, title string, children ...h.Ren) *h.Page {
|
||||||
|
return ConfigurableRootPage(
|
||||||
|
ctx,
|
||||||
|
RootPageProps{
|
||||||
|
Title: title,
|
||||||
|
Description: "build simple and scalable systems with go + htmx",
|
||||||
|
Children: h.Fragment(children...),
|
||||||
|
},
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
func RootPage(ctx *h.RequestContext, children ...h.Ren) *h.Page {
|
func RootPage(ctx *h.RequestContext, children ...h.Ren) *h.Page {
|
||||||
return ConfigurableRootPage(
|
return ConfigurableRootPage(
|
||||||
ctx,
|
ctx,
|
||||||
|
|
|
||||||
|
|
@ -8,8 +8,9 @@ import (
|
||||||
|
|
||||||
func Index(ctx *h.RequestContext) *h.Page {
|
func Index(ctx *h.RequestContext) *h.Page {
|
||||||
snippet := GetSnippet(ctx)
|
snippet := GetSnippet(ctx)
|
||||||
return base.RootPage(
|
return base.RootPageWithTitle(
|
||||||
ctx,
|
ctx,
|
||||||
|
"Examples",
|
||||||
h.Div(
|
h.Div(
|
||||||
h.Class("flex h-full"),
|
h.Class("flex h-full"),
|
||||||
h.Aside(
|
h.Aside(
|
||||||
|
|
|
||||||