Lightning App Builder Patterns
Based on Real Implementation Experience: These patterns reflect what works for maintainable Lightning pages in complex orgs.
Overview
Lightning App Builder is the primary tool for composing record pages, home pages, and app pages:
- Place standard components, custom LWCs, and Dynamic Forms sections.
- Control visibility by profile, record type, and filter criteria.
This document focuses on layout and composition patterns, not detailed LWC implementation.
Prerequisites
- Required Knowledge:
- Basic Lightning Experience navigation.
- Understanding of page layouts and record types.
- Recommended Reading:
When to Use Lightning App Builder
Use Lightning App Builder When
- You are composing record pages or home pages.
- You want admin-maintainable layouts with conditional visibility.
- You need to surface custom LWCs alongside standard components.
Avoid Over-Complex Pages When
- Pages have too many components and become slow.
- There is no clear information hierarchy for users.
Core Concepts
Templates and Regions
- Use three-column or header plus two-column templates for most record pages.
- Keep critical information in the top-left or highlight panel.
Dynamic Forms and Dynamic Related Lists
- Use Dynamic Forms for flexible field-level layout and visibility.
- Use Dynamic Related Lists to show different related records based on context (record type, status).
Patterns and Examples
Pattern 1: Persona-Based Pages
- Create different record pages per profile or app.
- Use page assignments to map personas to pages.
Pattern 2: Progressive Disclosure
- Show only the most important information by default.
- Use tabs and accordions for secondary details.
Edge Cases and Limitations
- Very complex pages with many components can impact performance, especially on older devices.
- Some managed packages provide components that cannot be customized easily; plan layout around them.
Related Patterns
Q&A
Q: When should I use a custom LWC instead of standard components?
A: Use a custom LWC when the requirement involves complex interactions, custom validation, or UI logic that cannot be achieved with standard components and layouts. Keep layouts in App Builder, and encapsulate complex behavior in LWCs.