Pages
Every Wireweave wireframe starts with a page component - the root container for all content.
Basic Page
wireframe
page {
// content goes here
}Page Title
Give your page a title:
wireframe
page "Login" {
// content
}The title appears in the wireframe header and can be used for documentation.
Page Themes
Set the color theme for the entire page:
wireframe
page "Dashboard" theme:light {
// light theme (default)
}
page "Dashboard" theme:dark {
// dark theme
}Page Layout
Full Width
wireframe
page fullWidth {
// content spans full width
}Centered Content
wireframe
page center {
// content is centered
}Max Width
wireframe
page maxWidth:1200 {
// content limited to 1200px
}Common Page Structures
Landing Page
wireframe
page "Home" {
navbar {
logo "Brand"
nav { link "Features" link "Pricing" link "About" }
button "Sign Up" primary
}
section hero center {
heading "Welcome to Our Product"
text "The best solution for your needs"
button "Get Started" primary
}
section features {
grid columns:3 {
card { heading "Fast" text "Lightning quick performance" }
card { heading "Simple" text "Easy to use interface" }
card { heading "Secure" text "Enterprise-grade security" }
}
}
footer {
text "Copyright 2026"
}
}Dashboard
wireframe
page "Dashboard" {
navbar {
logo "App"
nav { link "Dashboard" active link "Settings" }
avatar "User"
}
row {
sidebar width:240 {
menu {
item "Overview"
item "Analytics"
item "Reports"
item "Settings"
}
}
main {
heading "Overview"
grid columns:4 {
card { text "Users" heading "1,234" }
card { text "Revenue" heading "$56,789" }
card { text "Orders" heading "890" }
card { text "Growth" heading "+12%" }
}
card {
heading "Recent Activity"
table { ... }
}
}
}
}Auth Pages
wireframe
page "Login" center {
card width:400 {
heading "Welcome Back"
text "Sign in to your account"
input "Email" email
input "Password" password
row justify:between {
checkbox "Remember me"
link "Forgot password?"
}
button "Sign In" primary fullWidth
divider "or"
button "Continue with Google" secondary fullWidth
}
}Settings Page
wireframe
page "Settings" {
navbar { ... }
row {
sidebar {
menu {
item "Profile"
item "Account"
item "Security"
item "Notifications"
}
}
main {
heading "Profile Settings"
card {
row gap:24 {
avatar "User" size:80
stack {
heading "John Doe" level:3
text "john@example.com" muted
button "Change Photo" secondary
}
}
}
card {
heading "Personal Information" level:3
form {
row gap:16 {
input "First Name" text
input "Last Name" text
}
input "Email" email
input "Bio" textarea
row justify:end {
button "Cancel" secondary
button "Save Changes" primary
}
}
}
}
}
}Multiple Pages
For multi-page wireframes, create separate files:
wireframes/
login.wire
dashboard.wire
settings.wire
profile.wireOr use sections to show flow:
wireframe
page "User Flow" {
section "Step 1: Login" {
card { ... }
}
section "Step 2: Dashboard" {
card { ... }
}
section "Step 3: Settings" {
card { ... }
}
}Next Steps
- Components - Available UI components
- Layouts - Layout options