From 12a2d34b5d07b7b7e4891b375e9a2a260187c492 Mon Sep 17 00:00:00 2001 From: MatthewHawkins Date: Tue, 12 May 2026 10:42:00 -0400 Subject: [PATCH] feat: adding descriptions for all files missing them for llms.txt --- docs/docs/advanced/asynchronous-updates.md | 1 + docs/docs/advanced/browser-console.md | 1 + docs/docs/advanced/browser-history.md | 1 + docs/docs/advanced/debouncing.md | 1 + docs/docs/advanced/error-handling.md | 1 + docs/docs/advanced/i18n-localization.md | 1 + docs/docs/advanced/interval.md | 1 + docs/docs/advanced/lifecycle-listeners.md | 1 + docs/docs/advanced/locale-management.md | 1 + docs/docs/advanced/mask-decorator.md | 1 + docs/docs/advanced/namespaces.md | 1 + docs/docs/advanced/object-string-tables.md | 1 + docs/docs/advanced/overview.md | 1 + .../docs/advanced/repository/delegating-repository.md | 1 + docs/docs/advanced/repository/events-and-updates.md | 1 + docs/docs/advanced/repository/overview.md | 1 + docs/docs/advanced/repository/querying-data.md | 1 + docs/docs/advanced/route-registry-provider.md | 1 + docs/docs/advanced/terminate-and-error-actions.md | 1 + docs/docs/advanced/view-transitions.md | 1 + docs/docs/advanced/web-storage.md | 1 + docs/docs/architecture/client-server.md | 1 + docs/docs/architecture/controls-components.md | 11 ++++++----- docs/docs/architecture/overview.md | 1 + docs/docs/building-ui/archetypes/blank.md | 1 + docs/docs/building-ui/archetypes/hello-world.md | 1 + docs/docs/building-ui/archetypes/overview.md | 1 + docs/docs/building-ui/archetypes/sidemenu.md | 1 + docs/docs/building-ui/archetypes/tabs.md | 1 + docs/docs/building-ui/component-fundamentals.md | 1 + docs/docs/building-ui/composite-components.md | 1 + docs/docs/building-ui/element-composite.md | 1 + docs/docs/building-ui/elements.md | 1 + docs/docs/building-ui/event-options.md | 1 + docs/docs/building-ui/events.md | 1 + docs/docs/building-ui/overview.md | 1 + docs/docs/building-ui/using-components.md | 1 + docs/docs/client-components/accordion-panel.md | 2 +- docs/docs/client-components/accordion.md | 2 +- docs/docs/client-components/alert-popover.md | 2 +- docs/docs/client-components/alert.md | 2 +- docs/docs/client-components/app-layout.md | 2 +- docs/docs/client-components/app-nav-item.md | 2 +- docs/docs/client-components/app-nav.md | 2 +- docs/docs/client-components/avatar.md | 2 +- docs/docs/client-components/backdrop.md | 2 +- docs/docs/client-components/badge.md | 2 +- docs/docs/client-components/button.md | 2 +- docs/docs/client-components/checkbox.md | 2 +- docs/docs/client-components/choicebox.md | 2 +- docs/docs/client-components/color-chooser.md | 2 +- docs/docs/client-components/columns-layout.md | 2 +- docs/docs/client-components/combobox.md | 2 +- docs/docs/client-components/datefield-spinner.md | 2 +- docs/docs/client-components/datefield.md | 2 +- docs/docs/client-components/dialog.md | 2 +- docs/docs/client-components/drawer.md | 2 +- docs/docs/client-components/dropdown.md | 2 +- docs/docs/client-components/field-spinner.md | 2 +- docs/docs/client-components/field.md | 2 +- docs/docs/client-components/file-chooser.md | 2 +- docs/docs/client-components/file-save.md | 2 +- docs/docs/client-components/font-chooser.md | 2 +- docs/docs/client-components/hotkey.md | 2 +- docs/docs/client-components/icon-button.md | 2 +- docs/docs/client-components/icon.md | 2 +- docs/docs/client-components/infinite-scroll.md | 2 +- docs/docs/client-components/listbox.md | 2 +- docs/docs/client-components/loading.md | 2 +- docs/docs/client-components/login.md | 2 +- docs/docs/client-components/markdown-viewer.md | 2 +- docs/docs/client-components/menu.md | 2 +- docs/docs/client-components/menubar.md | 2 +- docs/docs/client-components/menuitem.md | 2 +- docs/docs/client-components/navigator.md | 2 +- docs/docs/client-components/numberfield-spinner.md | 2 +- docs/docs/client-components/numberfield.md | 2 +- docs/docs/client-components/overview.md | 1 + docs/docs/client-components/popover.md | 2 +- docs/docs/client-components/popupmenu.md | 2 +- docs/docs/client-components/progressbar.md | 2 +- docs/docs/client-components/radio.md | 2 +- docs/docs/client-components/refresher.md | 2 +- docs/docs/client-components/separator.md | 2 +- docs/docs/client-components/slider.md | 2 +- docs/docs/client-components/spinner.md | 2 +- docs/docs/client-components/splitter.md | 2 +- docs/docs/client-components/tab-panel.md | 2 +- docs/docs/client-components/tab.md | 2 +- docs/docs/client-components/tabbed-pane.md | 2 +- docs/docs/client-components/table.md | 2 +- docs/docs/client-components/terminal.md | 2 +- docs/docs/client-components/textarea.md | 2 +- docs/docs/client-components/textfield-spinner.md | 2 +- docs/docs/client-components/textfield.md | 2 +- docs/docs/client-components/timefield-spinner.md | 2 +- docs/docs/client-components/timefield.md | 2 +- docs/docs/client-components/toast.md | 2 +- docs/docs/client-components/toolbar.md | 2 +- docs/docs/client-components/tree-node.md | 2 +- docs/docs/client-components/tree.md | 2 +- docs/docs/client-components/upload.md | 2 +- docs/docs/components/accordion.md | 1 + docs/docs/components/alert.md | 1 + docs/docs/components/app-layout.md | 1 + docs/docs/components/appnav.md | 1 + docs/docs/components/avatar.md | 1 + docs/docs/components/badge.md | 1 + docs/docs/components/busyindicator.md | 1 + docs/docs/components/button.md | 1 + docs/docs/components/checkbox.md | 1 + docs/docs/components/columns-layout.md | 1 + docs/docs/components/desktop-notification.md | 1 + docs/docs/components/dialog.md | 1 + docs/docs/components/drawer.md | 1 + docs/docs/components/fields/masked/datefield.md | 1 + docs/docs/components/fields/masked/numberfield.md | 1 + docs/docs/components/fields/masked/overview.md | 1 + docs/docs/components/fields/masked/textfield.md | 1 + docs/docs/components/fields/masked/timefield.md | 1 + docs/docs/components/fields/overview.md | 1 + docs/docs/components/flex-layout.md | 1 + docs/docs/components/google-charts.md | 1 + docs/docs/components/html-elements.md | 1 + docs/docs/components/icon.md | 1 + docs/docs/components/infinitescroll.md | 1 + docs/docs/components/lists/choice-box.md | 1 + docs/docs/components/lists/combo-box.md | 1 + docs/docs/components/lists/list-box.md | 1 + docs/docs/components/lists/overview.md | 1 + docs/docs/components/loading.md | 1 + docs/docs/components/login.md | 1 + docs/docs/components/markdownviewer.md | 1 + docs/docs/components/navigator.md | 1 + docs/docs/components/option-dialogs/confirm.md | 1 + docs/docs/components/option-dialogs/file-chooser.md | 1 + docs/docs/components/option-dialogs/file-save.md | 1 + docs/docs/components/option-dialogs/file-upload.md | 1 + docs/docs/components/option-dialogs/input.md | 1 + docs/docs/components/option-dialogs/message.md | 1 + docs/docs/components/option-dialogs/overview.md | 1 + docs/docs/components/overview.md | 1 + docs/docs/components/progressbar.md | 1 + docs/docs/components/radio-button.md | 1 + docs/docs/components/radio-group.md | 1 + docs/docs/components/refresher.md | 1 + docs/docs/components/slider.md | 1 + docs/docs/components/spinner.md | 1 + docs/docs/components/splitter.md | 1 + docs/docs/components/tabbed-pane.md | 1 + docs/docs/components/table/overview.md | 1 + docs/docs/components/table/table_column_groups.md | 1 + docs/docs/components/table/table_columns.md | 1 + docs/docs/components/table/table_dynamic_styling.md | 1 + docs/docs/components/table/table_edit_refresh.md | 1 + docs/docs/components/table/table_filtering.md | 1 + docs/docs/components/table/table_interactivity.md | 1 + docs/docs/components/table/table_large_data.md | 1 + docs/docs/components/table/table_rendering.md | 1 + docs/docs/components/table/table_selection.md | 1 + docs/docs/components/table/table_sorting.md | 1 + docs/docs/components/terminal.md | 1 + docs/docs/components/textarea.md | 1 + docs/docs/components/toast.md | 1 + docs/docs/components/toolbar.md | 1 + docs/docs/components/tree.md | 1 + .../configuration/bbj-installation/configuration.md | 1 + docs/docs/configuration/bbj-installation/docker.md | 1 + .../bbj-installation/github-codespaces.md | 1 + docs/docs/configuration/bbj-installation/local.md | 1 + docs/docs/configuration/bbj-installation/overview.md | 1 + docs/docs/configuration/debugging.md | 1 + docs/docs/configuration/deploy-reload/jrebel.md | 1 + .../configuration/deploy-reload/maven-jetty-plugin.md | 1 + docs/docs/configuration/deploy-reload/overview.md | 1 + .../configuration/deploy-reload/spring-devtools.md | 1 + .../configuration/deploying-additional-servlets.md | 1 + docs/docs/configuration/installable-apps.md | 1 + docs/docs/configuration/licensing-and-watermark.md | 1 + docs/docs/configuration/minifier-plugin.md | 1 + docs/docs/configuration/overview.md | 1 + docs/docs/configuration/properties.md | 1 + docs/docs/configuration/snapshots.md | 1 + docs/docs/data-binding/_validation.md | 1 + docs/docs/data-binding/automatic-binding.md | 1 + docs/docs/data-binding/bindings.md | 1 + docs/docs/data-binding/overview.md | 1 + docs/docs/data-binding/transformation.md | 1 + docs/docs/data-binding/validation/context-results.md | 1 + .../data-binding/validation/jakarta-validation.md | 1 + docs/docs/data-binding/validation/overview.md | 1 + docs/docs/data-binding/validation/reporters.md | 1 + docs/docs/data-binding/validation/triggers.md | 1 + docs/docs/data-binding/validation/validators.md | 1 + docs/docs/glossary.md | 1 + docs/docs/integrations/ai-tooling/agent-skills.md | 1 + docs/docs/integrations/ai-tooling/mcp.md | 1 + docs/docs/integrations/ai-tooling/overview.md | 1 + docs/docs/integrations/jbang.md | 1 + .../docs/integrations/kotlin-dsl/extending-the-dsl.md | 1 + docs/docs/integrations/kotlin-dsl/overview.md | 1 + docs/docs/integrations/kotlin-dsl/using-the-dsl.md | 1 + docs/docs/integrations/overview.md | 1 + docs/docs/integrations/spring/background-jobs.md | 1 + docs/docs/integrations/spring/overview.md | 1 + docs/docs/integrations/spring/routing.md | 1 + docs/docs/integrations/spring/scopes.md | 1 + docs/docs/integrations/spring/spring-boot.md | 1 + docs/docs/integrations/spring/spring-data-jpa.md | 1 + docs/docs/integrations/webswing/communication.md | 1 + docs/docs/integrations/webswing/overview.md | 1 + docs/docs/integrations/webswing/setup.md | 1 + docs/docs/integrations/webswing/tutorial.md | 1 + docs/docs/introduction/basics.md | 1 + docs/docs/introduction/getting-started.md | 1 + docs/docs/introduction/overview.md | 1 + docs/docs/introduction/prerequisites.md | 1 + docs/docs/introduction/tutorial/overview.md | 1 + docs/docs/managing-resources/assets-protocols.md | 1 + docs/docs/managing-resources/downloading-files.md | 1 + docs/docs/managing-resources/importing-assets.md | 1 + docs/docs/managing-resources/overview.md | 1 + docs/docs/routing/defining-routes.md | 1 + .../navigation-lifecycle/navigation-blocking.md | 1 + .../routing/navigation-lifecycle/navigation-events.md | 1 + docs/docs/routing/navigation-lifecycle/observers.md | 1 + docs/docs/routing/navigation-lifecycle/overview.md | 1 + docs/docs/routing/navigational-frame-titles.md | 1 + docs/docs/routing/overview.md | 1 + docs/docs/routing/query-parameters.md | 1 + docs/docs/routing/routable-apps.md | 1 + docs/docs/routing/route-hierarchy/nested-routes.md | 1 + docs/docs/routing/route-hierarchy/overview.md | 1 + docs/docs/routing/route-hierarchy/route-outlets.md | 1 + docs/docs/routing/route-hierarchy/route-types.md | 1 + docs/docs/routing/route-navigation.md | 1 + docs/docs/routing/route-patterns.md | 1 + docs/docs/routing/route-transitions.md | 1 + docs/docs/routing/routes-registration.md | 1 + docs/docs/routing/state-management.md | 1 + docs/docs/security/accessing-user.md | 1 + docs/docs/security/annotations.md | 1 + .../security/architecture/custom-implementation.md | 1 + docs/docs/security/architecture/evaluator-chain.md | 1 + .../architecture/foundational-architecture.md | 1 + docs/docs/security/architecture/navigation-flow.md | 1 + docs/docs/security/architecture/overview.md | 1 + docs/docs/security/custom-evaluators.md | 1 + docs/docs/security/getting-started.md | 1 + docs/docs/security/overview.md | 1 + docs/docs/security/spel-expressions.md | 1 + docs/docs/styling/borders.md | 1 + docs/docs/styling/colors.md | 1 + docs/docs/styling/css-variables.md | 1 + docs/docs/styling/overview.md | 1 + docs/docs/styling/shadow-parts.md | 1 + docs/docs/styling/shadows.md | 1 + docs/docs/styling/sizing-and-spacing.md | 1 + docs/docs/styling/state.md | 1 + docs/docs/styling/surfaces.md | 1 + docs/docs/styling/themes.md | 1 + docs/docs/styling/transitions-easing.md | 1 + docs/docs/styling/typography.md | 1 + docs/docs/testing/e2e/overview.md | 1 + docs/docs/testing/e2e/playwright.md | 1 + docs/docs/testing/e2e/selenium.md | 1 + docs/docs/testing/overview.md | 1 + docs/docs/testing/property-descriptor-tester.md | 1 + docs/docs/upgrading/automated-upgrades.md | 1 + docs/docs/upgrading/overview.md | 1 + 270 files changed, 275 insertions(+), 69 deletions(-) diff --git a/docs/docs/advanced/asynchronous-updates.md b/docs/docs/advanced/asynchronous-updates.md index 91d254700..f7a5d0489 100644 --- a/docs/docs/advanced/asynchronous-updates.md +++ b/docs/docs/advanced/asynchronous-updates.md @@ -1,6 +1,7 @@ --- sidebar_position: 55 title: Asynchronous Updates +description: Run background work off the UI thread and push updates back to webforJ components safely with Environment.runLater and PendingResult. --- diff --git a/docs/docs/advanced/browser-console.md b/docs/docs/advanced/browser-console.md index 3196e87d5..61a1f88a2 100644 --- a/docs/docs/advanced/browser-console.md +++ b/docs/docs/advanced/browser-console.md @@ -1,6 +1,7 @@ --- sidebar_position: 15 title: Browser Console +description: Log messages from Java to the browser console with typed levels and styled output using the BrowserConsole utility. --- diff --git a/docs/docs/advanced/browser-history.md b/docs/docs/advanced/browser-history.md index 76f5607f4..1a546eca0 100644 --- a/docs/docs/advanced/browser-history.md +++ b/docs/docs/advanced/browser-history.md @@ -1,6 +1,7 @@ --- title: Browser History sidebar_position: 30 +description: Navigate, push, and replace browser history entries from Java to control back, forward, and URL state without page reloads. --- diff --git a/docs/docs/advanced/debouncing.md b/docs/docs/advanced/debouncing.md index cbad23bee..8710616f3 100644 --- a/docs/docs/advanced/debouncing.md +++ b/docs/docs/advanced/debouncing.md @@ -2,6 +2,7 @@ sidebar_position: 21 title: Debouncing slug: debouncing +description: Delay actions until activity settles using the Debouncer class for search-as-you-type, autosave, and other rate-limited UI work. --- diff --git a/docs/docs/advanced/error-handling.md b/docs/docs/advanced/error-handling.md index 14cdbb00d..bca3f90ac 100644 --- a/docs/docs/advanced/error-handling.md +++ b/docs/docs/advanced/error-handling.md @@ -1,6 +1,7 @@ --- title: Error Handling sidebar_position: 5 +description: Register custom ErrorHandler implementations through the Java Service Provider Interface to respond to specific exceptions in webforJ apps. --- Error handling is a crucial aspect of developing reliable web apps. In webforJ, error handling is designed to be flexible and customizable, allowing developers to handle exceptions in a way that best suits their app's needs. diff --git a/docs/docs/advanced/i18n-localization.md b/docs/docs/advanced/i18n-localization.md index 6499f3782..801a8f080 100644 --- a/docs/docs/advanced/i18n-localization.md +++ b/docs/docs/advanced/i18n-localization.md @@ -1,6 +1,7 @@ --- sidebar_position: 12 title: Translation +description: Resolve localized strings from resource bundles or custom sources with the t() method, MessageFormat placeholders, and browser locale detection. --- # Translation diff --git a/docs/docs/advanced/interval.md b/docs/docs/advanced/interval.md index 0506e6a56..04dccb467 100644 --- a/docs/docs/advanced/interval.md +++ b/docs/docs/advanced/interval.md @@ -1,6 +1,7 @@ --- sidebar_position: 20 title: Interval +description: Schedule recurring events at a fixed delay using the Interval class to refresh data, rotate content, or detect inactivity efficiently. --- diff --git a/docs/docs/advanced/lifecycle-listeners.md b/docs/docs/advanced/lifecycle-listeners.md index 56fc16c4a..4810494e5 100644 --- a/docs/docs/advanced/lifecycle-listeners.md +++ b/docs/docs/advanced/lifecycle-listeners.md @@ -1,6 +1,7 @@ --- sidebar_position: 10 title: Lifecycle Listeners +description: Hook into webforJ app startup and shutdown phases with AppLifecycleListener to initialize services, modify config, or clean up resources. --- diff --git a/docs/docs/advanced/locale-management.md b/docs/docs/advanced/locale-management.md index 24961a837..587f72ac5 100644 --- a/docs/docs/advanced/locale-management.md +++ b/docs/docs/advanced/locale-management.md @@ -1,6 +1,7 @@ --- sidebar_position: 11 title: Locale Management +description: Configure the app locale, auto-detect from the browser, and react to runtime language switches through the LocaleObserver interface. --- # Locale management diff --git a/docs/docs/advanced/mask-decorator.md b/docs/docs/advanced/mask-decorator.md index c6b27695e..f1e67d0cd 100644 --- a/docs/docs/advanced/mask-decorator.md +++ b/docs/docs/advanced/mask-decorator.md @@ -2,6 +2,7 @@ sidebar_position: 16 title: MaskDecorator sidebar_class_name: new-content +description: Format and parse strings, numbers, dates, and times outside input fields using the same mask syntax as webforJ masked fields. --- diff --git a/docs/docs/advanced/namespaces.md b/docs/docs/advanced/namespaces.md index 4f5d5fe5c..42f0172aa 100644 --- a/docs/docs/advanced/namespaces.md +++ b/docs/docs/advanced/namespaces.md @@ -1,6 +1,7 @@ --- title: Namespaces sidebar_position: 40 +description: Share thread-safe key-value state across sessions, thread groups, or the entire JVM using Private, Group, and Global namespaces. --- diff --git a/docs/docs/advanced/object-string-tables.md b/docs/docs/advanced/object-string-tables.md index d58e95be9..8508b320d 100644 --- a/docs/docs/advanced/object-string-tables.md +++ b/docs/docs/advanced/object-string-tables.md @@ -1,6 +1,7 @@ --- title: Object and String Tables sidebar_position: 45 +description: Store shared Java objects and string values app-wide or per HTTP session with ObjectTable, SessionObjectTable, and StringTable. --- The `ObjectTable`, `SessionObjectTable`, and `StringTable` provide static access to shared data in a webforJ environment. All are accessible from anywhere in your app and serve different purposes: diff --git a/docs/docs/advanced/overview.md b/docs/docs/advanced/overview.md index 1fdb459c3..e7eef64c8 100644 --- a/docs/docs/advanced/overview.md +++ b/docs/docs/advanced/overview.md @@ -3,6 +3,7 @@ title: Advanced Topics hide_table_of_contents: true sidebar_class_name: has-new-content hide_giscus_comments: true +description: Browse webforJ advanced features including async updates, repositories, namespaces, lifecycle listeners, view transitions, and web storage. --- diff --git a/docs/docs/advanced/repository/delegating-repository.md b/docs/docs/advanced/repository/delegating-repository.md index 8466ec5e5..a1e50653e 100644 --- a/docs/docs/advanced/repository/delegating-repository.md +++ b/docs/docs/advanced/repository/delegating-repository.md @@ -1,6 +1,7 @@ --- title: Custom data sources sidebar_position: 4 +description: Wire REST APIs, databases, or external services to webforJ components by supplying find, count, and key-lookup functions to DelegatingRepository. --- diff --git a/docs/docs/advanced/repository/events-and-updates.md b/docs/docs/advanced/repository/events-and-updates.md index 8e5dd3165..efea9d967 100644 --- a/docs/docs/advanced/repository/events-and-updates.md +++ b/docs/docs/advanced/repository/events-and-updates.md @@ -1,6 +1,7 @@ --- title: Events and updates sidebar_position: 5 +description: React to repository commits with RepositoryCommitEvent listeners, choose single-entity or bulk updates, and manage listener registrations. --- diff --git a/docs/docs/advanced/repository/overview.md b/docs/docs/advanced/repository/overview.md index 0a82987ab..484b29646 100644 --- a/docs/docs/advanced/repository/overview.md +++ b/docs/docs/advanced/repository/overview.md @@ -1,6 +1,7 @@ --- title: Repository sidebar_position: 1 +description: Bridge data collections to UI components with CollectionRepository, commit changes for automatic sync, and apply base filters. --- diff --git a/docs/docs/advanced/repository/querying-data.md b/docs/docs/advanced/repository/querying-data.md index 03eea9412..615eabfec 100644 --- a/docs/docs/advanced/repository/querying-data.md +++ b/docs/docs/advanced/repository/querying-data.md @@ -1,6 +1,7 @@ --- title: Querying data sidebar_position: 3 +description: Build typed filters, sorting, and pagination with QueryableRepository and RepositoryCriteria for in-memory collections or external sources. --- diff --git a/docs/docs/advanced/route-registry-provider.md b/docs/docs/advanced/route-registry-provider.md index 7392c011b..09fdbdbde 100644 --- a/docs/docs/advanced/route-registry-provider.md +++ b/docs/docs/advanced/route-registry-provider.md @@ -1,6 +1,7 @@ --- title: Route Registry Provider sidebar_position: 60 +description: Override default route scanning with a custom SPI provider to integrate Spring, CDI, OSGi, or GraalVM classloaders with webforJ routing. --- diff --git a/docs/docs/advanced/terminate-and-error-actions.md b/docs/docs/advanced/terminate-and-error-actions.md index 9f1588679..664e37a7b 100644 --- a/docs/docs/advanced/terminate-and-error-actions.md +++ b/docs/docs/advanced/terminate-and-error-actions.md @@ -1,6 +1,7 @@ --- title: Terminate and Error Actions sidebar_position: 25 +description: Customize app shutdown and error behavior with AppCloseAction implementations like MessageAction, RedirectAction, and NoneAction. --- # Terminate and Error Actions diff --git a/docs/docs/advanced/view-transitions.md b/docs/docs/advanced/view-transitions.md index 9a220d60b..895511b7f 100644 --- a/docs/docs/advanced/view-transitions.md +++ b/docs/docs/advanced/view-transitions.md @@ -1,6 +1,7 @@ --- sidebar_position: 40 title: View Transitions +description: Animate DOM changes with the browser View Transition API, applying fade, slide, zoom, and shared morph effects between component states. --- diff --git a/docs/docs/advanced/web-storage.md b/docs/docs/advanced/web-storage.md index 3fabf279b..0d7a2f1e7 100644 --- a/docs/docs/advanced/web-storage.md +++ b/docs/docs/advanced/web-storage.md @@ -1,6 +1,7 @@ --- sidebar_position: 35 title: Web Storage +description: Persist client-side data through CookieStorage, SessionStorage, and LocalStorage to retain preferences and state across requests and reloads. --- # Web Storage diff --git a/docs/docs/architecture/client-server.md b/docs/docs/architecture/client-server.md index 812ee248b..95ed09331 100644 --- a/docs/docs/architecture/client-server.md +++ b/docs/docs/architecture/client-server.md @@ -1,6 +1,7 @@ --- sidebar_position: 5 title: Client/Server Interaction +description: Understand how webforJ batches server-to-client calls, avoids costly round trips, and uses caching and on-demand chunks for performance. --- The following section discussed various performance qualities and best practices for webforJ, as well as implementation details for the framework. diff --git a/docs/docs/architecture/controls-components.md b/docs/docs/architecture/controls-components.md index b6f130436..9c1be4edd 100644 --- a/docs/docs/architecture/controls-components.md +++ b/docs/docs/architecture/controls-components.md @@ -1,22 +1,23 @@ --- sidebar_position: 10 title: BBj Controls and webforJ Components +description: See how webforJ components map one-to-one to BBj controls through the DwcComponent base class and why composition replaces inheritance. --- The webforJ framework is designed to provide a Java API around the BBj language's DWC, offers a robust architecture for building and managing components. -## Mapping BBj controls to webforJ components {#mapping-bbj-controls-to-webforj-components} +## Mapping BBj controls to webforJ components {#mapping-bbj-controls-to-webforj-components} One of the fundamental principles of webforJ is the binding of BBj controls with webforJ components. In this architecture, every webforJ component shipped with the product has a one-to-one mapping with an underlying BBj control. This mapping ensures that Java components mirror the behavior and properties of their BBj counterparts seamlessly. This close correspondence between webforJ components and BBj controls simplifies development and allows Java developers to work with familiar concepts when building web-based applications without the need to write any BBj code. -## The `DwcComponent` base class {#the-dwccomponent-base-class} +## The `DwcComponent` base class {#the-dwccomponent-base-class} At the heart of webforJ's component architecture lies the DWCComponent base class. All webforJ components inherit from this class. This inheritance grants each webforJ component access to its underlying BBj control, providing a direct link between the Java component and the BBj control it represents. However, it's important to note that developers are restricted from extending the DWCComponent class further. Attempting to do so will result in a runtime exception that disallows such extensions. This restriction is in place to maintain the integrity of the underlying BBj control and ensure that developers do not inadvertently manipulate it in ways that could lead to unintended consequences. -### Final classes and extension restrictions {#final-classes-and-extension-restrictions} +### Final classes and extension restrictions {#final-classes-and-extension-restrictions} In webforJ, most component classes, with the exception of the built-in HTML Elements and any classes extending these, are declared as `final`. This means that they are not available for extension or subclassing. This design choice is deliberate and serves multiple purposes: 1. **Control Over Underlying BBj Control**: As mentioned earlier, extending webforJ component classes would grant developers control over the underlying BBj control. To maintain the consistency and predictability of component behavior, this level of control is restricted. @@ -28,11 +29,11 @@ In webforJ, most component classes, with the exception of the built-in HTML Elem -## Composite components: extending through composition {#composite-components-extending-through-composition} +## Composite components: extending through composition {#composite-components-extending-through-composition} In webforJ framework, the concept of composite components plays a pivotal role in extending component functionality. Composite components are Java classes that are not restricted by the final keyword, allowing developers to create new components that extends the behavior of a single component, or combines multiple components into one, by composing existing components. Classes which facilitate this behavior have been created for developer use. See the `Composite` and `ElementComposite` sections to see how to properly create composite components. This approach encourages a more modular and flexible development style, enabling developers to build tailored components that meet specific requirements. \ No newline at end of file diff --git a/docs/docs/architecture/overview.md b/docs/docs/architecture/overview.md index 1603d4e9f..bc12cea2c 100644 --- a/docs/docs/architecture/overview.md +++ b/docs/docs/architecture/overview.md @@ -2,6 +2,7 @@ title: Architecture hide_table_of_contents: true hide_giscus_comments: true +description: Explore the webforJ architecture, covering client and server interaction, BBj control mapping, and the DwcComponent foundation. --- diff --git a/docs/docs/building-ui/archetypes/blank.md b/docs/docs/building-ui/archetypes/blank.md index d451ea890..230c70745 100644 --- a/docs/docs/building-ui/archetypes/blank.md +++ b/docs/docs/building-ui/archetypes/blank.md @@ -1,5 +1,6 @@ --- title: Blank +description: Scaffold a minimal webforJ project from the blank archetype to build your app structure from scratch with no predefined components. sidebar_position: 1 hide_table_of_contents: true --- diff --git a/docs/docs/building-ui/archetypes/hello-world.md b/docs/docs/building-ui/archetypes/hello-world.md index ee12733b4..0068a5a2c 100644 --- a/docs/docs/building-ui/archetypes/hello-world.md +++ b/docs/docs/building-ui/archetypes/hello-world.md @@ -1,5 +1,6 @@ --- title: HelloWorld +description: Generate a minimal greeting app from the HelloWorld archetype to see how a basic webforJ UI, layout, and event handler fit together. sidebar_position: 4 hide_table_of_contents: true --- diff --git a/docs/docs/building-ui/archetypes/overview.md b/docs/docs/building-ui/archetypes/overview.md index 7b7933fcb..3e8ccb6da 100644 --- a/docs/docs/building-ui/archetypes/overview.md +++ b/docs/docs/building-ui/archetypes/overview.md @@ -1,6 +1,7 @@ --- sidebar_position: 0 title: Archetypes +description: Pick a starter archetype such as SideMenu, Tabs, Blank, or HelloWorld to scaffold a webforJ project with prebuilt structure and dependencies. hide_table_of_contents: true hide_giscus_comments: true --- diff --git a/docs/docs/building-ui/archetypes/sidemenu.md b/docs/docs/building-ui/archetypes/sidemenu.md index 7efbb1397..0bd102d1e 100644 --- a/docs/docs/building-ui/archetypes/sidemenu.md +++ b/docs/docs/building-ui/archetypes/sidemenu.md @@ -1,5 +1,6 @@ --- title: SideMenu +description: Scaffold a webforJ multi-page app from the SideMenu archetype with a sidebar navigation layout and routed content area. sidebar_position: 3 hide_table_of_contents: true --- diff --git a/docs/docs/building-ui/archetypes/tabs.md b/docs/docs/building-ui/archetypes/tabs.md index 556442000..dade97b6a 100644 --- a/docs/docs/building-ui/archetypes/tabs.md +++ b/docs/docs/building-ui/archetypes/tabs.md @@ -1,5 +1,6 @@ --- title: Tabs +description: Scaffold a webforJ project from the Tabs archetype to organize multiple views or sections behind a clean tabbed interface. sidebar_position: 2 hide_table_of_contents: true --- diff --git a/docs/docs/building-ui/component-fundamentals.md b/docs/docs/building-ui/component-fundamentals.md index a4af4889b..f35bf9190 100644 --- a/docs/docs/building-ui/component-fundamentals.md +++ b/docs/docs/building-ui/component-fundamentals.md @@ -1,6 +1,7 @@ --- sidebar_position: 2 title: Understanding Components +description: Understand the webforJ component hierarchy, composition over inheritance, lifecycle stages, and concern interfaces before building custom components. --- diff --git a/docs/docs/building-ui/composite-components.md b/docs/docs/building-ui/composite-components.md index 144e9c406..35f66e1fc 100644 --- a/docs/docs/building-ui/composite-components.md +++ b/docs/docs/building-ui/composite-components.md @@ -1,6 +1,7 @@ --- sidebar_position: 4 title: Composite Components +description: Combine webforJ components into reusable units by extending Composite, configuring the bound component, and overriding initBoundComponent. --- diff --git a/docs/docs/building-ui/element-composite.md b/docs/docs/building-ui/element-composite.md index df8e81d9a..07d77c042 100644 --- a/docs/docs/building-ui/element-composite.md +++ b/docs/docs/building-ui/element-composite.md @@ -1,6 +1,7 @@ --- sidebar_position: 6 title: Element Composite +description: Wrap third-party web components in Java with ElementComposite using PropertyDescriptor, attribute mapping, and typed event listeners. sidebar_class_name: has-new-content slug: element_composite --- diff --git a/docs/docs/building-ui/elements.md b/docs/docs/building-ui/elements.md index 52464a6c3..b11a8e0a4 100644 --- a/docs/docs/building-ui/elements.md +++ b/docs/docs/building-ui/elements.md @@ -1,6 +1,7 @@ --- sidebar_position: 5 title: Elements +description: Integrate raw HTML tags and custom web components in webforJ using the Element class to add children, set content, and invoke JavaScript. slug: element --- diff --git a/docs/docs/building-ui/event-options.md b/docs/docs/building-ui/event-options.md index 8b6a88359..5c5f5182b 100644 --- a/docs/docs/building-ui/event-options.md +++ b/docs/docs/building-ui/event-options.md @@ -1,6 +1,7 @@ --- sidebar_position: 7 title: Event Options +description: Configure element events with ElementEventOptions to attach payload data, filter, debounce, throttle, and run client-side code before firing. --- import JavadocLink from '@site/src/components/DocsTools/JavadocLink'; diff --git a/docs/docs/building-ui/events.md b/docs/docs/building-ui/events.md index b6628c3ef..e3c2baf21 100644 --- a/docs/docs/building-ui/events.md +++ b/docs/docs/building-ui/events.md @@ -1,6 +1,7 @@ --- sidebar_position: 10 title: Events +description: Attach event listeners to webforJ components with lambdas, anonymous classes, or method references and reuse the event payload server-side. slug: events draft: false --- diff --git a/docs/docs/building-ui/overview.md b/docs/docs/building-ui/overview.md index 4d8abb024..6dd0eddc3 100644 --- a/docs/docs/building-ui/overview.md +++ b/docs/docs/building-ui/overview.md @@ -1,5 +1,6 @@ --- title: Building UI +description: Build webforJ user interfaces in Java by combining components, layouts, events, and composites or wrapping web components with elements. hide_table_of_contents: true hide_giscus_comments: true --- diff --git a/docs/docs/building-ui/using-components.md b/docs/docs/building-ui/using-components.md index 34c42c9f2..e477291bf 100644 --- a/docs/docs/building-ui/using-components.md +++ b/docs/docs/building-ui/using-components.md @@ -1,6 +1,7 @@ --- sidebar_position: 3 title: Using Components +description: Configure webforJ components in Java by setting text, attributes, IDs, inline styles, and CSS classes that drive appearance and behavior. sidebar_class_name: new-content --- diff --git a/docs/docs/client-components/accordion-panel.md b/docs/docs/client-components/accordion-panel.md index 59c2e3742..5792662bd 100644 --- a/docs/docs/client-components/accordion-panel.md +++ b/docs/docs/client-components/accordion-panel.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: accordion-panel -description: A user guide article for the dwc-accordion-panel +description: Style the dwc-accordion-panel client component using CSS variables, shadow parts, and slots for header, icon, and content customization. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/accordion.md b/docs/docs/client-components/accordion.md index 6f97f791d..a2b177854 100644 --- a/docs/docs/client-components/accordion.md +++ b/docs/docs/client-components/accordion.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: accordion -description: A user guide article for the dwc-accordion +description: Customize the dwc-accordion client component through CSS variables, shadow parts, and slots to theme expand and collapse panels. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/alert-popover.md b/docs/docs/client-components/alert-popover.md index 67cf97020..279817b10 100644 --- a/docs/docs/client-components/alert-popover.md +++ b/docs/docs/client-components/alert-popover.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: alert-popover -description: A user guide article for the alert-popover +description: Style the dwc-alert-popover client component with CSS variables and shadow parts to theme positioning, surface, and animation. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/alert.md b/docs/docs/client-components/alert.md index c06f99f4b..c88b9c039 100644 --- a/docs/docs/client-components/alert.md +++ b/docs/docs/client-components/alert.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: alert -description: A user guide article for the alert +description: Customize the dwc-alert client component using CSS variables, shadow parts, and slots to theme banner color, icon, and content. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/app-layout.md b/docs/docs/client-components/app-layout.md index ffa41f6c4..e7f0dfb77 100644 --- a/docs/docs/client-components/app-layout.md +++ b/docs/docs/client-components/app-layout.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: app-layout -description: A user guide article for the app-layout +description: Style the dwc-app-layout client component via CSS variables and shadow parts to theme header, drawer, footer, and content regions. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/app-nav-item.md b/docs/docs/client-components/app-nav-item.md index 354fd2af5..708ed2d0a 100644 --- a/docs/docs/client-components/app-nav-item.md +++ b/docs/docs/client-components/app-nav-item.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: app-nav-item -description: A user guide article for the app-nav-item +description: Customize the dwc-app-nav-item client component with CSS variables and shadow parts to style nav links, icons, and active states. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/app-nav.md b/docs/docs/client-components/app-nav.md index fb02fbc0c..03685e945 100644 --- a/docs/docs/client-components/app-nav.md +++ b/docs/docs/client-components/app-nav.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: app-nav -description: A user guide article for the app-nav +description: Style the dwc-app-nav client component through CSS variables and shadow parts to theme navigation containers, spacing, and surfaces. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/avatar.md b/docs/docs/client-components/avatar.md index 6b1534f85..a67e7677c 100644 --- a/docs/docs/client-components/avatar.md +++ b/docs/docs/client-components/avatar.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: avatar -description: A user guide article for the avatar +description: Customize the dwc-avatar client component using CSS variables and shadow parts to style size, background, initials, and image rendering. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/backdrop.md b/docs/docs/client-components/backdrop.md index cdd57a0de..6e4b46fd9 100644 --- a/docs/docs/client-components/backdrop.md +++ b/docs/docs/client-components/backdrop.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: backdrop -description: A user guide article for the backdrop +description: Style the dwc-backdrop client component with CSS variables to control overlay color, opacity, blur, and transition timing. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/badge.md b/docs/docs/client-components/badge.md index a47b2c43d..b82704b8a 100644 --- a/docs/docs/client-components/badge.md +++ b/docs/docs/client-components/badge.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: badge -description: A user guide article for the badge +description: Customize the dwc-badge client component via CSS variables and shadow parts to theme color, size, radius, and label placement. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/button.md b/docs/docs/client-components/button.md index a6c9aeee8..6caf8bd70 100644 --- a/docs/docs/client-components/button.md +++ b/docs/docs/client-components/button.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: button -description: A user guide article for the button +description: Style the dwc-button client component with CSS variables, shadow parts, and slots for color, padding, expanse, and icon placement. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/checkbox.md b/docs/docs/client-components/checkbox.md index b6cee2761..ca4e8c003 100644 --- a/docs/docs/client-components/checkbox.md +++ b/docs/docs/client-components/checkbox.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: checkbox -description: A user guide article for the checkbox +description: Customize the dwc-checkbox client component using CSS variables and shadow parts to theme box, check icon, label, and focus states. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/choicebox.md b/docs/docs/client-components/choicebox.md index 968d2f450..c45672870 100644 --- a/docs/docs/client-components/choicebox.md +++ b/docs/docs/client-components/choicebox.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: choicebox -description: A user guide article for the choicebox +description: Style the dwc-choicebox client component with CSS variables and shadow parts to theme the trigger, dropdown panel, and option list. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/color-chooser.md b/docs/docs/client-components/color-chooser.md index c7853e9c6..61eb4097a 100644 --- a/docs/docs/client-components/color-chooser.md +++ b/docs/docs/client-components/color-chooser.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: color-chooser -description: A user guide article for the color-chooser +description: Customize the dwc-color-chooser client component using CSS variables and shadow parts to theme swatches, sliders, and preview surfaces. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/columns-layout.md b/docs/docs/client-components/columns-layout.md index 2c00df8cf..3af702267 100644 --- a/docs/docs/client-components/columns-layout.md +++ b/docs/docs/client-components/columns-layout.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: columns-layout -description: A user guide article for the columns-layout +description: Style the dwc-columns-layout client component using CSS variables to control column gaps, breakpoints, and responsive spacing. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/combobox.md b/docs/docs/client-components/combobox.md index c50fe8d93..b4f0de186 100644 --- a/docs/docs/client-components/combobox.md +++ b/docs/docs/client-components/combobox.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: combobox -description: A user guide article for the combobox +description: Customize the dwc-combobox client component via CSS variables and shadow parts to theme the input, dropdown, and option items. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/datefield-spinner.md b/docs/docs/client-components/datefield-spinner.md index f6ba74cd8..cc880da45 100644 --- a/docs/docs/client-components/datefield-spinner.md +++ b/docs/docs/client-components/datefield-spinner.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: datefield-spinner -description: A user guide article for the datefield-spinner +description: Style the dwc-datefield-spinner client component with CSS variables and shadow parts to theme date input, spinner buttons, and surface. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/datefield.md b/docs/docs/client-components/datefield.md index b49d8c5cb..22970db85 100644 --- a/docs/docs/client-components/datefield.md +++ b/docs/docs/client-components/datefield.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: datefield -description: A user guide article for the datefield +description: Customize the dwc-datefield client component using CSS variables and shadow parts to theme the date input, calendar trigger, and label. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/dialog.md b/docs/docs/client-components/dialog.md index 1f24689ea..7a740c15e 100644 --- a/docs/docs/client-components/dialog.md +++ b/docs/docs/client-components/dialog.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: dialog -description: A user guide article for the dialog +description: Style the dwc-dialog client component via CSS variables, shadow parts, and slots to theme the modal surface, header, body, and footer. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/drawer.md b/docs/docs/client-components/drawer.md index 33994fdbe..80455b42e 100644 --- a/docs/docs/client-components/drawer.md +++ b/docs/docs/client-components/drawer.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: drawer -description: A user guide article for the drawer +description: Customize the dwc-drawer client component with CSS variables and shadow parts to theme placement, size, surface, and backdrop overlay. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/dropdown.md b/docs/docs/client-components/dropdown.md index 5893a2287..8bf6e0316 100644 --- a/docs/docs/client-components/dropdown.md +++ b/docs/docs/client-components/dropdown.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: dropdown -description: A user guide article for the dropdown +description: Style the dwc-dropdown client component using CSS variables and shadow parts to theme trigger, panel surface, and positioning. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/field-spinner.md b/docs/docs/client-components/field-spinner.md index d5d8cd101..220cfa865 100644 --- a/docs/docs/client-components/field-spinner.md +++ b/docs/docs/client-components/field-spinner.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: field-spinner -description: A user guide article for the field-spinner +description: Customize the dwc-field-spinner client component via CSS variables and shadow parts to theme the input field and increment controls. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/field.md b/docs/docs/client-components/field.md index 23a622aba..549eeea2e 100644 --- a/docs/docs/client-components/field.md +++ b/docs/docs/client-components/field.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: field -description: A user guide article for the field +description: Style the dwc-field client component using CSS variables, shadow parts, and slots to theme inputs, labels, helper text, and prefixes. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/file-chooser.md b/docs/docs/client-components/file-chooser.md index 9a0e38327..3cf612528 100644 --- a/docs/docs/client-components/file-chooser.md +++ b/docs/docs/client-components/file-chooser.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: file-chooser -description: A user guide article for the file-chooser +description: Customize the dwc-file-chooser client component with CSS variables and shadow parts to theme the picker dialog, breadcrumbs, and list. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/file-save.md b/docs/docs/client-components/file-save.md index 3076306fe..2d63ed0c5 100644 --- a/docs/docs/client-components/file-save.md +++ b/docs/docs/client-components/file-save.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: file-save -description: A user guide article for the file-save +description: Style the dwc-file-save client component using CSS variables and shadow parts to theme the save dialog, path input, and action buttons. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/font-chooser.md b/docs/docs/client-components/font-chooser.md index 5fd4ab854..af1da2fc0 100644 --- a/docs/docs/client-components/font-chooser.md +++ b/docs/docs/client-components/font-chooser.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: font-chooser -description: A user guide article for the font-chooser +description: Customize the dwc-font-chooser client component via CSS variables and shadow parts to theme the font list, preview area, and controls. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/hotkey.md b/docs/docs/client-components/hotkey.md index 4baf25c8b..db336307f 100644 --- a/docs/docs/client-components/hotkey.md +++ b/docs/docs/client-components/hotkey.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: hotkey -description: A user guide article for the hotkey +description: Style the dwc-hotkey client component with CSS variables and shadow parts to theme key cap surfaces, separators, and typography. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/icon-button.md b/docs/docs/client-components/icon-button.md index f59f37f46..de62f4c09 100644 --- a/docs/docs/client-components/icon-button.md +++ b/docs/docs/client-components/icon-button.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: icon-button -description: A user guide article for the icon-button +description: Customize the dwc-icon-button client component using CSS variables and shadow parts to theme color, size, hover, and focus states. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/icon.md b/docs/docs/client-components/icon.md index 2965a0d29..e07c25b8b 100644 --- a/docs/docs/client-components/icon.md +++ b/docs/docs/client-components/icon.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: icon -description: A user guide article for the icon +description: Style the dwc-icon client component using CSS variables and shadow parts to theme size, color, and stroke for embedded icons. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/infinite-scroll.md b/docs/docs/client-components/infinite-scroll.md index 7fce68c27..5cd7b2b85 100644 --- a/docs/docs/client-components/infinite-scroll.md +++ b/docs/docs/client-components/infinite-scroll.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: infinite-scroll -description: A user guide article for the infinite-scroll +description: Customize the dwc-infinite-scroll client component via CSS variables and shadow parts to theme the loader, sentinel, and scroll container. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/listbox.md b/docs/docs/client-components/listbox.md index 2d90e42ed..85f735bda 100644 --- a/docs/docs/client-components/listbox.md +++ b/docs/docs/client-components/listbox.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: listbox -description: A user guide article for the listbox +description: Style the dwc-listbox client component using CSS variables and shadow parts to theme the list surface, items, selection, and scrollbars. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/loading.md b/docs/docs/client-components/loading.md index 5d268b8ff..dde7f22c1 100644 --- a/docs/docs/client-components/loading.md +++ b/docs/docs/client-components/loading.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: loading -description: A user guide article for the loading +description: Customize the dwc-loading client component with CSS variables and shadow parts to theme the spinner, backdrop, and loading message. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/login.md b/docs/docs/client-components/login.md index a1cdc2be4..0f55a6392 100644 --- a/docs/docs/client-components/login.md +++ b/docs/docs/client-components/login.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: login -description: A user guide article for the login +description: Style the dwc-login client component using CSS variables, shadow parts, and slots to theme the form surface, fields, and action buttons. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/markdown-viewer.md b/docs/docs/client-components/markdown-viewer.md index 876c7fde2..0c97886d4 100644 --- a/docs/docs/client-components/markdown-viewer.md +++ b/docs/docs/client-components/markdown-viewer.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: markdown-viewer -description: A user guide article for the markdown-viewer +description: Style the dwc-markdown-viewer component with CSS variables and shadow parts to theme rendered Markdown content, typography, and code blocks. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/menu.md b/docs/docs/client-components/menu.md index 9edecac7e..767b7383b 100644 --- a/docs/docs/client-components/menu.md +++ b/docs/docs/client-components/menu.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: menu -description: A user guide article for the menu +description: Customize the dwc-menu component appearance through CSS variables and shadow parts for surface, spacing, and item styling. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/menubar.md b/docs/docs/client-components/menubar.md index 8d1854621..0cfce077c 100644 --- a/docs/docs/client-components/menubar.md +++ b/docs/docs/client-components/menubar.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: menubar -description: A user guide article for the menubar +description: Theme the dwc-menubar component with CSS variables and shadow parts that control background, item spacing, and hover states. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/menuitem.md b/docs/docs/client-components/menuitem.md index 39489748b..fbbb40ad2 100644 --- a/docs/docs/client-components/menuitem.md +++ b/docs/docs/client-components/menuitem.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: menuitem -description: A user guide article for the menuitem +description: Style the dwc-menuitem component via CSS variables and shadow parts for label, icon, indicator, and selection states. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/navigator.md b/docs/docs/client-components/navigator.md index c308f840f..80e7b1bcb 100644 --- a/docs/docs/client-components/navigator.md +++ b/docs/docs/client-components/navigator.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: navigator -description: A user guide article for the navigator +description: Customize the dwc-navigator component appearance with CSS variables and shadow parts for paging controls and indicators. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/numberfield-spinner.md b/docs/docs/client-components/numberfield-spinner.md index 661d191e7..a9d1f1480 100644 --- a/docs/docs/client-components/numberfield-spinner.md +++ b/docs/docs/client-components/numberfield-spinner.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: numberfield-spinner -description: A user guide article for the numberfield-spinner +description: Style the dwc-numberfield-spinner increment and decrement controls with CSS variables and shadow parts for button theming. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/numberfield.md b/docs/docs/client-components/numberfield.md index f09aa7c46..52f8230fa 100644 --- a/docs/docs/client-components/numberfield.md +++ b/docs/docs/client-components/numberfield.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: numberfield -description: A user guide article for the numberfield +description: Theme the dwc-numberfield component through CSS variables and shadow parts targeting input, label, prefix, and suffix areas. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/overview.md b/docs/docs/client-components/overview.md index 34fdb2f1a..0775bf0de 100644 --- a/docs/docs/client-components/overview.md +++ b/docs/docs/client-components/overview.md @@ -1,6 +1,7 @@ --- sidebar_position: 1 title: Client Components +description: Index of styling references for DWC client-side web components, covering CSS variables, shadow parts, and slots for visual customization. hide_giscus_comments: true hide_table_of_contents: true --- diff --git a/docs/docs/client-components/popover.md b/docs/docs/client-components/popover.md index 3ad783635..5a87bbefc 100644 --- a/docs/docs/client-components/popover.md +++ b/docs/docs/client-components/popover.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: popover -description: A user guide article for the popover +description: Theme dwc-popover placement, surface, arrow visibility, and overlay through component-scoped CSS variables and shadow parts. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/popupmenu.md b/docs/docs/client-components/popupmenu.md index a35b2cf96..6dc02dd3a 100644 --- a/docs/docs/client-components/popupmenu.md +++ b/docs/docs/client-components/popupmenu.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: popupmenu -description: A user guide article for the popupmenu +description: Style the dwc-popupmenu floating surface with CSS variables and shadow parts for elevation, padding, and item appearance. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/progressbar.md b/docs/docs/client-components/progressbar.md index 1eeb6cd23..81948727d 100644 --- a/docs/docs/client-components/progressbar.md +++ b/docs/docs/client-components/progressbar.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: progressbar -description: A user guide article for the progressbar +description: Customize the dwc-progressbar track, indicator, and label through CSS variables and shadow parts for color and sizing. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/radio.md b/docs/docs/client-components/radio.md index ec5cba0cb..a6eab0a3e 100644 --- a/docs/docs/client-components/radio.md +++ b/docs/docs/client-components/radio.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: radio -description: A user guide article for the radio +description: Style the dwc-radio control, dot, and label via CSS variables and shadow parts for checked, hover, and disabled states. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/refresher.md b/docs/docs/client-components/refresher.md index 1ff599973..2e78c82e0 100644 --- a/docs/docs/client-components/refresher.md +++ b/docs/docs/client-components/refresher.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: refresher -description: A user guide article for the refresher +description: Customize the dwc-refresher pull-to-refresh indicator with CSS variables and shadow parts for spinner, icon, and text. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/separator.md b/docs/docs/client-components/separator.md index 5c7c64143..a25f051d1 100644 --- a/docs/docs/client-components/separator.md +++ b/docs/docs/client-components/separator.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: separator -description: A user guide article for the separator +description: Style the dwc-separator divider line with CSS variables and shadow parts controlling thickness, color, and orientation. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/slider.md b/docs/docs/client-components/slider.md index 43825ae67..7d07614b3 100644 --- a/docs/docs/client-components/slider.md +++ b/docs/docs/client-components/slider.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: slider -description: A user guide article for the slider +description: Theme the dwc-slider track, thumb, tick marks, and labels through CSS variables and shadow parts for visual customization. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/spinner.md b/docs/docs/client-components/spinner.md index 838afc86c..19e3278ed 100644 --- a/docs/docs/client-components/spinner.md +++ b/docs/docs/client-components/spinner.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: spinner -description: A user guide article for the spinner +description: Customize the dwc-spinner loading indicator with CSS variables and shadow parts for size, color, and animation speed. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/splitter.md b/docs/docs/client-components/splitter.md index f37f9af8f..21dfa1993 100644 --- a/docs/docs/client-components/splitter.md +++ b/docs/docs/client-components/splitter.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: splitter -description: A user guide article for the splitter +description: Style the dwc-splitter divider and panes through CSS variables and shadow parts for handle color, width, and hover effects. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/tab-panel.md b/docs/docs/client-components/tab-panel.md index f0e46c7f4..ab1f31cc1 100644 --- a/docs/docs/client-components/tab-panel.md +++ b/docs/docs/client-components/tab-panel.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: tab-panel -description: A user guide article for the tab-panel +description: Customize the dwc-tab-panel content surface with CSS variables and shadow parts for padding, background, and borders. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/tab.md b/docs/docs/client-components/tab.md index b25cfca12..fdfa3b16a 100644 --- a/docs/docs/client-components/tab.md +++ b/docs/docs/client-components/tab.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: tab -description: A user guide article for the tab +description: Style the dwc-tab label, icon, and indicator with CSS variables and shadow parts for active, hover, and disabled states. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/tabbed-pane.md b/docs/docs/client-components/tabbed-pane.md index ffd5e100c..5c94cd4ad 100644 --- a/docs/docs/client-components/tabbed-pane.md +++ b/docs/docs/client-components/tabbed-pane.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: tabbed-pane -description: A user guide article for the tabbed-pane +description: Theme the dwc-tabbed-pane container, tab strip, and active indicator through CSS variables and shadow parts. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/table.md b/docs/docs/client-components/table.md index ab9f9d3bb..f719f8f2c 100644 --- a/docs/docs/client-components/table.md +++ b/docs/docs/client-components/table.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: table -description: A user guide article for the table +description: Style the dwc-table grid, header, rows, cells, and selection state with CSS variables and shadow parts for full visual control. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/terminal.md b/docs/docs/client-components/terminal.md index 9c5617530..bc360a6c5 100644 --- a/docs/docs/client-components/terminal.md +++ b/docs/docs/client-components/terminal.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: terminal -description: A user guide article for the terminal +description: Customize the dwc-terminal console appearance with CSS variables and shadow parts for background, text, cursor, and font. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/textarea.md b/docs/docs/client-components/textarea.md index fdd38cd9c..d16a004ae 100644 --- a/docs/docs/client-components/textarea.md +++ b/docs/docs/client-components/textarea.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: textarea -description: A user guide article for the textarea +description: Theme the dwc-textarea multiline input with CSS variables and shadow parts for label, border, padding, and resize handle. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/textfield-spinner.md b/docs/docs/client-components/textfield-spinner.md index 580315249..b10e04519 100644 --- a/docs/docs/client-components/textfield-spinner.md +++ b/docs/docs/client-components/textfield-spinner.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: textfield-spinner -description: A user guide article for the textfield-spinner +description: Style the dwc-textfield-spinner stepper buttons through CSS variables and shadow parts for size, color, and hover states. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/textfield.md b/docs/docs/client-components/textfield.md index 5c90a74fd..da1474b13 100644 --- a/docs/docs/client-components/textfield.md +++ b/docs/docs/client-components/textfield.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: textfield -description: A user guide article for the textfield +description: Customize the dwc-textfield input with CSS variables and shadow parts targeting label, border, prefix, suffix, and clear button. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/timefield-spinner.md b/docs/docs/client-components/timefield-spinner.md index b643e9bd7..8f721177c 100644 --- a/docs/docs/client-components/timefield-spinner.md +++ b/docs/docs/client-components/timefield-spinner.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: timefield-spinner -description: A user guide article for the timefield-spinner +description: Style the dwc-timefield-spinner increment controls with CSS variables and shadow parts for stepper appearance and states. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/timefield.md b/docs/docs/client-components/timefield.md index 0d62e8285..b41862d63 100644 --- a/docs/docs/client-components/timefield.md +++ b/docs/docs/client-components/timefield.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: timefield -description: A user guide article for the timefield +description: Theme the dwc-timefield input through CSS variables and shadow parts for label, border, segments, and picker affordance. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/toast.md b/docs/docs/client-components/toast.md index e0613deef..a55110557 100644 --- a/docs/docs/client-components/toast.md +++ b/docs/docs/client-components/toast.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: toast -description: A user guide article for the toast +description: Customize dwc-toast appearance via shadow parts, slots, and position-aware CSS variables for surface, theme, and animation. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/toolbar.md b/docs/docs/client-components/toolbar.md index a3d886cb9..f33cb71c5 100644 --- a/docs/docs/client-components/toolbar.md +++ b/docs/docs/client-components/toolbar.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: toolbar -description: A user guide article for the toolbar +description: Style the dwc-toolbar container, slots, and action items with CSS variables and shadow parts for background and spacing. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/tree-node.md b/docs/docs/client-components/tree-node.md index 07a87a922..957d68b30 100644 --- a/docs/docs/client-components/tree-node.md +++ b/docs/docs/client-components/tree-node.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: tree-node -description: A user guide article for the tree-node +description: Style the dwc-tree-node label, icon, and expand toggle with CSS variables and shadow parts for selection and hover states. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/tree.md b/docs/docs/client-components/tree.md index 48bcdff50..f96227ba7 100644 --- a/docs/docs/client-components/tree.md +++ b/docs/docs/client-components/tree.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: tree -description: A user guide article for the tree +description: Style the dwc-tree component with CSS variables for indentation, color, and expand-icon theming, plus shadow parts for nodes. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/client-components/upload.md b/docs/docs/client-components/upload.md index f5aea6f9a..a8a68147d 100644 --- a/docs/docs/client-components/upload.md +++ b/docs/docs/client-components/upload.md @@ -3,7 +3,7 @@ sidebar_position: 0 title: sidebar_class_name: sidebar--item__hidden slug: upload -description: A user guide article for the upload +description: Customize the dwc-upload drop zone, file list, and progress through CSS variables and shadow parts for visual theming. // pagination_prev: null // pagination_next: null --- diff --git a/docs/docs/components/accordion.md b/docs/docs/components/accordion.md index 1cda9d663..3d435bd62 100644 --- a/docs/docs/components/accordion.md +++ b/docs/docs/components/accordion.md @@ -1,6 +1,7 @@ --- sidebar_position: 1 title: Accordion +description: Group collapsible panels with the Accordion and AccordionPanel components to toggle visibility and coordinate expand or collapse behavior. --- diff --git a/docs/docs/components/alert.md b/docs/docs/components/alert.md index d1eef2aed..606d9572b 100644 --- a/docs/docs/components/alert.md +++ b/docs/docs/components/alert.md @@ -1,6 +1,7 @@ --- title: Alert sidebar_position: 5 +description: Display contextual feedback messages with the Alert component, including themes, expanses, dismissible close events, and rich content. --- diff --git a/docs/docs/components/app-layout.md b/docs/docs/components/app-layout.md index 0c0116858..f024f6564 100644 --- a/docs/docs/components/app-layout.md +++ b/docs/docs/components/app-layout.md @@ -1,6 +1,7 @@ --- title: AppLayout sidebar_position: 5 +description: Build dashboards and admin shells with the AppLayout component, providing a fixed header, footer, sliding drawer, and scrollable content area. --- diff --git a/docs/docs/components/appnav.md b/docs/docs/components/appnav.md index cb43845f2..84eb6cd91 100644 --- a/docs/docs/components/appnav.md +++ b/docs/docs/components/appnav.md @@ -1,6 +1,7 @@ --- title: AppNav sidebar_position: 6 +description: Build hierarchical side navigation menus with AppNav and AppNavItem, linking to routes, registered views, or external URLs. --- diff --git a/docs/docs/components/avatar.md b/docs/docs/components/avatar.md index 6b9bd690e..0e449744d 100644 --- a/docs/docs/components/avatar.md +++ b/docs/docs/components/avatar.md @@ -1,6 +1,7 @@ --- title: Avatar sidebar_position: 7 +description: Represent users with the Avatar component, showing profile images, auto-computed initials, custom initials, or icons for identification. --- diff --git a/docs/docs/components/badge.md b/docs/docs/components/badge.md index d660a050c..f303836ab 100644 --- a/docs/docs/components/badge.md +++ b/docs/docs/components/badge.md @@ -1,6 +1,7 @@ --- title: Badge sidebar_position: 8 +description: Surface counts, statuses, or short labels with the Badge component, including themes, slotted icons, and attachment to buttons or tabs. --- diff --git a/docs/docs/components/busyindicator.md b/docs/docs/components/busyindicator.md index 427672898..7c525a05b 100644 --- a/docs/docs/components/busyindicator.md +++ b/docs/docs/components/busyindicator.md @@ -1,6 +1,7 @@ --- title: BusyIndicator sidebar_position: 10 +description: Block the entire interface during long-running operations using the BusyIndicator overlay with a customizable spinner, message, and backdrop. --- diff --git a/docs/docs/components/button.md b/docs/docs/components/button.md index 672f4c2d8..59b7c0420 100644 --- a/docs/docs/components/button.md +++ b/docs/docs/components/button.md @@ -1,6 +1,7 @@ --- title: Button sidebar_position: 15 +description: Trigger click actions in webforJ with the Button component, including themes, expanses, prefix and suffix icons, and disabled state. --- diff --git a/docs/docs/components/checkbox.md b/docs/docs/components/checkbox.md index 536a99904..683049851 100644 --- a/docs/docs/components/checkbox.md +++ b/docs/docs/components/checkbox.md @@ -1,6 +1,7 @@ --- title: CheckBox sidebar_position: 20 +description: Toggle individual settings or pick multiple options with the CheckBox component, supporting text positioning and an indeterminate state. --- diff --git a/docs/docs/components/columns-layout.md b/docs/docs/components/columns-layout.md index 48c1c67e8..98154cb0e 100644 --- a/docs/docs/components/columns-layout.md +++ b/docs/docs/components/columns-layout.md @@ -1,6 +1,7 @@ --- title: ColumnsLayout sidebar_position: 25 +description: Arrange child components into a responsive multi-column grid with the ColumnsLayout component using configurable breakpoints and alignment. --- diff --git a/docs/docs/components/desktop-notification.md b/docs/docs/components/desktop-notification.md index 46c491eb7..f3bf238bf 100644 --- a/docs/docs/components/desktop-notification.md +++ b/docs/docs/components/desktop-notification.md @@ -1,6 +1,7 @@ --- title: DesktopNotification sidebar_position: 29 +description: Send native OS notifications outside the browser window with the DesktopNotification component for real-time messages, alerts, and status changes. --- diff --git a/docs/docs/components/dialog.md b/docs/docs/components/dialog.md index 08efc5a7d..1926fb5a8 100644 --- a/docs/docs/components/dialog.md +++ b/docs/docs/components/dialog.md @@ -2,6 +2,7 @@ title: Dialog sidebar_position: 30 sidebar_class_name: new-content +description: Open modal popups with the Dialog component, including header, content, and footer sections, backdrop blur, and configurable close behavior. --- diff --git a/docs/docs/components/drawer.md b/docs/docs/components/drawer.md index d0e7a41e1..f42a05627 100644 --- a/docs/docs/components/drawer.md +++ b/docs/docs/components/drawer.md @@ -1,6 +1,7 @@ --- title: Drawer sidebar_position: 35 +description: Slide panels in from any screen edge with the Drawer component, ideal for side navigation, filter menus, settings, and stackable popovers. --- diff --git a/docs/docs/components/fields/masked/datefield.md b/docs/docs/components/fields/masked/datefield.md index cf6005c58..d4b68721e 100644 --- a/docs/docs/components/fields/masked/datefield.md +++ b/docs/docs/components/fields/masked/datefield.md @@ -1,6 +1,7 @@ --- title: MaskedDateField sidebar_position: 5 +description: Capture localized date input with the MaskedDateField, applying configurable masks, format indicators, parsing rules, and validation. --- diff --git a/docs/docs/components/fields/masked/numberfield.md b/docs/docs/components/fields/masked/numberfield.md index 01967ea07..40e8ebfb8 100644 --- a/docs/docs/components/fields/masked/numberfield.md +++ b/docs/docs/components/fields/masked/numberfield.md @@ -1,6 +1,7 @@ --- title: MaskedNumberField sidebar_position: 10 +description: Format numeric input with the MaskedNumberField using configurable mask characters, grouping, decimal separators, and locale settings. --- diff --git a/docs/docs/components/fields/masked/overview.md b/docs/docs/components/fields/masked/overview.md index 6c1a6c4b0..33b2099e4 100644 --- a/docs/docs/components/fields/masked/overview.md +++ b/docs/docs/components/fields/masked/overview.md @@ -3,6 +3,7 @@ sidebar_position: 1 title: Masked Fields hide_table_of_contents: true hide_giscus_comments: true +description: Enforce structured input for dates, times, numbers, and identifiers with the masked field components and their shared formatting rules. --- diff --git a/docs/docs/components/fields/masked/textfield.md b/docs/docs/components/fields/masked/textfield.md index 3ba37dac9..952940b46 100644 --- a/docs/docs/components/fields/masked/textfield.md +++ b/docs/docs/components/fields/masked/textfield.md @@ -1,6 +1,7 @@ --- title: MaskedTextField sidebar_position: 15 +description: Enforce formatted text entry with the MaskedTextField, supporting mask characters for digits, letters, and literals for IDs and codes. --- diff --git a/docs/docs/components/fields/masked/timefield.md b/docs/docs/components/fields/masked/timefield.md index e5f111285..37af8a538 100644 --- a/docs/docs/components/fields/masked/timefield.md +++ b/docs/docs/components/fields/masked/timefield.md @@ -1,6 +1,7 @@ --- title: MaskedTimeField sidebar_position: 20 +description: Capture time input with the MaskedTimeField, applying 12 or 24-hour masks, format indicators, locale-aware parsing, and validation. --- diff --git a/docs/docs/components/fields/overview.md b/docs/docs/components/fields/overview.md index 63133828d..300285f27 100644 --- a/docs/docs/components/fields/overview.md +++ b/docs/docs/components/fields/overview.md @@ -2,6 +2,7 @@ sidebar_position: 20 title: Fields hide_giscus_comments: true +description: Share common field properties across webforJ input components, including labels, helper text, required state, spellcheck, and prefix or suffix slots. --- diff --git a/docs/docs/components/flex-layout.md b/docs/docs/components/flex-layout.md index fd536dc98..f24cdbd0e 100644 --- a/docs/docs/components/flex-layout.md +++ b/docs/docs/components/flex-layout.md @@ -1,6 +1,7 @@ --- title: FlexLayout sidebar_position: 45 +description: Arrange children in rows or columns with the FlexLayout component, controlling direction, justification, alignment, wrapping, and growth. --- diff --git a/docs/docs/components/google-charts.md b/docs/docs/components/google-charts.md index 6d9f43ceb..46e2beb6a 100644 --- a/docs/docs/components/google-charts.md +++ b/docs/docs/components/google-charts.md @@ -1,6 +1,7 @@ --- title: Google Charts sidebar_position: 50 +description: Render bar, line, pie, geo, and other Google Charts in webforJ using the GoogleChart component with a typed Java options map and data API. --- diff --git a/docs/docs/components/html-elements.md b/docs/docs/components/html-elements.md index 180ab1b2c..fa963ef29 100644 --- a/docs/docs/components/html-elements.md +++ b/docs/docs/components/html-elements.md @@ -1,6 +1,7 @@ --- sidebar_position: 52 title: HTML Components +description: Compose pages with typed Java wrappers for standard HTML elements like Div, Anchor, Paragraph, Img, headings, and semantic containers. --- webforJ ships a set of components that map directly to standard HTML elements, giving you a typed Java API for the most common building blocks of web pages. For a comprehensive reference on each underlying HTML element, see the [MDN HTML element reference](https://developer.mozilla.org/en-US/docs/Web/HTML/Element). diff --git a/docs/docs/components/icon.md b/docs/docs/components/icon.md index 0f7444a5a..355dc3bcc 100644 --- a/docs/docs/components/icon.md +++ b/docs/docs/components/icon.md @@ -1,6 +1,7 @@ --- title: Icon sidebar_position: 55 +description: Render scalable SVG icons with the Icon component from Tabler, Feather, Font Awesome, or custom pools loaded on demand from a CDN. --- diff --git a/docs/docs/components/infinitescroll.md b/docs/docs/components/infinitescroll.md index 96cc873bf..5b2d8b099 100644 --- a/docs/docs/components/infinitescroll.md +++ b/docs/docs/components/infinitescroll.md @@ -1,6 +1,7 @@ --- title: InfiniteScroll sidebar_position: 60 +description: Load more content as users scroll with the InfiniteScroll component, emitting scroll events and showing a customizable loading spinner. --- diff --git a/docs/docs/components/lists/choice-box.md b/docs/docs/components/lists/choice-box.md index 5f97be273..d8aa3aeb1 100644 --- a/docs/docs/components/lists/choice-box.md +++ b/docs/docs/components/lists/choice-box.md @@ -2,6 +2,7 @@ sidebar_position: 5 title: ChoiceBox slug: choicebox +description: Pick a single value from a fixed set with the ChoiceBox dropdown, including dropdown type styling, max row count, and keyboard navigation. --- diff --git a/docs/docs/components/lists/combo-box.md b/docs/docs/components/lists/combo-box.md index 2f0479bf3..4543504e6 100644 --- a/docs/docs/components/lists/combo-box.md +++ b/docs/docs/components/lists/combo-box.md @@ -2,6 +2,7 @@ sidebar_position: 10 title: ComboBox slug: combobox +description: Combine a dropdown list with a text input in the ComboBox to let users select preset items or type custom values with placeholder support. --- diff --git a/docs/docs/components/lists/list-box.md b/docs/docs/components/lists/list-box.md index 32e1b9662..9f1447293 100644 --- a/docs/docs/components/lists/list-box.md +++ b/docs/docs/components/lists/list-box.md @@ -2,6 +2,7 @@ sidebar_position: 15 title: ListBox slug: listbox +description: Show a scrollable, always-visible list with the ListBox component, supporting single or multiple selection and keyboard navigation. --- diff --git a/docs/docs/components/lists/overview.md b/docs/docs/components/lists/overview.md index 01887b54c..6af33d6d5 100644 --- a/docs/docs/components/lists/overview.md +++ b/docs/docs/components/lists/overview.md @@ -2,6 +2,7 @@ sidebar_position: 20 title: Lists hide_giscus_comments: true +description: Manage shared list features across ChoiceBox, ComboBox, and ListBox, including ListItem objects, adding, removing, and selection APIs. --- diff --git a/docs/docs/components/loading.md b/docs/docs/components/loading.md index bc5731894..b46071b04 100644 --- a/docs/docs/components/loading.md +++ b/docs/docs/components/loading.md @@ -1,6 +1,7 @@ --- title: Loading sidebar_position: 65 +description: Overlay a parent container with the Loading component to block interaction during async tasks, with backdrop and spinner customization. --- diff --git a/docs/docs/components/login.md b/docs/docs/components/login.md index bdfc7ca84..4d550c921 100644 --- a/docs/docs/components/login.md +++ b/docs/docs/components/login.md @@ -1,6 +1,7 @@ --- title: Login sidebar_position: 70 +description: Display an authentication dialog with the Login component, handling submission, validation, custom fields, and form action URLs. --- diff --git a/docs/docs/components/markdownviewer.md b/docs/docs/components/markdownviewer.md index a9adc754e..24a4bb983 100644 --- a/docs/docs/components/markdownviewer.md +++ b/docs/docs/components/markdownviewer.md @@ -1,6 +1,7 @@ --- title: MarkdownViewer sidebar_position: 74 +description: Render markdown as HTML with the MarkdownViewer component, supporting append, auto-scroll, and progressive typewriter rendering. --- diff --git a/docs/docs/components/navigator.md b/docs/docs/components/navigator.md index 2cf8842c2..731ff8989 100644 --- a/docs/docs/components/navigator.md +++ b/docs/docs/components/navigator.md @@ -1,6 +1,7 @@ --- title: Navigator sidebar_position: 75 +description: Add pagination controls with the Navigator component, binding to a Paginator or Repository to drive page size, navigation, and labels. --- diff --git a/docs/docs/components/option-dialogs/confirm.md b/docs/docs/components/option-dialogs/confirm.md index 49f319249..a5ca59276 100644 --- a/docs/docs/components/option-dialogs/confirm.md +++ b/docs/docs/components/option-dialogs/confirm.md @@ -1,6 +1,7 @@ --- title: Confirm sidebar_position: 5 +description: Show a blocking ConfirmDialog with up to three options, configurable button sets, message types, and timeout behavior. --- diff --git a/docs/docs/components/option-dialogs/file-chooser.md b/docs/docs/components/option-dialogs/file-chooser.md index bcaaa8dcf..4658aefbe 100644 --- a/docs/docs/components/option-dialogs/file-chooser.md +++ b/docs/docs/components/option-dialogs/file-chooser.md @@ -1,6 +1,7 @@ --- title: File Chooser sidebar_position: 10 +description: Open a blocking FileChooserDialog to let users pick files or directories from the server, with selection modes and initial paths. --- diff --git a/docs/docs/components/option-dialogs/file-save.md b/docs/docs/components/option-dialogs/file-save.md index 63d75fdab..7fc9f687f 100644 --- a/docs/docs/components/option-dialogs/file-save.md +++ b/docs/docs/components/option-dialogs/file-save.md @@ -1,6 +1,7 @@ --- title: File Save sidebar_position: 15 +description: Prompt users for a save location with the FileSaveDialog, configuring initial path, default filename, and overwrite behavior. --- diff --git a/docs/docs/components/option-dialogs/file-upload.md b/docs/docs/components/option-dialogs/file-upload.md index 7ec5d410b..39c6f384c 100644 --- a/docs/docs/components/option-dialogs/file-upload.md +++ b/docs/docs/components/option-dialogs/file-upload.md @@ -1,6 +1,7 @@ --- title: File Upload sidebar_position: 20 +description: Capture client uploads with the FileUploadDialog, returning an UploadedFile that you can filter, move, and process server-side. --- diff --git a/docs/docs/components/option-dialogs/input.md b/docs/docs/components/option-dialogs/input.md index 65b15f595..39e45a250 100644 --- a/docs/docs/components/option-dialogs/input.md +++ b/docs/docs/components/option-dialogs/input.md @@ -1,6 +1,7 @@ --- title: Input Dialog sidebar_position: 25 +description: Prompt users for text, numbers, dates, colors, or other typed values with the modal InputDialog and message-type styling. --- diff --git a/docs/docs/components/option-dialogs/message.md b/docs/docs/components/option-dialogs/message.md index 1f6723b82..c8cef1e10 100644 --- a/docs/docs/components/option-dialogs/message.md +++ b/docs/docs/components/option-dialogs/message.md @@ -1,6 +1,7 @@ --- title: Message sidebar_position: 30 +description: Show a blocking MessageDialog with an OK button, configurable message types, alignment, blur, and timeout. --- diff --git a/docs/docs/components/option-dialogs/overview.md b/docs/docs/components/option-dialogs/overview.md index 1c82c8009..9fe32b626 100644 --- a/docs/docs/components/option-dialogs/overview.md +++ b/docs/docs/components/option-dialogs/overview.md @@ -2,6 +2,7 @@ sidebar_position: 35 title: Option Dialogs hide_giscus_comments: true +description: Build modal dialogs in webforJ that block server execution until the user responds, mirroring the JOptionPane pattern from Swing. --- diff --git a/docs/docs/components/overview.md b/docs/docs/components/overview.md index fe5459fd1..7011b09f8 100644 --- a/docs/docs/components/overview.md +++ b/docs/docs/components/overview.md @@ -4,6 +4,7 @@ sidebar_position: 85 hide_table_of_contents: true sidebar_class_name: has-new-content hide_giscus_comments: true +description: Browse the webforJ UI component catalog covering layouts, data entry, navigation, feedback, and visualization components. --- diff --git a/docs/docs/components/progressbar.md b/docs/docs/components/progressbar.md index 1e4cc670a..f0ce250be 100644 --- a/docs/docs/components/progressbar.md +++ b/docs/docs/components/progressbar.md @@ -1,6 +1,7 @@ --- title: ProgressBar sidebar_position: 90 +description: Visualize task completion with the ProgressBar component, supporting determinate and indeterminate modes, orientation, and themes. --- diff --git a/docs/docs/components/radio-button.md b/docs/docs/components/radio-button.md index 59977f777..a3f860834 100644 --- a/docs/docs/components/radio-button.md +++ b/docs/docs/components/radio-button.md @@ -2,6 +2,7 @@ title: RadioButton slug: radiobutton sidebar_position: 95 +description: Add a single-choice RadioButton with text positioning, activation modes, and grouping for mutually exclusive selections. --- diff --git a/docs/docs/components/radio-group.md b/docs/docs/components/radio-group.md index 70cc340a6..59a254a2a 100644 --- a/docs/docs/components/radio-group.md +++ b/docs/docs/components/radio-group.md @@ -2,6 +2,7 @@ title: RadioButtonGroup slug: radiobuttongroup sidebar_position: 100 +description: Coordinate mutually exclusive RadioButton selections with RadioButtonGroup, including nested containers and dynamic membership. --- diff --git a/docs/docs/components/refresher.md b/docs/docs/components/refresher.md index 6382ecc40..a5e0f96fc 100644 --- a/docs/docs/components/refresher.md +++ b/docs/docs/components/refresher.md @@ -1,6 +1,7 @@ --- title: Refresher sidebar_position: 101 +description: Enable pull-to-refresh on scrollable areas with the Refresher component, with pull, release, and refreshing states and i18n labels. --- diff --git a/docs/docs/components/slider.md b/docs/docs/components/slider.md index f9a0f7fd6..dad95dedc 100644 --- a/docs/docs/components/slider.md +++ b/docs/docs/components/slider.md @@ -1,6 +1,7 @@ --- title: Slider sidebar_position: 101 +description: Let users pick a numeric value with the Slider component, with configurable range, step, tick marks, labels, and orientation. --- diff --git a/docs/docs/components/spinner.md b/docs/docs/components/spinner.md index 677c9060b..61fde8379 100644 --- a/docs/docs/components/spinner.md +++ b/docs/docs/components/spinner.md @@ -1,6 +1,7 @@ --- title: Spinner sidebar_position: 110 +description: Indicate background activity with the Spinner component, configuring theme, expanse, rotation speed, and pause or resume. --- diff --git a/docs/docs/components/splitter.md b/docs/docs/components/splitter.md index f1847fcef..adf70c3f3 100644 --- a/docs/docs/components/splitter.md +++ b/docs/docs/components/splitter.md @@ -1,6 +1,7 @@ --- title: Splitter sidebar_position: 115 +description: Divide a layout into resizable master and detail panels with the Splitter component, with min and max sizes and orientation control. --- diff --git a/docs/docs/components/tabbed-pane.md b/docs/docs/components/tabbed-pane.md index 6d9425c69..9df80165a 100644 --- a/docs/docs/components/tabbed-pane.md +++ b/docs/docs/components/tabbed-pane.md @@ -3,6 +3,7 @@ title: TabbedPane slug: tabbedpane sidebar_position: 125 sidebar_class_name: new-content +description: Organize content into switchable Tab sections with the TabbedPane component, supporting icons, keys, and customizable tab properties. --- diff --git a/docs/docs/components/table/overview.md b/docs/docs/components/table/overview.md index c0f185155..d20fb1dd3 100644 --- a/docs/docs/components/table/overview.md +++ b/docs/docs/components/table/overview.md @@ -2,6 +2,7 @@ sidebar_position: 1 title: Table hide_giscus_comments: true +description: Display tabular data with the Table component, binding entity classes to a Repository to populate columns and render rows. --- diff --git a/docs/docs/components/table/table_column_groups.md b/docs/docs/components/table/table_column_groups.md index 8da66e334..a373108a9 100644 --- a/docs/docs/components/table/table_column_groups.md +++ b/docs/docs/components/table/table_column_groups.md @@ -1,6 +1,7 @@ --- title: Column Groups sidebar_position: 7 +description: Group Table columns under shared, nestable multi-row headers using ColumnGroup.of and setColumnGroups for complex layouts. --- diff --git a/docs/docs/components/table/table_columns.md b/docs/docs/components/table/table_columns.md index cfd2144a5..32b4edbaa 100644 --- a/docs/docs/components/table/table_columns.md +++ b/docs/docs/components/table/table_columns.md @@ -2,6 +2,7 @@ sidebar_position: 5 title: Columns slug: columns +description: Define Table columns with labels, value providers, visibility, navigability, sizing, and user-interaction events. --- diff --git a/docs/docs/components/table/table_dynamic_styling.md b/docs/docs/components/table/table_dynamic_styling.md index cf8c443ae..e6a05a138 100644 --- a/docs/docs/components/table/table_dynamic_styling.md +++ b/docs/docs/components/table/table_dynamic_styling.md @@ -2,6 +2,7 @@ sidebar_position: 21 title: Dynamic Styling slug: styling +description: Apply data-driven CSS to Table rows and cells using setRowPartProvider and setCellPartProvider with shadow part selectors. --- # Dynamic Styling diff --git a/docs/docs/components/table/table_edit_refresh.md b/docs/docs/components/table/table_edit_refresh.md index fb936fc76..f2fd42f72 100644 --- a/docs/docs/components/table/table_edit_refresh.md +++ b/docs/docs/components/table/table_edit_refresh.md @@ -2,6 +2,7 @@ sidebar_position: 30 title: Editing and Refreshing slug: refreshing +description: Edit Table rows by mutating the bound Repository and call commit to refresh the UI through RepositoryCommitEvent. --- Editing data within the `Table` works via interaction with the `Repository` containing the data for the `Table`. The `Repository` serves as a bridge between the `Table` and the underlying dataset, offering methods for data retrieval, modification, and refreshing. Below is an example which implements behavior to edit the "Title" of a desired row based. diff --git a/docs/docs/components/table/table_filtering.md b/docs/docs/components/table/table_filtering.md index b865ec1cf..37ccbbdb9 100644 --- a/docs/docs/components/table/table_filtering.md +++ b/docs/docs/components/table/table_filtering.md @@ -2,6 +2,7 @@ sidebar_position: 35 title: Filtering slug: filtering +description: Narrow Table rows by applying a Predicate through the bound Repository, refreshing results on commit. --- The `Table` component allows you to implement filtering to narrow down displayed data based on specific criteria. Filtering can be achieved by defining a filtering criteria using the `setFilter(Predicate filter)` method provided by the `Repository` associated with the table diff --git a/docs/docs/components/table/table_interactivity.md b/docs/docs/components/table/table_interactivity.md index 23d20c74b..d7f09740f 100644 --- a/docs/docs/components/table/table_interactivity.md +++ b/docs/docs/components/table/table_interactivity.md @@ -2,6 +2,7 @@ sidebar_position: 40 title: Interactivity slug: Interactivity +description: Reference the keyboard shortcuts that move focus, select rows, and navigate cells in the Table component. --- The `Table` component will respond to various keyboard inputs from users to allow for more fine-grained interaction. The following list outlines the various behaviors when the designated key is pressed: diff --git a/docs/docs/components/table/table_large_data.md b/docs/docs/components/table/table_large_data.md index 5601f661c..dc7b0f6b3 100644 --- a/docs/docs/components/table/table_large_data.md +++ b/docs/docs/components/table/table_large_data.md @@ -2,6 +2,7 @@ sidebar_position: 25 title: Large Data Sets slug: data +description: Handle large Table datasets efficiently with virtual scrolling, dynamic row loading, DOM recycling, and overscan tuning. --- ## Virtual scrolling {#virtual-scrolling} diff --git a/docs/docs/components/table/table_rendering.md b/docs/docs/components/table/table_rendering.md index e26659f1f..15d98264b 100644 --- a/docs/docs/components/table/table_rendering.md +++ b/docs/docs/components/table/table_rendering.md @@ -2,6 +2,7 @@ sidebar_position: 20 title: Rendering slug: rendering +description: Transform Table cells into text, badges, icons, links, or custom HTML with built-in renderers and the setRenderer method. --- diff --git a/docs/docs/components/table/table_selection.md b/docs/docs/components/table/table_selection.md index 7f7772432..1d412bd42 100644 --- a/docs/docs/components/table/table_selection.md +++ b/docs/docs/components/table/table_selection.md @@ -2,6 +2,7 @@ sidebar_position: 10 title: Selection slug: selection +description: Configure single, multi, or no-selection modes on the Table and respond to row selection events with appropriate listeners. --- The `Table` component provides various selection capabilities. There are methods for selecting a single item, multiple items, or programmatically managing selections. diff --git a/docs/docs/components/table/table_sorting.md b/docs/docs/components/table/table_sorting.md index e053cdc15..8a33960b7 100644 --- a/docs/docs/components/table/table_sorting.md +++ b/docs/docs/components/table/table_sorting.md @@ -2,6 +2,7 @@ sidebar_position: 15 title: Sorting slug: sorting +description: Enable per-column sorting on the Table, configure multi-column sorting, and set sort priority programmatically. --- Sorting lets users arrange data in columns by order, making information easier to read and analyze. This is useful when users need to quickly find the highest or lowest values in a particular column. diff --git a/docs/docs/components/terminal.md b/docs/docs/components/terminal.md index e04e078b5..f24247150 100644 --- a/docs/docs/components/terminal.md +++ b/docs/docs/components/terminal.md @@ -1,6 +1,7 @@ --- title: Terminal sidebar_position: 126 +description: Embed an interactive terminal emulator with the Terminal component for shells, dashboards, debug consoles, and remote access tools. --- diff --git a/docs/docs/components/textarea.md b/docs/docs/components/textarea.md index 53e43ddd2..89dcbbc91 100644 --- a/docs/docs/components/textarea.md +++ b/docs/docs/components/textarea.md @@ -1,6 +1,7 @@ --- title: TextArea sidebar_position: 130 +description: Capture multi-line input with the TextArea component, including paragraph management, character limits, wrapping, and validation. --- diff --git a/docs/docs/components/toast.md b/docs/docs/components/toast.md index 7c1ce9dda..689b88b27 100644 --- a/docs/docs/components/toast.md +++ b/docs/docs/components/toast.md @@ -1,6 +1,7 @@ --- title: Toast sidebar_position: 140 +description: Show transient notifications with the Toast component, configuring duration, theme, and placement via Toast.show or open. --- diff --git a/docs/docs/components/toolbar.md b/docs/docs/components/toolbar.md index cbfaf075a..2f96f056e 100644 --- a/docs/docs/components/toolbar.md +++ b/docs/docs/components/toolbar.md @@ -1,6 +1,7 @@ --- title: Toolbar sidebar_position: 145 +description: Lay out action controls with the Toolbar component, placing components into Start, Title, Content, and End slots with compact mode. --- diff --git a/docs/docs/components/tree.md b/docs/docs/components/tree.md index 820b0c7b3..f7042bab4 100644 --- a/docs/docs/components/tree.md +++ b/docs/docs/components/tree.md @@ -1,6 +1,7 @@ --- title: Tree sidebar_position: 150 +description: Display hierarchical data with the Tree component, using TreeNode parent-child links, expand or collapse, icons, and selection. --- diff --git a/docs/docs/configuration/bbj-installation/configuration.md b/docs/docs/configuration/bbj-installation/configuration.md index c1d43873e..de65cc1d6 100644 --- a/docs/docs/configuration/bbj-installation/configuration.md +++ b/docs/docs/configuration/bbj-installation/configuration.md @@ -2,6 +2,7 @@ title: Install Plugin sidebar_position: 3 displayed_sidebar: documentationSidebar +description: Configure the webforJ install Maven plugin with deploy URL, class name, publish name, and debug flags for BBjServices deployments. --- You can configure webforJ using a project's POM file, which is designed to make deploying an app easy. The following sections outline the various options you can change to achieve a desired result. diff --git a/docs/docs/configuration/bbj-installation/docker.md b/docs/docs/configuration/bbj-installation/docker.md index 494d85102..4c21d3cb3 100644 --- a/docs/docs/configuration/bbj-installation/docker.md +++ b/docs/docs/configuration/bbj-installation/docker.md @@ -1,6 +1,7 @@ --- sidebar_position: 1 title: Docker +description: Install Docker Desktop on Windows or Mac, pull the webforj/sandbox image, and run BBjServices in a container for webforJ development. --- # Docker installation diff --git a/docs/docs/configuration/bbj-installation/github-codespaces.md b/docs/docs/configuration/bbj-installation/github-codespaces.md index 60988f66a..1f914f68a 100644 --- a/docs/docs/configuration/bbj-installation/github-codespaces.md +++ b/docs/docs/configuration/bbj-installation/github-codespaces.md @@ -1,6 +1,7 @@ --- sidebar_position: 2 title: Github Codespaces +description: Run the webforj-hello-world starter in a GitHub Codespace to develop and preview webforJ apps directly from the browser. --- [`webforj-hello-world`](https://github.com/webforj/webforj-hello-world) has been configured to run in Github Codespaces. Codespaces is a cloud-based development environment, and allows you to develop and run webforJ applications directly within your browser. To start developing with this tool, follow the steps below: diff --git a/docs/docs/configuration/bbj-installation/local.md b/docs/docs/configuration/bbj-installation/local.md index e01675901..7b007d114 100644 --- a/docs/docs/configuration/bbj-installation/local.md +++ b/docs/docs/configuration/bbj-installation/local.md @@ -1,5 +1,6 @@ --- sidebar_position: 4 +description: Install BBj locally and use the Plugin Manager to configure the webforJ plugin for running apps against a local BBjServices instance. --- # Local Installation diff --git a/docs/docs/configuration/bbj-installation/overview.md b/docs/docs/configuration/bbj-installation/overview.md index f436975ef..e284c0a63 100644 --- a/docs/docs/configuration/bbj-installation/overview.md +++ b/docs/docs/configuration/bbj-installation/overview.md @@ -1,6 +1,7 @@ --- title: Running with BBjServices hide_table_of_contents: true +description: Set up and deploy webforJ apps that run on BBjServices using Docker, GitHub Codespaces, or a local BBj installation. --- :::important diff --git a/docs/docs/configuration/debugging.md b/docs/docs/configuration/debugging.md index 9768c59c0..3c1555dbc 100644 --- a/docs/docs/configuration/debugging.md +++ b/docs/docs/configuration/debugging.md @@ -1,6 +1,7 @@ --- title: Debugging sidebar_position: 1 +description: Attach a remote Java debugger to a running webforJ app from Visual Studio Code, IntelliJ IDEA, or Eclipse using Jetty on port 8000. --- Debugging is an essential part of Java development, helping developers identify and fix issues efficiently. This guide explains how to configure debugging in webforJ for Visual Studio Code, IntelliJ IDEA, and Eclipse. diff --git a/docs/docs/configuration/deploy-reload/jrebel.md b/docs/docs/configuration/deploy-reload/jrebel.md index 391193f7a..7744fee8f 100644 --- a/docs/docs/configuration/deploy-reload/jrebel.md +++ b/docs/docs/configuration/deploy-reload/jrebel.md @@ -1,5 +1,6 @@ --- title: JRebel +description: Use JRebel with webforJ to hot-swap modified classes into a running Jetty server and skip full restarts during development. --- JRebel is a Java development tool that integrates with the JVM to detect code changes and replace modified classes directly in memory, allowing developers to see code changes immediately without restarting the server. diff --git a/docs/docs/configuration/deploy-reload/maven-jetty-plugin.md b/docs/docs/configuration/deploy-reload/maven-jetty-plugin.md index 4326849fa..5761e5f14 100644 --- a/docs/docs/configuration/deploy-reload/maven-jetty-plugin.md +++ b/docs/docs/configuration/deploy-reload/maven-jetty-plugin.md @@ -1,5 +1,6 @@ --- title: Maven Jetty plugin +description: Tune the Maven Jetty plugin scan interval and webforJ reload properties to enable hot redeployment during webforJ development. --- The Maven Jetty plugin is a popular tool that allows developers to run Java web apps within an embedded Jetty server directly from their Maven projects. diff --git a/docs/docs/configuration/deploy-reload/overview.md b/docs/docs/configuration/deploy-reload/overview.md index c642bd182..7a34ffc6a 100644 --- a/docs/docs/configuration/deploy-reload/overview.md +++ b/docs/docs/configuration/deploy-reload/overview.md @@ -2,6 +2,7 @@ title: Redeployment and Live Reload hide_table_of_contents: false hide_giscus_comments: true +description: Combine automatic redeployment with live browser reload so code changes appear in a running webforJ app without manual restarts. --- Efficient development workflows rely on tools that detect code changes and automatically update the app in real time. Continuous Deployment and Dynamic Reload work together to simplify the development process by reducing manual steps, allowing you to see your changes quickly without needing to manually restart the server. diff --git a/docs/docs/configuration/deploy-reload/spring-devtools.md b/docs/docs/configuration/deploy-reload/spring-devtools.md index 3708fc2c9..99973b3f1 100644 --- a/docs/docs/configuration/deploy-reload/spring-devtools.md +++ b/docs/docs/configuration/deploy-reload/spring-devtools.md @@ -1,6 +1,7 @@ --- title: Spring DevTools sidebar_position: 30 +description: Pair Spring DevTools with webforJ DevTools to auto-restart the app and refresh the browser when Java, CSS, or asset files change. --- Spring DevTools provides automatic app restarts when code changes. webforJ DevTools adds automatic browser refresh - when Spring restarts your app, the browser refreshes automatically through webforJ's LiveReload server. diff --git a/docs/docs/configuration/deploying-additional-servlets.md b/docs/docs/configuration/deploying-additional-servlets.md index b2fe5e76a..915b02259 100644 --- a/docs/docs/configuration/deploying-additional-servlets.md +++ b/docs/docs/configuration/deploying-additional-servlets.md @@ -1,6 +1,7 @@ --- sidebar_position: 35 title: Deploying Additional Servlets +description: Host REST endpoints and third-party servlets alongside a webforJ app by remapping WebforjServlet or proxying through webforj.conf. --- # Deploying Additional Servlets diff --git a/docs/docs/configuration/installable-apps.md b/docs/docs/configuration/installable-apps.md index c8d613757..070411a83 100644 --- a/docs/docs/configuration/installable-apps.md +++ b/docs/docs/configuration/installable-apps.md @@ -1,6 +1,7 @@ --- title: Installable Apps sidebar_position: 10 +description: Annotate a webforJ app with AppProfile to generate a Web App Manifest with icons, screenshots, and metadata for device installation. --- diff --git a/docs/docs/configuration/licensing-and-watermark.md b/docs/docs/configuration/licensing-and-watermark.md index 657828071..239d6a358 100644 --- a/docs/docs/configuration/licensing-and-watermark.md +++ b/docs/docs/configuration/licensing-and-watermark.md @@ -1,6 +1,7 @@ --- title: Licensing and Watermark sidebar_position: 20 +description: Request a webforJ trial certificate and place certificate.bls in the resources directory to remove the unlicensed runtime watermark. --- By default, webforJ projects can be run but won't have a license certificate associated with them. When running an unlicensed project, a watermark will display on the running app's UI until a valid license has been entered. diff --git a/docs/docs/configuration/minifier-plugin.md b/docs/docs/configuration/minifier-plugin.md index be4bb6f4a..d15ec55f9 100644 --- a/docs/docs/configuration/minifier-plugin.md +++ b/docs/docs/configuration/minifier-plugin.md @@ -1,6 +1,7 @@ --- sidebar_position: 21 title: Minifier Plugin +description: Discover and minify CSS and JavaScript assets referenced by webforJ annotations during the Maven or Gradle production build. --- # Minifier plugin diff --git a/docs/docs/configuration/overview.md b/docs/docs/configuration/overview.md index bf4d9d7e3..744757f4f 100644 --- a/docs/docs/configuration/overview.md +++ b/docs/docs/configuration/overview.md @@ -3,6 +3,7 @@ sidebar_position: 1 title: Configuration hide_table_of_contents: true hide_giscus_comments: true +description: Configure webforJ apps with properties, deployment options, debugging, licensing, asset minification, and installable app profiles. --- diff --git a/docs/docs/configuration/properties.md b/docs/docs/configuration/properties.md index 9f8a125cb..05ce2c6ec 100644 --- a/docs/docs/configuration/properties.md +++ b/docs/docs/configuration/properties.md @@ -1,6 +1,7 @@ --- title: Property Configuration sidebar_position: 30 +description: Set webforJ entry points, debug mode, locales, file upload limits, and servlet mappings through webforj.conf and web.xml. --- # Configuring webforJ properties diff --git a/docs/docs/configuration/snapshots.md b/docs/docs/configuration/snapshots.md index 9cdfe2e8d..c6cc2ea8e 100644 --- a/docs/docs/configuration/snapshots.md +++ b/docs/docs/configuration/snapshots.md @@ -1,6 +1,7 @@ --- title: Snapshots sidebar_position: 35 +description: Locate the latest webforJ snapshot version and add the Central Portal Snapshots repository to consume pre-release builds. --- Every webforJ version release is accompanied by detailed [release notes](https://github.com/webforj/webforj/releases) and a [release blog article](/blog/tags/release). diff --git a/docs/docs/data-binding/_validation.md b/docs/docs/data-binding/_validation.md index b2b53101f..c8ea2070b 100644 --- a/docs/docs/data-binding/_validation.md +++ b/docs/docs/data-binding/_validation.md @@ -1,6 +1,7 @@ --- sidebar_position: 3 title: Validation +description: Shared partial that introduces validation result handling for the webforJ data binding context. --- diff --git a/docs/docs/data-binding/automatic-binding.md b/docs/docs/data-binding/automatic-binding.md index 5405fe108..a63856d5b 100644 --- a/docs/docs/data-binding/automatic-binding.md +++ b/docs/docs/data-binding/automatic-binding.md @@ -1,6 +1,7 @@ --- sidebar_position: 5 title: Automatic Binding +description: Bind UI fields to bean properties automatically with BindingContext.of using UseProperty, BindingExclude, and UseValidator annotations. --- webforJ offers several features that streamline the configuration and automatic binding process for developers. This section demonstrates how to use these features effectively. diff --git a/docs/docs/data-binding/bindings.md b/docs/docs/data-binding/bindings.md index 8999ce37b..502d406fc 100644 --- a/docs/docs/data-binding/bindings.md +++ b/docs/docs/data-binding/bindings.md @@ -1,6 +1,7 @@ --- sidebar_position: 2 title: Bindings +description: Link Java Bean properties to webforJ UI components through BindingContext to synchronize reads and writes between model and view. --- A binding in webforJ links a specific property of a Java Bean to a UI component. This linkage enables automatic updates between the UI and the backend model. Each binding can handle data synchronization, validation, transformation, and event management. diff --git a/docs/docs/data-binding/overview.md b/docs/docs/data-binding/overview.md index 7c8262e61..218834442 100644 --- a/docs/docs/data-binding/overview.md +++ b/docs/docs/data-binding/overview.md @@ -3,6 +3,7 @@ sidebar_position: 1 title: Data Binding hide_table_of_contents: true hide_giscus_comments: true +description: Connect webforJ UI components to Java backend models with two-way synchronization, validation, and transformation through BindingContext. --- diff --git a/docs/docs/data-binding/transformation.md b/docs/docs/data-binding/transformation.md index bfa8a23ce..fc6bf752a 100644 --- a/docs/docs/data-binding/transformation.md +++ b/docs/docs/data-binding/transformation.md @@ -1,6 +1,7 @@ --- sidebar_position: 4 title: Transformation +description: Convert between UI and model data types in webforJ bindings by implementing the Transformer interface and wiring it via useTransformer. --- Data transformations convert between the data types used in UI components and those in your data model. This keeps data types compatible and appropriately formatted when moving data between the frontend and backend of your applications. diff --git a/docs/docs/data-binding/validation/context-results.md b/docs/docs/data-binding/validation/context-results.md index a3d197724..c8fe1449a 100644 --- a/docs/docs/data-binding/validation/context-results.md +++ b/docs/docs/data-binding/validation/context-results.md @@ -1,6 +1,7 @@ --- sidebar_position: 4 title: Context Results +description: Inspect ValidationResult after a BindingContext write, react to BindingContextValidateEvent, and auto-focus the first violation. --- When you write data from the UI to the model, the `write` method of the `BindingContext` triggers the validations. The validation results determine whether the data is acceptable. diff --git a/docs/docs/data-binding/validation/jakarta-validation.md b/docs/docs/data-binding/validation/jakarta-validation.md index aec6ea850..b1b563124 100644 --- a/docs/docs/data-binding/validation/jakarta-validation.md +++ b/docs/docs/data-binding/validation/jakarta-validation.md @@ -2,6 +2,7 @@ sidebar_position: 6 title: Jakarta Validation sidebar_class_name: updated-content +description: Apply Jakarta Bean Validation annotations to bean properties and activate JakartaValidator on a BindingContext with locale-aware messages. --- [Java Bean Validation](https://beanvalidation.org/) is widely recognized as the standard for integrating validation logic into Java applications. It uses a uniform approach to validation by allowing developers to annotate domain model properties with declarative validation constraints. These constraints are enforced at runtime, with options for both built-in and custom-defined rules. diff --git a/docs/docs/data-binding/validation/overview.md b/docs/docs/data-binding/validation/overview.md index f423ae11e..2d877fc79 100644 --- a/docs/docs/data-binding/validation/overview.md +++ b/docs/docs/data-binding/validation/overview.md @@ -4,6 +4,7 @@ title: Validation hide_giscus_comments: true hide_table_of_contents: true sidebar_class_name: has-new-content +description: Enforce business rules in webforJ data bindings using validators, triggers, reporters, Jakarta Validation, and context results. --- diff --git a/docs/docs/data-binding/validation/reporters.md b/docs/docs/data-binding/validation/reporters.md index 7db5aa8e8..93ea9e178 100644 --- a/docs/docs/data-binding/validation/reporters.md +++ b/docs/docs/data-binding/validation/reporters.md @@ -1,6 +1,7 @@ --- sidebar_position: 3 title: Reporters +description: Surface validation outcomes through the DefaultBindingReporter or attach custom reporters to bindings with the useReporter callback. --- diff --git a/docs/docs/data-binding/validation/triggers.md b/docs/docs/data-binding/validation/triggers.md index b7496b87f..0771ff6fc 100644 --- a/docs/docs/data-binding/validation/triggers.md +++ b/docs/docs/data-binding/validation/triggers.md @@ -1,6 +1,7 @@ --- sidebar_position: 5 title: Triggers +description: Control when webforJ validates bindings by toggling auto-validate, using ValueChangeMode, and triggering revalidation manually. --- diff --git a/docs/docs/data-binding/validation/validators.md b/docs/docs/data-binding/validation/validators.md index 99945bdcb..3de6b6271 100644 --- a/docs/docs/data-binding/validation/validators.md +++ b/docs/docs/data-binding/validation/validators.md @@ -2,6 +2,7 @@ sidebar_position: 2 title: Validators sidebar_class_name: updated-content +description: Attach validators to bindings with useValidator, implement reusable Validator classes, and override messages per UI field. --- Validators validate data within your UI components against defined constraints before committing this data to the data model. You can apply validators to verify that data meets certain criteria, such as being within a specified range, matching a pattern, or not being empty. diff --git a/docs/docs/glossary.md b/docs/docs/glossary.md index 354ea90c3..7f81f72d5 100644 --- a/docs/docs/glossary.md +++ b/docs/docs/glossary.md @@ -3,6 +3,7 @@ sidebar_position: 1000 title: Glossary sidebar_class_name: sidebar--item__hidden slug: glossary +description: Definitions for terms used across webforJ documentation, including DOM, Shadow DOM, and other web platform and framework concepts. --- ## DOM {#dom} diff --git a/docs/docs/integrations/ai-tooling/agent-skills.md b/docs/docs/integrations/ai-tooling/agent-skills.md index fdd87293d..61b1ef4e5 100644 --- a/docs/docs/integrations/ai-tooling/agent-skills.md +++ b/docs/docs/integrations/ai-tooling/agent-skills.md @@ -1,6 +1,7 @@ --- title: Agent Skills sidebar_position: 10 +description: Install Agent Skills so AI coding assistants follow webforJ workflows for building forms, adding servlets, styling apps, and creating components. --- Agent Skills teach AI coding assistants how to build webforJ applications using the correct APIs, design tokens, and component patterns. Instead of guessing at framework conventions, the assistant loads a skill and follows a structured workflow to produce code that compiles and follows best practices on the first attempt. diff --git a/docs/docs/integrations/ai-tooling/mcp.md b/docs/docs/integrations/ai-tooling/mcp.md index e11b61fea..dec702cf9 100644 --- a/docs/docs/integrations/ai-tooling/mcp.md +++ b/docs/docs/integrations/ai-tooling/mcp.md @@ -1,6 +1,7 @@ --- title: MCP Server sidebar_position: 5 +description: Connect AI assistants to the webforJ MCP server for live documentation lookup, project scaffolding, theme generation, and token validation. --- The webforJ Model Context Protocol (MCP) server plugs AI coding assistants into webforJ's documentation, APIs, design tokens, and scaffolding tools. Instead of guessing at framework conventions, the assistant asks the server and gets answers grounded in the real webforJ. diff --git a/docs/docs/integrations/ai-tooling/overview.md b/docs/docs/integrations/ai-tooling/overview.md index 3b8b74ae1..58e04b85f 100644 --- a/docs/docs/integrations/ai-tooling/overview.md +++ b/docs/docs/integrations/ai-tooling/overview.md @@ -3,6 +3,7 @@ title: webforJ AI Plugin sidebar_position: 1 slug: /integrations/ai-tooling sidebar_class_name: new-content +description: Install the webforJ AI plugin to add the MCP server and Agent Skills to Claude Code, Copilot, Cursor, Gemini, and Codex in one step. --- The **webforJ AI plugin** is the recommended way to connect your AI coding assistant to webforJ. One install gives your assistant the full toolkit: live access to webforJ docs, project scaffolding, theme generation, design-token validation, and structured workflows that teach it how to use all of it correctly. diff --git a/docs/docs/integrations/jbang.md b/docs/docs/integrations/jbang.md index d9a5df1c0..fcc590dba 100644 --- a/docs/docs/integrations/jbang.md +++ b/docs/docs/integrations/jbang.md @@ -1,6 +1,7 @@ --- title: JBang sidebar_position: 10 +description: Run webforJ apps as single-file JBang scripts with no Maven, Gradle, or project structure for rapid prototyping and demos. --- # JBang diff --git a/docs/docs/integrations/kotlin-dsl/extending-the-dsl.md b/docs/docs/integrations/kotlin-dsl/extending-the-dsl.md index fb5a43a00..cfbcae7d3 100644 --- a/docs/docs/integrations/kotlin-dsl/extending-the-dsl.md +++ b/docs/docs/integrations/kotlin-dsl/extending-the-dsl.md @@ -1,6 +1,7 @@ --- title: Extending the DSL sidebar_position: 20 +description: Add custom components and composite widgets to the webforJ Kotlin DSL with HasComponents extension functions and the init helper. --- The Kotlin DSL is extensible, allowing the addition of DSL functions for custom components or third-party libraries. You can build composite components that use the DSL internally. diff --git a/docs/docs/integrations/kotlin-dsl/overview.md b/docs/docs/integrations/kotlin-dsl/overview.md index cf5431dc9..464181ff7 100644 --- a/docs/docs/integrations/kotlin-dsl/overview.md +++ b/docs/docs/integrations/kotlin-dsl/overview.md @@ -3,6 +3,7 @@ title: Kotlin DSL sidebar_position: 0 hide_table_of_contents: true hide_giscus_comments: true +description: Build webforJ UIs declaratively with the experimental Kotlin DSL using type-safe builders, lambdas with receivers, and nested blocks. --- diff --git a/docs/docs/integrations/kotlin-dsl/using-the-dsl.md b/docs/docs/integrations/kotlin-dsl/using-the-dsl.md index 780e587f7..0db801710 100644 --- a/docs/docs/integrations/kotlin-dsl/using-the-dsl.md +++ b/docs/docs/integrations/kotlin-dsl/using-the-dsl.md @@ -1,6 +1,7 @@ --- title: Using the DSL sidebar_position: 10 +description: Compose webforJ components with the Kotlin DSL using camelCase builder functions, nested blocks, and receiver-scoped configuration. --- The Kotlin DSL provides builder functions for webforJ components. Each function creates a component, adds it to a parent container, and runs a configuration block. This page covers the patterns and conventions you'll use when building UIs with the DSL. diff --git a/docs/docs/integrations/overview.md b/docs/docs/integrations/overview.md index de73adda9..d7edb0750 100644 --- a/docs/docs/integrations/overview.md +++ b/docs/docs/integrations/overview.md @@ -3,6 +3,7 @@ title: Integrations hide_table_of_contents: true hide_giscus_comments: true sidebar_class_name: has-new-content +description: Combine webforJ with Spring Boot, Spring Data, Kotlin DSL, Webswing, JBang, and AI tooling while keeping your backend stack independent. --- diff --git a/docs/docs/integrations/spring/background-jobs.md b/docs/docs/integrations/spring/background-jobs.md index 6b6a2293c..498333485 100644 --- a/docs/docs/integrations/spring/background-jobs.md +++ b/docs/docs/integrations/spring/background-jobs.md @@ -1,6 +1,7 @@ --- title: Background Jobs sidebar_position: 25 +description: Run Spring @Async services from webforJ views and marshal progress and results back to the UI thread with Environment.runLater. --- When users click a button to generate a report or process data, they expect the interface to remain responsive. Progress bars should animate, buttons should react to hover, and the app shouldn't freeze. Spring's `@Async` annotation makes this possible by moving long-running operations to background threads. diff --git a/docs/docs/integrations/spring/overview.md b/docs/docs/integrations/spring/overview.md index afb0b5ced..33431ff5f 100644 --- a/docs/docs/integrations/spring/overview.md +++ b/docs/docs/integrations/spring/overview.md @@ -3,6 +3,7 @@ title: Spring sidebar_position: 0 hide_table_of_contents: true hide_giscus_comments: true +description: Combine webforJ UI components with Spring Boot for dependency injection, Spring Data repositories, custom scopes, and live reload. --- diff --git a/docs/docs/integrations/spring/routing.md b/docs/docs/integrations/spring/routing.md index 05e97c89d..49edd04c5 100644 --- a/docs/docs/integrations/spring/routing.md +++ b/docs/docs/integrations/spring/routing.md @@ -1,6 +1,7 @@ --- title: Routing sidebar_position: 15 +description: Inject Spring services and repositories into webforJ @Route classes through constructor injection while keeping a fresh instance per navigation. --- Routing in webforJ with Spring works exactly the same way as in plain webforJ applications. You still use the `@Route` annotation to define routes, the same navigation patterns, and the same route lifecycle. The only difference is that when Spring is present, your routes can also receive Spring beans through constructor injection. diff --git a/docs/docs/integrations/spring/scopes.md b/docs/docs/integrations/spring/scopes.md index 7e3976683..2500cedcb 100644 --- a/docs/docs/integrations/spring/scopes.md +++ b/docs/docs/integrations/spring/scopes.md @@ -1,6 +1,7 @@ --- title: Scopes sidebar_position: 16 +description: Use WebforjSessionScope, EnvironmentScope, and RouteScope to control bean lifetimes across sessions, browser tabs, and route hierarchies. --- diff --git a/docs/docs/integrations/spring/spring-boot.md b/docs/docs/integrations/spring/spring-boot.md index eecde7a2b..8eb615c00 100644 --- a/docs/docs/integrations/spring/spring-boot.md +++ b/docs/docs/integrations/spring/spring-boot.md @@ -1,6 +1,7 @@ --- title: Spring Boot sidebar_position: 10 +description: Generate a Spring Boot webforJ project with startforJ or Maven archetypes, or convert an existing WAR project to an embedded Tomcat JAR. --- Spring Boot is a popular choice for building Java apps, providing dependency injection, auto-configuration, and an embedded server model. When using Spring Boot with webforJ, you can inject services, repositories, and other Spring-managed beans directly into your UI components through constructor injection. diff --git a/docs/docs/integrations/spring/spring-data-jpa.md b/docs/docs/integrations/spring/spring-data-jpa.md index a3a3a9937..01ec8ea31 100644 --- a/docs/docs/integrations/spring/spring-data-jpa.md +++ b/docs/docs/integrations/spring/spring-data-jpa.md @@ -1,6 +1,7 @@ --- title: Spring Data JPA sidebar_position: 20 +description: Adapt Spring Data JPA repositories to webforJ Table and Repository components with SpringDataRepository, pagination, sorting, and Specifications. --- Spring Data JPA is the de facto standard for data access in Spring applications, providing repository abstractions, query methods, and specifications for complex queries. The webforJ `SpringDataRepository` adapter bridges Spring Data repositories with webforJ's UI components, enabling you to bind JPA entities directly to UI components, implement dynamic filtering with JPA Specifications, and handle pagination. diff --git a/docs/docs/integrations/webswing/communication.md b/docs/docs/integrations/webswing/communication.md index 51836fbe1..8650cd925 100644 --- a/docs/docs/integrations/webswing/communication.md +++ b/docs/docs/integrations/webswing/communication.md @@ -1,6 +1,7 @@ --- title: Communication sidebar_position: 3 +description: Exchange actions and events between a webforJ app and an embedded Swing app through WebswingConnector lifecycle and custom action handlers. --- The `WebswingConnector` provides bidirectional communication between your webforJ app and the embedded Swing app. This enables you to send commands to the Swing app and receive notifications when events occur within it. diff --git a/docs/docs/integrations/webswing/overview.md b/docs/docs/integrations/webswing/overview.md index decbb6298..5fe9ea25f 100644 --- a/docs/docs/integrations/webswing/overview.md +++ b/docs/docs/integrations/webswing/overview.md @@ -2,6 +2,7 @@ title: Webswing hide_table_of_contents: true hide_giscus_comments: true +description: Embed legacy Swing, JavaFX, or SWT desktop apps inside a webforJ UI through Webswing for progressive modernization and hybrid experiences. --- # Webswing diff --git a/docs/docs/integrations/webswing/setup.md b/docs/docs/integrations/webswing/setup.md index 99311ff15..eb8e838ae 100644 --- a/docs/docs/integrations/webswing/setup.md +++ b/docs/docs/integrations/webswing/setup.md @@ -1,6 +1,7 @@ --- title: Setup and Configuration sidebar_position: 2 +description: Install the Webswing server, register a Swing app in the admin console, and configure CORS so webforJ can embed it with WebswingConnector. --- Integrating Webswing with webforJ involves two components: the Webswing server that hosts your Swing app, and the `WebswingConnector` component in your webforJ app that embeds it. diff --git a/docs/docs/integrations/webswing/tutorial.md b/docs/docs/integrations/webswing/tutorial.md index e5a5a6e72..374f1d870 100644 --- a/docs/docs/integrations/webswing/tutorial.md +++ b/docs/docs/integrations/webswing/tutorial.md @@ -1,6 +1,7 @@ --- title: "Modernization Tutorial" sidebar_position: 4 +description: Modernize a Swing customer management app step by step by embedding it with WebswingConnector and layering in webforJ dialogs and forms. --- This tutorial walks through modernizing an existing Java Swing app by integrating it with webforJ using the `WebswingConnector`. You'll learn how to make a traditional desktop app web-accessible and incrementally add modern web features such as web-based dialogs and interactive forms using webforJ components. diff --git a/docs/docs/introduction/basics.md b/docs/docs/introduction/basics.md index dd056ff91..81c826b13 100644 --- a/docs/docs/introduction/basics.md +++ b/docs/docs/introduction/basics.md @@ -1,5 +1,6 @@ --- title: App Basics +description: Walk through the Application and HomeView classes of the hello-world archetype to see how routing, annotations, and views shape a webforJ app. sidebar_position: 3 --- diff --git a/docs/docs/introduction/getting-started.md b/docs/docs/introduction/getting-started.md index 220ba6021..45f62e0ed 100644 --- a/docs/docs/introduction/getting-started.md +++ b/docs/docs/introduction/getting-started.md @@ -1,5 +1,6 @@ --- title: Getting Started +description: Create a new webforJ project from an archetype using either the startforJ web wizard or a Maven command-line generator. sidebar_position: 2 --- diff --git a/docs/docs/introduction/overview.md b/docs/docs/introduction/overview.md index 02011cd2d..4800b5a77 100644 --- a/docs/docs/introduction/overview.md +++ b/docs/docs/introduction/overview.md @@ -1,5 +1,6 @@ --- title: Introduction Overview +description: Begin with webforJ by reviewing prerequisites, scaffolding a project, exploring app basics, and following the Spring Boot tutorial. hide_table_of_contents: true hide_giscus_comments: true --- diff --git a/docs/docs/introduction/prerequisites.md b/docs/docs/introduction/prerequisites.md index b4af24ae1..bf1eab51b 100644 --- a/docs/docs/introduction/prerequisites.md +++ b/docs/docs/introduction/prerequisites.md @@ -1,5 +1,6 @@ --- title: Prerequisites +description: Set up a webforJ development environment with JDK 21, Apache Maven, and a supported Java IDE such as IntelliJ, VS Code, or NetBeans. sidebar_position: 1 --- diff --git a/docs/docs/introduction/tutorial/overview.md b/docs/docs/introduction/tutorial/overview.md index 56b82106b..11045052b 100644 --- a/docs/docs/introduction/tutorial/overview.md +++ b/docs/docs/introduction/tutorial/overview.md @@ -1,5 +1,6 @@ --- title: Overview +description: Follow a six-step tutorial to build a customer management app with webforJ and Spring Boot, adding routing, data binding, and layout. hide_giscus_comments: true sidebar_class_name: has-new-content --- diff --git a/docs/docs/managing-resources/assets-protocols.md b/docs/docs/managing-resources/assets-protocols.md index d5f860562..9f59ab39e 100644 --- a/docs/docs/managing-resources/assets-protocols.md +++ b/docs/docs/managing-resources/assets-protocols.md @@ -1,6 +1,7 @@ --- sidebar_position: 2 title: Assets Protocols +description: Reference app resources with the webforJ ws, context, and icons protocols to load static files, classpath content, and dynamic icons. --- webforJ supports custom assets protocols that enable structured and efficient resource access. These protocols abstract the complexities of static and dynamic resource retrieval, ensuring that assets are fetched and integrated seamlessly within the app. diff --git a/docs/docs/managing-resources/downloading-files.md b/docs/docs/managing-resources/downloading-files.md index 03cff7c48..b4b49389f 100644 --- a/docs/docs/managing-resources/downloading-files.md +++ b/docs/docs/managing-resources/downloading-files.md @@ -1,6 +1,7 @@ --- sidebar_position: 3 title: Downloading Files +description: Trigger client-side downloads from webforJ using the Page download methods that accept input streams, byte arrays, files, or resource paths. --- webforJ provides methods to initiate file downloads, making it easy to deliver files to users through the browser. The Page class offers several ways to download files, whether they come from input streams, byte arrays, physical files, or resources. diff --git a/docs/docs/managing-resources/importing-assets.md b/docs/docs/managing-resources/importing-assets.md index bc065496b..0aa0c1177 100644 --- a/docs/docs/managing-resources/importing-assets.md +++ b/docs/docs/managing-resources/importing-assets.md @@ -1,6 +1,7 @@ --- sidebar_position: 1 title: Importing Assets +description: Attach JavaScript and CSS to webforJ components or the app using JavaScript, InlineJavaScript, StyleSheet, and InlineStyleSheet annotations. --- Assets annotations provide a declarative approach to embedding external and inline resources such as JavaScript and CSS within an app statically. These annotations streamline resource management by ensuring dependencies are loaded at the appropriate execution phase, reducing manual configuration and enhancing maintainability. diff --git a/docs/docs/managing-resources/overview.md b/docs/docs/managing-resources/overview.md index e1131ac10..8339b60f4 100644 --- a/docs/docs/managing-resources/overview.md +++ b/docs/docs/managing-resources/overview.md @@ -1,6 +1,7 @@ --- sidebar_position: 1 title: Managing Resources +description: Manage JavaScript, CSS, and other assets in webforJ apps with declarative annotations, runtime injection APIs, and custom URL protocols. hide_table_of_contents: true hide_giscus_comments: true --- diff --git a/docs/docs/routing/defining-routes.md b/docs/docs/routing/defining-routes.md index 5563002a3..a4c589b79 100644 --- a/docs/docs/routing/defining-routes.md +++ b/docs/docs/routing/defining-routes.md @@ -1,6 +1,7 @@ --- sidebar_position: 3 title: Defining Routes +description: Map URLs to webforJ components with the @Route annotation and define multiple paths to the same view using @RouteAlias. --- Defining routes is essential for mapping URLs to specific components. This allows you to control how different parts of your UI are rendered based on the URL structure. The framework uses the `@Route` annotation to make this process declarative and straightforward, reducing the need for manual configuration. diff --git a/docs/docs/routing/navigation-lifecycle/navigation-blocking.md b/docs/docs/routing/navigation-lifecycle/navigation-blocking.md index d2e2ea726..483baf475 100644 --- a/docs/docs/routing/navigation-lifecycle/navigation-blocking.md +++ b/docs/docs/routing/navigation-lifecycle/navigation-blocking.md @@ -1,6 +1,7 @@ --- sidebar_position: 3 title: Navigation Blocking +description: Intercept navigation with WillLeaveObserver veto handlers and the beforeunload event to guard unsaved changes. --- Navigation blocking adds one or more layers of control to the entire underlying router API. If any blocking handlers are present, navigation will be prevented as follows: diff --git a/docs/docs/routing/navigation-lifecycle/navigation-events.md b/docs/docs/routing/navigation-lifecycle/navigation-events.md index ffa42c951..1cab6ddfb 100644 --- a/docs/docs/routing/navigation-lifecycle/navigation-events.md +++ b/docs/docs/routing/navigation-lifecycle/navigation-events.md @@ -1,6 +1,7 @@ --- sidebar_position: 4 title: Navigation Events +description: Register global router listeners for WillEnter, DidEnter, WillLeave, DidLeave, Navigate, and Activate lifecycle events. --- In addition to component-specific lifecycle events, you can register **global event listeners** at the router level. This allows for tracking navigation globally across the entire app, making it useful for logging, analytics, or other cross-cutting concerns. diff --git a/docs/docs/routing/navigation-lifecycle/observers.md b/docs/docs/routing/navigation-lifecycle/observers.md index c44f6f333..d08fc7c2f 100644 --- a/docs/docs/routing/navigation-lifecycle/observers.md +++ b/docs/docs/routing/navigation-lifecycle/observers.md @@ -1,6 +1,7 @@ --- sidebar_position: 2 title: Lifecycle Observers +description: Hook into route lifecycle stages by implementing WillEnter, DidEnter, WillLeave, DidLeave, and Activate observer interfaces. --- Observers allow components to react to lifecycle events by implementing interfaces for specific stages. This pattern ensures a clean separation of concerns and simplifies handling navigation logic. diff --git a/docs/docs/routing/navigation-lifecycle/overview.md b/docs/docs/routing/navigation-lifecycle/overview.md index e2366d83e..395d3faea 100644 --- a/docs/docs/routing/navigation-lifecycle/overview.md +++ b/docs/docs/routing/navigation-lifecycle/overview.md @@ -2,6 +2,7 @@ sidebar_position: 1 title: Navigation Lifecycle hide_giscus_comments: true +description: Coordinate validation, data loading, and cleanup during route transitions with the webforJ navigation lifecycle events. --- diff --git a/docs/docs/routing/navigational-frame-titles.md b/docs/docs/routing/navigational-frame-titles.md index 93a98c114..8d4fad462 100644 --- a/docs/docs/routing/navigational-frame-titles.md +++ b/docs/docs/routing/navigational-frame-titles.md @@ -1,6 +1,7 @@ --- sidebar_position: 10 title: Navigational Frame Titles +description: Set browser frame titles per route with the @FrameTitle annotation or generate them dynamically using HasFrameTitle. --- In webforJ, all routes are rendered within a Frame, which serves as a top-level container responsible for displaying the content of the current route. As users navigate between different routes, the Frame Title is updated dynamically to reflect the active view, helping provide clear context on the user's current location within the app. diff --git a/docs/docs/routing/overview.md b/docs/docs/routing/overview.md index 4aa80b04b..c9953d0f7 100644 --- a/docs/docs/routing/overview.md +++ b/docs/docs/routing/overview.md @@ -3,6 +3,7 @@ sidebar_position: 1 title: Routing hide_table_of_contents: true hide_giscus_comments: true +description: Drive client-side navigation in webforJ with URL-based component mapping, deep linking, and preserved app state between views. --- diff --git a/docs/docs/routing/query-parameters.md b/docs/docs/routing/query-parameters.md index 8dbfe446e..9b9079504 100644 --- a/docs/docs/routing/query-parameters.md +++ b/docs/docs/routing/query-parameters.md @@ -1,6 +1,7 @@ --- sidebar_position: 6 title: Query Parameters +description: Read, type-cast, and iterate URL query string values in webforJ views using the ParametersBag and Location APIs. --- Query parameters allow you to pass additional data through URLs, using the format `?key1=value1&key2=value2`. While route parameters are used to pass required data within the URL path, query parameters provide a flexible mechanism for passing optional or additional data. They're especially useful when filtering content, sorting, or handling multiple values for the same key. diff --git a/docs/docs/routing/routable-apps.md b/docs/docs/routing/routable-apps.md index f880c46a7..63f47acd1 100644 --- a/docs/docs/routing/routable-apps.md +++ b/docs/docs/routing/routable-apps.md @@ -1,6 +1,7 @@ --- sidebar_position: 2 title: Routable Apps +description: Enable webforJ routing with the @Routify annotation to scan packages, manage frames, and control browser history. --- Routing in webforJ is an optional tool. Developers can choose between the webforJ routing solution or a traditional model with `Frame` manipulation and without deep linking. To enable routing, the **`@Routify`** annotation must be applied at the level of a class implementing `App`. This grants webforJ the authority to manage browser history, respond to navigation events, and render the app’s components based on the URL. diff --git a/docs/docs/routing/route-hierarchy/nested-routes.md b/docs/docs/routing/route-hierarchy/nested-routes.md index 9dca0997c..efa131e17 100644 --- a/docs/docs/routing/route-hierarchy/nested-routes.md +++ b/docs/docs/routing/route-hierarchy/nested-routes.md @@ -1,6 +1,7 @@ --- sidebar_position: 2 title: Nested Routes +description: Compose parent-child route hierarchies with the @Route outlet parameter to share layouts and reuse UI across views. --- Nested routes allow child routes to be rendered within parent routes, creating a modular and reusable UI. Parent routes define shared components, while child routes are injected into specific outlets within these parent components. diff --git a/docs/docs/routing/route-hierarchy/overview.md b/docs/docs/routing/route-hierarchy/overview.md index e27111d44..70acafe42 100644 --- a/docs/docs/routing/route-hierarchy/overview.md +++ b/docs/docs/routing/route-hierarchy/overview.md @@ -2,6 +2,7 @@ sidebar_position: 1 title: Route Hierarchy hide_giscus_comments: true +description: Organize webforJ routes into parent-child trees with view routes, layout routes, outlets, and nested components. --- diff --git a/docs/docs/routing/route-hierarchy/route-outlets.md b/docs/docs/routing/route-hierarchy/route-outlets.md index 9afb7fcf7..8c2ed1c92 100644 --- a/docs/docs/routing/route-hierarchy/route-outlets.md +++ b/docs/docs/routing/route-hierarchy/route-outlets.md @@ -1,6 +1,7 @@ --- sidebar_position: 3 title: Route Outlets +description: Render child routes inside parent containers using HasComponents outlets, frames, and the RouteOutlet interface. --- An **outlet** is a designated component, either a [route layout](./route-types#layout-routes) or a [route view](./route-types#view-routes), where child routes are dynamically rendered. It defines where the content of the child route will appear within the parent route. Outlets are fundamental to creating modular, nested UIs and flexible navigation structures. diff --git a/docs/docs/routing/route-hierarchy/route-types.md b/docs/docs/routing/route-hierarchy/route-types.md index 7044b27d2..13f57c3ba 100644 --- a/docs/docs/routing/route-hierarchy/route-types.md +++ b/docs/docs/routing/route-hierarchy/route-types.md @@ -1,6 +1,7 @@ --- sidebar_position: 1 title: Route Types +description: Distinguish webforJ view routes that map to URL segments from layout routes that wrap shared UI without affecting the path. --- Routes are classified into two main types, **View Routes** and **Layout Routes**. The choice of route type determines how components are mapped to URLs and how they interact with other parts of your app. diff --git a/docs/docs/routing/route-navigation.md b/docs/docs/routing/route-navigation.md index cd6ff9f2e..29861ec96 100644 --- a/docs/docs/routing/route-navigation.md +++ b/docs/docs/routing/route-navigation.md @@ -1,6 +1,7 @@ --- sidebar_position: 4 title: Route Navigation +description: Trigger client-side navigation programmatically with Router.navigate, pass parameters, and switch views without reloads. --- In webforJ, navigating between routes is the core mechanism for switching views and components based on user actions or URL changes. Navigation allows users to move seamlessly between different parts of the app without refreshing the page. This client-side navigation keeps the app responsive and smooth while preserving the app's state. diff --git a/docs/docs/routing/route-patterns.md b/docs/docs/routing/route-patterns.md index 25c199f50..4a09e358f 100644 --- a/docs/docs/routing/route-patterns.md +++ b/docs/docs/routing/route-patterns.md @@ -1,6 +1,7 @@ --- sidebar_position: 5 title: Route Patterns +description: Define dynamic URL segments, optional parameters, wildcards, and regex constraints to match webforJ routes precisely. --- **Route Patterns** are used to define how URLs map to specific views, including dynamic and optional segments, regular expressions, and wildcards. Route patterns enable the framework to match URLs, extract parameters, and generate URLs dynamically. They play a critical role in structuring an app's navigation and component rendering based on the browser's location. diff --git a/docs/docs/routing/route-transitions.md b/docs/docs/routing/route-transitions.md index 66f676e4a..509233ff2 100644 --- a/docs/docs/routing/route-transitions.md +++ b/docs/docs/routing/route-transitions.md @@ -1,6 +1,7 @@ --- sidebar_position: 12 title: Route Transitions +description: Animate route changes with the @RouteTransition annotation using fades, slides, and zooms powered by the View Transitions API. --- diff --git a/docs/docs/routing/routes-registration.md b/docs/docs/routing/routes-registration.md index 2b3a35a80..15cbd2ed6 100644 --- a/docs/docs/routing/routes-registration.md +++ b/docs/docs/routing/routes-registration.md @@ -1,6 +1,7 @@ --- sidebar_position: 11 title: Routes Registration +description: Register, update, and remove routes at runtime through the RouteRegistry API for dynamic, role-aware navigation. --- In addition to [registering routes using the `@Route` annotations](./defining-routes), it's possible to dynamically register, update, or remove routes at runtime based on app logic, user roles, or other conditions. This flexibility enables you to manage navigation more dynamically, rather than statically defining routes at compile time. diff --git a/docs/docs/routing/state-management.md b/docs/docs/routing/state-management.md index 3d3eceba0..cea92f07b 100644 --- a/docs/docs/routing/state-management.md +++ b/docs/docs/routing/state-management.md @@ -1,6 +1,7 @@ --- sidebar_position: 7 title: State Management +description: Reflect app state in the URL with BrowserHistory pushState and replaceState to support bookmarks and back-button navigation. --- Creating seamless, dynamic user experiences often requires that the state of your web app be reflected in the URL and retained across browser navigation events. You can achieve this without reloading the page by leveraging URL parameter updates and browser history state management. This ensures that users can share, bookmark, or return to specific views with the app fully aware of their prior interactions. diff --git a/docs/docs/security/accessing-user.md b/docs/docs/security/accessing-user.md index 08271251c..301807def 100644 --- a/docs/docs/security/accessing-user.md +++ b/docs/docs/security/accessing-user.md @@ -1,6 +1,7 @@ --- title: Accessing User sidebar_position: 4 +description: Read the current user, roles, and authorities from Spring Security's SecurityContextHolder inside webforJ views. --- Spring Security stores authenticated user information in the `SecurityContextHolder`, providing access to username, roles, and authorities throughout your app. This section shows how to retrieve and use this information in webforJ views and components. diff --git a/docs/docs/security/annotations.md b/docs/docs/security/annotations.md index a6748a6b9..4c1ebf0ec 100644 --- a/docs/docs/security/annotations.md +++ b/docs/docs/security/annotations.md @@ -1,6 +1,7 @@ --- sidebar_position: 3 title: Security Annotations +description: Restrict webforJ routes declaratively with @AnonymousAccess, @PermitAll, @RolesAllowed, and @DenyAll annotations. --- Security annotations provide a declarative way to control access to routes in your webforJ app. By adding annotations to your route components, you define who can access each view without writing manual permission checks. The security system automatically enforces these rules before any component is rendered. diff --git a/docs/docs/security/architecture/custom-implementation.md b/docs/docs/security/architecture/custom-implementation.md index e9be30215..8fe19817d 100644 --- a/docs/docs/security/architecture/custom-implementation.md +++ b/docs/docs/security/architecture/custom-implementation.md @@ -1,6 +1,7 @@ --- sidebar_position: 6 title: Custom Implementation Example +description: Build a session-based security stack by implementing SecurityConfiguration, SecurityContext, SecurityManager, and SecurityRegistrar. --- This guide walks through building a complete custom security implementation using session-based authentication. You'll learn how the four core interfaces work together by implementing them from scratch. diff --git a/docs/docs/security/architecture/evaluator-chain.md b/docs/docs/security/architecture/evaluator-chain.md index 4e8fda6db..c9c58a49c 100644 --- a/docs/docs/security/architecture/evaluator-chain.md +++ b/docs/docs/security/architecture/evaluator-chain.md @@ -1,6 +1,7 @@ --- sidebar_position: 4 title: Evaluator Chain +description: Evaluate route access through a priority-ordered chain of evaluators using the chain of responsibility pattern. --- The evaluator chain is the heart of webforJ's security system. It's a priority-ordered sequence of evaluators that examine routes and make access decisions using the chain of responsibility design pattern. Understanding how the chain works helps you create custom evaluators and troubleshoot unexpected access denials. diff --git a/docs/docs/security/architecture/foundational-architecture.md b/docs/docs/security/architecture/foundational-architecture.md index a3f5f95d9..d67f135d9 100644 --- a/docs/docs/security/architecture/foundational-architecture.md +++ b/docs/docs/security/architecture/foundational-architecture.md @@ -1,6 +1,7 @@ --- sidebar_position: 2 title: Foundational Architecture +description: Understand the core RouteSecurityManager, Context, Configuration, and Evaluator interfaces that power webforJ access control. --- The webforJ security system is built on a foundation of core interfaces that work together to provide route-level access control. These interfaces define the contracts for security behavior, allowing different implementations, whether session-based, based on JSON Web Tokens (JWT), LDAP-integrated, or database-backed, to plug into the same underlying framework. diff --git a/docs/docs/security/architecture/navigation-flow.md b/docs/docs/security/architecture/navigation-flow.md index ac3587c74..297035626 100644 --- a/docs/docs/security/architecture/navigation-flow.md +++ b/docs/docs/security/architecture/navigation-flow.md @@ -1,6 +1,7 @@ --- sidebar_position: 3 title: Navigation Flow +description: Trace how RouteSecurityObserver intercepts navigation, runs evaluators, and redirects users before any view renders. --- Security enforcement in webforJ happens automatically during navigation. When a user clicks a link or navigates to a route, the security system intercepts the navigation, evaluates access rules, and either allows the navigation to proceed or redirects the user to an appropriate page. This interception is invisible to users and requires no manual security checks in your component code. diff --git a/docs/docs/security/architecture/overview.md b/docs/docs/security/architecture/overview.md index 2876015e0..fa6e83189 100644 --- a/docs/docs/security/architecture/overview.md +++ b/docs/docs/security/architecture/overview.md @@ -3,6 +3,7 @@ sidebar_position: 1 title: Security Architecture hide_table_of_contents: true hide_giscus_comments: true +description: Explore the foundational interfaces and patterns that let you build custom security implementations beyond Spring Security. --- diff --git a/docs/docs/security/custom-evaluators.md b/docs/docs/security/custom-evaluators.md index ff733a8cf..e1add9857 100644 --- a/docs/docs/security/custom-evaluators.md +++ b/docs/docs/security/custom-evaluators.md @@ -1,6 +1,7 @@ --- sidebar_position: 6 title: Custom Evaluators +description: Write custom RouteSecurityEvaluators for context-aware checks like ownership verification beyond role-based permissions. --- Custom evaluators extend webforJ's security system with specialized access control logic beyond basic authentication and role checks. Use them when you need to verify dynamic conditions that depend on request context, not just user permissions. diff --git a/docs/docs/security/getting-started.md b/docs/docs/security/getting-started.md index 313cd819b..0e6dd3c8e 100644 --- a/docs/docs/security/getting-started.md +++ b/docs/docs/security/getting-started.md @@ -1,6 +1,7 @@ --- title: Getting Started sidebar_position: 2 +description: Integrate Spring Security with webforJ to handle authentication, login views, password encoding, and protected routes. --- Spring Security provides authentication and authorization for Spring Boot applications. When integrated with webforJ, it protects routes using annotations while Spring handles user management and sessions. diff --git a/docs/docs/security/overview.md b/docs/docs/security/overview.md index b6615a1bf..c535b9a61 100644 --- a/docs/docs/security/overview.md +++ b/docs/docs/security/overview.md @@ -3,6 +3,7 @@ sidebar_position: 1 title: Security hide_table_of_contents: true hide_giscus_comments: true +description: Protect webforJ routes with declarative annotations and centralized authentication and authorization enforcement. --- diff --git a/docs/docs/security/spel-expressions.md b/docs/docs/security/spel-expressions.md index 46bcfcfbd..7bedcd091 100644 --- a/docs/docs/security/spel-expressions.md +++ b/docs/docs/security/spel-expressions.md @@ -1,6 +1,7 @@ --- sidebar_position: 5 title: SpEL Expressions +description: Author route authorization rules with Spring Expression Language using @RouteAccess for role, authority, and custom checks. --- Spring Expression Language (`SpEL`) provides a declarative way to define authorization rules directly in annotations. The `@RouteAccess` annotation evaluates `SpEL` expressions using Spring Security's built-in authorization functions. diff --git a/docs/docs/styling/borders.md b/docs/docs/styling/borders.md index 5090e51f5..84bbf6e3f 100644 --- a/docs/docs/styling/borders.md +++ b/docs/docs/styling/borders.md @@ -1,6 +1,7 @@ --- sidebar_position: 6 title: Border +description: Control component border width, style, color, and radius scale through the DWC border CSS custom properties. --- The border properties are used to control the component border style and width. See [available border styles](https://developer.mozilla.org/en-US/docs/Web/CSS/border-style). diff --git a/docs/docs/styling/colors.md b/docs/docs/styling/colors.md index e95f56a7b..f61da4de1 100644 --- a/docs/docs/styling/colors.md +++ b/docs/docs/styling/colors.md @@ -1,6 +1,7 @@ --- sidebar_position: 3 title: Colors +description: Configure DWC color palettes through hue and saturation seeds that generate consistent shades for primary, status, and neutral tones. --- webforJ provides a color system built on CSS custom properties. These color variables keep consistent visual style across your app while giving you full control to customize palettes according to your design needs. diff --git a/docs/docs/styling/css-variables.md b/docs/docs/styling/css-variables.md index 070f951e2..5fb68cfdc 100644 --- a/docs/docs/styling/css-variables.md +++ b/docs/docs/styling/css-variables.md @@ -1,6 +1,7 @@ --- sidebar_position: 1 title: CSS Variables +description: Define, scope, and consume CSS custom properties to control webforJ component styling at runtime without preprocessors. --- CSS Variables play a central role in customizing the appearance of webforJ components. These variables store reusable values such as colors, font sizes, and spacing, that can be applied consistently across your app. diff --git a/docs/docs/styling/overview.md b/docs/docs/styling/overview.md index 471f8ca5b..5169711f1 100644 --- a/docs/docs/styling/overview.md +++ b/docs/docs/styling/overview.md @@ -2,6 +2,7 @@ title: Styling hide_table_of_contents: true hide_giscus_comments: true +description: Style webforJ apps with the DWC design system using CSS custom properties, palettes, shadow parts, and the Figma kit. --- diff --git a/docs/docs/styling/shadow-parts.md b/docs/docs/styling/shadow-parts.md index af3ef7adb..00bba4d15 100644 --- a/docs/docs/styling/shadow-parts.md +++ b/docs/docs/styling/shadow-parts.md @@ -1,6 +1,7 @@ --- sidebar_position: 2 title: Shadow Parts +description: Reach into webforJ component shadow DOM with the CSS ::part() selector to style internal elements while preserving encapsulation. --- CSS **Shadow Parts** give developers a way to style elements inside a component’s shadow DOM from the outside, while still preserving encapsulation. diff --git a/docs/docs/styling/shadows.md b/docs/docs/styling/shadows.md index 37b2a5dd0..6366b1964 100644 --- a/docs/docs/styling/shadows.md +++ b/docs/docs/styling/shadows.md @@ -1,6 +1,7 @@ --- sidebar_position: 7 title: Shadows +description: Layer elements with the DWC box-shadow scale from xs to 2xl, with shadows that adapt automatically to light and dark modes. --- The shadow properties add shadow effects around an element's frame. Shadows signify items that are layered on top of each other in the user interface. diff --git a/docs/docs/styling/sizing-and-spacing.md b/docs/docs/styling/sizing-and-spacing.md index 9185168c8..26e0c9a09 100644 --- a/docs/docs/styling/sizing-and-spacing.md +++ b/docs/docs/styling/sizing-and-spacing.md @@ -1,6 +1,7 @@ --- sidebar_position: 5 title: Sizing and Spacing +description: Apply a consistent component sizing and spacing scale across layouts using DWC rem-based size and space CSS variables. --- Spacing and sizing tokens are used to provide consistent spacing and sizing in your app. All sizing and spacing properties are defined in `rem`. diff --git a/docs/docs/styling/state.md b/docs/docs/styling/state.md index 3a8b68418..519236b59 100644 --- a/docs/docs/styling/state.md +++ b/docs/docs/styling/state.md @@ -1,6 +1,7 @@ --- sidebar_position: 9 title: State +description: Style interactive component states with DWC tokens for disabled opacity, focus ring color, and press-feedback scales. --- State tokens define how components visually respond to user interaction, such as when they're disabled or focused. These variables help ensure consistent behavior and styling across all UI elements, and can be easily customized to match your design system. diff --git a/docs/docs/styling/surfaces.md b/docs/docs/styling/surfaces.md index 8bc9a64d8..985e60068 100644 --- a/docs/docs/styling/surfaces.md +++ b/docs/docs/styling/surfaces.md @@ -1,6 +1,7 @@ --- sidebar_position: 8 title: Surfaces +description: Layer UI hierarchy with three mode-aware DWC surface tokens for page backgrounds, cards, and popovers or dialogs. --- DWC defines three levels of surfaces which are used to organize the UI hierarchy combined with [shadows](./shadows). All [palette colors](./colors) are tested to have enough contrast with these surfaces. diff --git a/docs/docs/styling/themes.md b/docs/docs/styling/themes.md index a31022024..9832ba51d 100644 --- a/docs/docs/styling/themes.md +++ b/docs/docs/styling/themes.md @@ -1,6 +1,7 @@ --- sidebar_position: 2 title: Themes +description: Apply built-in light, dark, and dark-pure themes with @AppTheme or define custom themes through data-app-theme selectors. --- webforJ includes three built-in app themes and supports defining your own custom themes. The default themes are: diff --git a/docs/docs/styling/transitions-easing.md b/docs/docs/styling/transitions-easing.md index c177b59fe..50ec0cbed 100644 --- a/docs/docs/styling/transitions-easing.md +++ b/docs/docs/styling/transitions-easing.md @@ -1,6 +1,7 @@ --- sidebar_position: 10 title: Transitions & Easing +description: Animate UI changes with consistent DWC duration tokens and cubic-bezier easing curves for natural-feeling transitions. --- Transition variables are used to provide consistent animation durations across your app. They control how long an animation takes to complete. diff --git a/docs/docs/styling/typography.md b/docs/docs/styling/typography.md index 4d3228bd3..f84c5d6e4 100644 --- a/docs/docs/styling/typography.md +++ b/docs/docs/styling/typography.md @@ -1,6 +1,7 @@ --- sidebar_position: 4 title: Typography +description: Tune font family, size, weight, and line height across webforJ apps with the DWC typography CSS custom properties. --- Typography tokens are used to maintain a consistent set of font styles throughout your app. diff --git a/docs/docs/testing/e2e/overview.md b/docs/docs/testing/e2e/overview.md index bac08e4fa..33417f0d6 100644 --- a/docs/docs/testing/e2e/overview.md +++ b/docs/docs/testing/e2e/overview.md @@ -1,5 +1,6 @@ --- title: End-to-End (E2E) Testing +description: Run end-to-end tests against webforJ apps using browser automation tools such as Selenium and Playwright to simulate real user flows. hide_table_of_contents: true hide_giscus_comments: true --- diff --git a/docs/docs/testing/e2e/playwright.md b/docs/docs/testing/e2e/playwright.md index c7ca026b8..d082fb48d 100644 --- a/docs/docs/testing/e2e/playwright.md +++ b/docs/docs/testing/e2e/playwright.md @@ -1,6 +1,7 @@ --- sidebar_position: 2 title: Testing with Playwright +description: Drive a webforJ app from JUnit using the Playwright Java bindings to fill fields, click buttons, and assert rendered output in the browser. --- This documentation outlines the process for testing webforJ applications using Playwright, specifically focusing on the `HelloWorldView` from the `webforj-archetype-hello-world`. diff --git a/docs/docs/testing/e2e/selenium.md b/docs/docs/testing/e2e/selenium.md index bff50f4bb..b319f4d82 100644 --- a/docs/docs/testing/e2e/selenium.md +++ b/docs/docs/testing/e2e/selenium.md @@ -1,6 +1,7 @@ --- sidebar_position: 3 title: Testing with Selenium +description: Drive a webforJ app from JUnit with Selenium WebDriver and WebDriverManager to simulate user interactions and assert UI state. --- This documentation outlines the process for testing a webforJ apps using Selenium, specifically focusing on the `HelloWorldView` from diff --git a/docs/docs/testing/overview.md b/docs/docs/testing/overview.md index 9ee4417b2..38c4dd475 100644 --- a/docs/docs/testing/overview.md +++ b/docs/docs/testing/overview.md @@ -1,6 +1,7 @@ --- sidebar_position: 1 title: Testing +description: Combine JUnit unit tests with Selenium or Playwright end-to-end tests to validate webforJ components, logic, and full user journeys. hide_table_of_contents: true hide_giscus_comments: true --- diff --git a/docs/docs/testing/property-descriptor-tester.md b/docs/docs/testing/property-descriptor-tester.md index d3f694800..b47af66c0 100644 --- a/docs/docs/testing/property-descriptor-tester.md +++ b/docs/docs/testing/property-descriptor-tester.md @@ -1,6 +1,7 @@ --- sidebar_position: 4 title: PropertyDescriptorTester +description: Validate PropertyDescriptor fields on wrapped web components by checking getters, setters, and default values with PropertyDescriptorTester. --- diff --git a/docs/docs/upgrading/automated-upgrades.md b/docs/docs/upgrading/automated-upgrades.md index 10e704562..c44b8fbb5 100644 --- a/docs/docs/upgrading/automated-upgrades.md +++ b/docs/docs/upgrading/automated-upgrades.md @@ -1,6 +1,7 @@ --- sidebar_position: 1 title: Automated Upgrades +description: Migrate webforJ projects between versions automatically with OpenRewrite recipes that rename APIs, update dependencies, and flag manual fixes. sidebar_class_name: new-content --- diff --git a/docs/docs/upgrading/overview.md b/docs/docs/upgrading/overview.md index 7dc03e5e9..bb72fef2d 100644 --- a/docs/docs/upgrading/overview.md +++ b/docs/docs/upgrading/overview.md @@ -1,6 +1,7 @@ --- sidebar_position: 1 title: Upgrading Guides +description: Understand the webforJ release cadence for major, minor, and patch versions and find guidance for upgrading apps between releases. hide_table_of_contents: true hide_giscus_comments: true sidebar_class_name: has-new-content