# Custom Lightning components: LWC configuration and targets

*Platform App Builder Study Guide · User Interface · Last updated October 25, 2026 · https://www.certifyforce.com/study-guide/platform-app-builder/user-interface/custom-lightning-components-lwc-configuration-and-targets*

What a developer configures so a custom component reaches admins: the js-meta.xml file (isExposed, targets, targetConfig properties, objects and form factors), Aura interfaces and design resources, record context for child components, LWC quick actions, and Lightning web components inside Visualforce.

- Certification: Salesforce Platform App Builder
- Exam section: User Interface
- Study guide: https://www.certifyforce.com/study-guide/platform-app-builder

**Official exam objective:**

> Describe the programmatic customizations available for incorporating custom Lightning components in an application.

## What the exam expects

- Identify the `js-meta.xml` settings that make a Lightning web component appear in the Lightning App Builder, flow screens, tabs or quick actions, and limit it to objects and form factors.
- Expose component properties to admins with `@api` and `property` tags, including picklists and numeric ranges.
- Choose between LWC and Aura, and recognise the Aura equivalents (interfaces, design resources).
- Pass record context to nested components, and pick a screen or headless LWC quick action.
- Embed a Lightning web component in Visualforce and show Visualforce in Lightning Experience.

Key terms: **`js-meta.xml`** (the configuration file every LWC folder needs); **target** (a page or container type where the component can be used); **`targetConfig`** (per-target settings such as properties and objects); **design resource** (the Aura file that exposes attributes to builders); **Lightning Out** (the feature that embeds components in other pages, such as Visualforce).

## Key facts

| Fact | Detail | Source |
|---|---|---|
| Appear in builders | `isExposed` true and at least one target | [XML Configuration File Elements](https://developer.salesforce.com/docs/platform/lwc/guide/reference-configuration-tags.html) |
| Property types | Boolean, Integer, String; the config file wins on mismatch | [lightning__RecordPage Target](https://developer.salesforce.com/docs/platform/lwc/guide/targets-lightning-record-page.html) |
| `datasource` picklist | Type String only | [lightning__RecordPage Target](https://developer.salesforce.com/docs/platform/lwc/guide/targets-lightning-record-page.html) |
| `objects` tag | Only inside a `lightning__RecordPage` targetConfig; no external objects | [lightning__RecordPage Target](https://developer.salesforce.com/docs/platform/lwc/guide/targets-lightning-record-page.html) |
| Form factors in use | Can be increased, never decreased | [Form Factors](https://developer.salesforce.com/docs/platform/lwc/guide/use-config-form-factors.html) |
| Home page form factor | Large only | [Form Factors](https://developer.salesforce.com/docs/platform/lwc/guide/use-config-form-factors.html) |
| LWC quick actions | Lightning Experience record pages only; not the mobile app | [Quick Actions (LWC)](https://developer.salesforce.com/docs/platform/lwc/guide/use-quick-actions.html) |
| Headless action | `actionType` Action and a public `invoke()` | [lightning__RecordAction Target](https://developer.salesforce.com/docs/platform/lwc/guide/targets-lightning-record-action.html) |
| Nested `recordId` | Not set on children; pass it down | [Record Context](https://developer.salesforce.com/docs/platform/lwc/guide/use-record-context.html) |
| LWC in Visualforce | Users must allow third-party cookies | [Components in Visualforce](https://developer.salesforce.com/docs/platform/lwc/guide/use-visualforce.html) |

## Check yourself

- Why does an Aura component implementing `flexipage:availableForAllPageTypes` show up as a utility bar item?
- When does a Lightning web component receive `recordId` automatically?
- Which `property` attribute turns a String into a dropdown of fixed values?
- Why might an LWC embedded in Visualforce render blank for some users?

## Sources

- [Configure a Component for Lightning App Builder](https://developer.salesforce.com/docs/platform/lwc/guide/use-config-for-app-builder.html)
- [XML Configuration File Elements](https://developer.salesforce.com/docs/platform/lwc/guide/reference-configuration-tags.html)
- [lightning__RecordPage Target](https://developer.salesforce.com/docs/platform/lwc/guide/targets-lightning-record-page.html)
- [Configure Your Component for Different Form Factors](https://developer.salesforce.com/docs/platform/lwc/guide/use-config-form-factors.html)
- [Quick Actions (LWC)](https://developer.salesforce.com/docs/platform/lwc/guide/use-quick-actions.html)
- [lightning__RecordAction Target](https://developer.salesforce.com/docs/platform/lwc/guide/targets-lightning-record-action.html)
- [Create Headless Quick Actions](https://developer.salesforce.com/docs/platform/lwc/guide/use-quick-actions-headless.html)
- [Make a Component Aware of Its Record Context](https://developer.salesforce.com/docs/platform/lwc/guide/use-record-context.html)
- [Configure Components for Lightning Pages and the Lightning App Builder (Aura)](https://developer.salesforce.com/docs/platform/aura-platform/guide/components-config-for-app-builder.html)
- [How to Choose Lightning Web Components or Aura](https://developer.salesforce.com/docs/platform/lwc/guide/get-started-lwc-or-aura.html)
- [Use Components in Visualforce Pages](https://developer.salesforce.com/docs/platform/lwc/guide/use-visualforce.html)
- [How Page Layout Elements Display in Lightning Experience](https://help.salesforce.com/s/articleView?language=en_US&id=platform.layouts_in_lex.htm&type=5)
- [Adjust Your Existing Customizations](https://help.salesforce.com/s/articleView?id=xcloud.lex_migrate_customizations.htm&language=en_US&type=5)

## About the full unit

The "Core concepts", "Exam traps" and "Worked scenario" sections of this unit, its 9 linked practice questions, and unlimited timed mock exams are included with the Platform App Builder pack (USD $19): https://www.certifyforce.com/practice-exams
