glanceapp/glance · error
page %d has more than 3 columns
Error message
page %d has more than 3 columns
What it means
For any page not marked slim (default or wide), a maximum of 3 columns applies; this page has 4 or more. The three-column grid is the layout ceiling for normal-width pages.
Source
Thrown at internal/glance/config.go:513
}
if page.DesktopNavigationWidth != "" {
if page.DesktopNavigationWidth != "wide" && page.DesktopNavigationWidth != "slim" && page.DesktopNavigationWidth != "default" {
return fmt.Errorf("page %d: desktop-navigation-width can only be either wide or slim", i+1)
}
}
if len(page.Columns) == 0 {
return fmt.Errorf("page %d has no columns", i+1)
}
if page.Width == "slim" {
if len(page.Columns) > 2 {
return fmt.Errorf("page %d is slim and cannot have more than 2 columns", i+1)
}
} else {
if len(page.Columns) > 3 {
return fmt.Errorf("page %d has more than 3 columns", i+1)
}
}
columnSizesCount := make(map[string]int)
for j := range page.Columns {
column := &page.Columns[j]
if column.Size != "small" && column.Size != "full" {
return fmt.Errorf("column %d of page %d: size can only be either small or full", j+1, i+1)
}
columnSizesCount[page.Columns[j].Size]++
}
full := columnSizesCount["full"]
if full > 2 || full == 0 {View on GitHub (pinned to 91324e8de7)
Solutions
- Cut the column list to 3 or fewer by merging widgets into shared columns
- Reconsider layout: multiple small widgets can stack within one column
Example fix
# before
columns:
- size: full
- size: small
- size: small
- size: small
# after
columns:
- size: full
- size: small
- size: small Defensive patterns
Strategy: validation
Validate before calling
for i, p := range cfg.Pages {
if p.Width != "slim" && len(p.Columns) > 3 {
return fmt.Errorf("page %d: max 3 columns", i+1)
}
} Prevention
- Stack widgets vertically inside a column instead of adding a 4th column
- Automate config generation so the column cap is enforced by code
When it happens
Trigger: len(pages[N].columns) > 3 while page.Width != "slim" — i.e. a default/wide page with four or more column entries.
Common situations: Adding a fourth column for more widgets; generated configs that emit one column per widget group; misunderstanding that small columns don't bypass the cap.
Related errors
- page %d is slim and cannot have more than 2 columns
- column %d of page %d: size can only be either small or full
- page %d must have either 1 or 2 full width columns
- no pages configured
- the password for %s must be at least 6 characters
AI-assisted analysis of glanceapp/glance@91324e8de7 (2026-08-15).
Data as JSON: /api/errors/cb6d1a8e45b38bd9.
Report an issue: GitHub.