Firstlight UI Documentation
- Installation — Install Firstlight and make its native renderers available to a NativePHP application.
- Add your first component — Add a complete Segmented control with server-backed state.
- Validate fields — Show Laravel validation messages on Firstlight fields with
validate(),validateOnly(), and Form Requests. - Submit forms — Validate Firstlight fields, run a PHP action once, and publish success Feedback.
- Authorize actions — Hide, disable, or guard Firstlight actions with Laravel Gate and Policy decisions.
- Paginate lists — Bind Laravel paginators to List pull-to-refresh and end-reached.
- Destroy list items — Authorize Confirmation Dialog deletion of List rows by stable keys.
- Localize chrome — Override Firstlight-owned chrome labels and inherit application locale and timezone for Date and Time pickers.
- Theming — Configure the semantic NativePHP theme tokens inherited by Firstlight components.
- SuperNative components — Understand how an EDGE component becomes genuine platform UI.
- Server-authoritative state — Understand interaction, PHP acceptance, and native reconciliation.
- Firstlight and NativePHP Mobile UI — Understand how Firstlight complements Mobile UI with a focused form and control layer.
- Activity Indicator — Communicate indeterminate native activity with semantic sizes and one polite appearance announcement.
- Button — Look up labelled actions, semantic variants, loading and disabled states, accessibility, and adapter behaviour.
- Callout — Present persistent semantic messages with one optional labelled action.
- Transient Feedback — Publish queued app-level outcomes with semantic tones, optional actions, and automatic or held lifetime.
- Badge — Present compact display-only counts or short markers with semantic tones and contextual accessibility.
- Checkbox — Configure strict Boolean form and checklist state with server-authoritative proposals.
- Choice Group — Configure visible single-radio or multiple-checkbox choice rows with stable values.
- Media — Capture one image or document into Storage with optional crop and ValidatesFields.
- Alert Dialog — Present one native acknowledgement with a single action.
- Confirmation Dialog — Ask for one native confirmation with explicit cancellation and destructive action semantics.
- Modal — Present authored content in a full-screen native overlay with server-controlled dismissal.
- Bottom Sheet — Present authored content in a native bottom sheet with server-controlled dismissal.
- Date Picker — Choose strict nullable calendar dates with inclusive bounds and native confirmation.
- Time Picker — Choose strict nullable wall-clock times with localized native confirmation.
- Icon Button — Configure compact icon-only actions, platform icon overrides, semantic variants, states, and accessibility.
- List Item — Configure tappable application rows with leading identity, trailing affordances, disabled behaviour, and platform icon overrides.
- List — Compose finite vertical collections of List Item rows with optional grouped sections and refresh or pagination hooks.
- List Section — Group List Item rows with optional headers and footers inside a parent List.
- Pill Group — Configure compact single- or multiple-selection native options.
- Progress — Communicate determinate or indeterminate work with strict values and native accessibility.
- Segmented — Look up the Segmented control's complete public contract and platform evidence.
- Search Field — Configure native query entry, clear, submission, and synchronisation behaviour.
- Select — Choose one stable string or integer value with automatic searchable presentation for larger option sets.
- Slider — Choose one strictly validated numeric value from an evenly spaced native range.
- Stepper — Increment or decrement an exact bounded number while PHP remains authoritative.
- Status Label — Look up display-only status text, semantic tones, accessibility, and platform evidence.
- Text Field — Configure native single-line editing, input hints, icons, and synchronisation.
- Text Area — Configure native multiline editing, line bounds, validation, accessibility, and synchronisation.
- Switch — Configure native boolean settings, server-authoritative state, and accessibility.
- ValidatesFields — Look up the public
validate()contract, MessageBag binding, and current limitations. - Compatibility — Check the currently supported PHP, NativePHP, iOS, Android, and Swift versions.