Quick Start
Upgrade Guide
Upgrade an existing GoLazy application from v0.1.10 to v0.1.11.
Upgrade from v0.1.10
GoLazy v0.1.11 adds optional SEO metadata helpers, generated metadata files,
mailer rendering, early storage and media packages, and generated-app tooling
cleanup. Existing v0.1.10 applications do not need a large rewrite.
Update the framework requirement:
go get golazy.dev@latest
go mod tidy
Read Install GoLazy for the current install and module setup flow.
Install or update the matching CLI so lazy new selects the latest sample
application template:
go install github.com/golazy/lazy@latest
lazy --version
Read Run With lazy for the development command and Full App for the generated application layout.
SEO metadata
Add lazyseo defaults in lazyapp.Config when your application should render
shared metadata in every layout:
lazyapp.Config{
SEO: []lazyseo.Option{
lazyseo.SiteName("GoLazy"),
lazyseo.Description("A GoLazy application."),
lazyseo.Language("en"),
},
}
Use {{seo_lang}} on the opening <html> tag and {{seo}} in the document
head. Controllers can set page-level values with helpers such as Title,
Description, Canonical, OpenGraph, TwitterCard, and JSONLD.
Read Template Data And Helpers for SEO helpers, metadata model interfaces, JSON-LD values, and SVG social-image variants.
Robots and sitemaps
lazyapp can now serve generated /robots.txt and /sitemap.xml files from
application configuration:
lazyapp.Config{
Sitemap: lazyapp.SitemapConfig{
BaseURL: "https://example.com",
URLs: []lazyapp.SitemapURL{
{Location: "/", ChangeFreq: "daily", Priority: 1},
},
},
}
No change is needed if you already serve your own metadata files. Keep the framework-generated files disabled or route your custom handlers before public assets.
Mailers
Use golazy.dev/lazymailer when your app should render email bodies from the
same view system as controllers. Application mailer types usually live under
app/mailers, with templates under app/views/<mailer>/<action>.text.tpl and
.html.tpl.
Read Mailers And Storage for registry setup, delivery services, and context wiring.
Storage and media packages
golazy.dev/lazystorage, golazy.dev/lazyfiles, and golazy.dev/lazymedia
are new low-level building blocks for apps that need object-style storage,
logical file records, fallback signed URLs, or generated media variants. They
are optional and are not required for normal embedded public assets.
Read Mailers And Storage for the storage, file catalog, URL, and generated-variant boundaries.
Sample app tooling
The sample application keeps project-specific mise tasks as standalone scripts
under .mise/tasks and includes Node.js in mise.toml. Existing apps can keep
their current task layout, but generated apps use the standalone task-script
shape.
Development reloads
lazy no longer injects the development reload client into Turbo Frame
requests or small HTML fragments without a document body. No application change
is needed.
Read Server Rendered Updates and lazy Dev Loop Integration when an app mixes full-page responses with fragment updates.
Versioned guide
Use the v0.1.10 upgrade guide when you need the
exact upgrade path from v0.1.9 to v0.1.10.