42 lines
1.1 KiB
Go
42 lines
1.1 KiB
Go
package layouts
|
|
|
|
import (
|
|
"github.com/camzawacki/personal-site/internal/routenames"
|
|
"github.com/camzawacki/personal-site/internal/ui"
|
|
. "github.com/camzawacki/personal-site/internal/ui/components"
|
|
. "maragu.dev/gomponents"
|
|
. "maragu.dev/gomponents/html"
|
|
)
|
|
|
|
func Primary(r *ui.Request, content Node) Node {
|
|
return Doctype(
|
|
HTML(
|
|
Lang("en"),
|
|
Data("theme", "light"),
|
|
Head(
|
|
Metatags(r),
|
|
CSS(),
|
|
JS(),
|
|
),
|
|
Body(
|
|
Nav(
|
|
Class("navbar bg-base-100 border-b border-gray-200 p-5 justify-center"),
|
|
Div(
|
|
Class("flex items-center"),
|
|
NavLink(r, "Cam Zalewaki", routenames.Home, false),
|
|
Span(Class("divider divider-horizontal")),
|
|
NavLink(r, "Writing", routenames.About, true),
|
|
Span(Class("divider divider-horizontal")),
|
|
NavLink(r, "Projects", routenames.About, true),
|
|
Span(Class("divider divider-horizontal")),
|
|
NavLink(r, "Misc", routenames.About, true),
|
|
Span(Class("divider divider-horizontal")),
|
|
NavLink(r, "About", routenames.About, true),
|
|
),
|
|
),
|
|
content,
|
|
HtmxListeners(r),
|
|
),
|
|
),
|
|
)
|
|
}
|