Capability

Development and Tooling

Liferay offers a comprehensive toolkit to extend or customize your digital experience. Build applications quickly with low-code/no-code features like Objects, or leverage developer tools like Liferay Workspace and Blade CLI for further customizations.

For users on PaaS or running Self-Hosted, Liferay also offers tools deploying customizations.

Feature
Deployment Approach
Client Extensions UI Reference
Client Extensions UI Reference Liferay's widget client extensions (custom element and iframe) register applications with Liferay, adding them as widgets to site pages. Additionally, you can style...
Using Job Scheduler
Using Job Scheduler Liferay Self-Hosted Liferay PaaS Job Scheduler is a flexible framework built on Liferay's scheduler engine for running and scheduling business logic. This framework uses the...
Servlets
Servlets
Listening for Messages
Listening for Messages You can listen for messages sent to any registered Message Bus destination, whether it's built-in to DXP/Portal, defined by third-parties, or created by you. Messages sent to...
Bundling and Copying Files from an Existing Theme
Bundling and Copying Files from an Existing Theme By using gulp's kickstart task, you can copy the files from a previously created theme into any theme you choose. This functionality is useful in...
CSS YAML Configuration Reference
CSS YAML Configuration Reference You can define a CSS client extension with a client-extension.yaml file. Usage Details This client-extension.yaml file defines a CSS client extension definition: ...
Using a CSS Client Extension
Using a CSS Client Extension Liferay 7.4+ CSS client extensions introduce new CSS styling to pages. A deployed CSS client extension on a page adds to the page's existing styling, including theme...
Embedding Widgets Using Templates
Embedding Widgets Using Templates You can embed a widget in your theme to make it available on all pages using the chosen template file. When you are embedding a widget, you will need to reference...
Bundling Resources
Bundling Resources
Bundling and Installing Resources into Your Theme via Themelets
Bundling and Installing Resources into Your Theme via Themelets Themelets are small, modular pieces of code that you can reuse in multiple themes. Unlike themes themselves, themelets may only...
Bundling a Thumbnail Preview into Your Theme
Bundling a Thumbnail Preview into Your Theme A theme's thumbnail is the visual representation of how the theme looks when it is applied to a Site. The thumbnail is shown in the theme selection menu...
Using a JavaScript Client Extension
Using a JavaScript Client Extension Liferay 7.4+ With a JavaScript (JS) client extension, you can run your own JavaScript on any page in Liferay without worrying about dependencies on Liferay code...
Using a Theme Favicon Client Extension
Using a Theme Favicon Client Extension Liferay 7.4+ With a theme favicon client extension, you can override the theme's favicon on the selected page. Start with the sample workspace to build and...
Message Bus
Message Bus The Message Bus provides a loosely coupled way to exchange messages. A class sending a message invokes the Message Bus to send the message to a destination, while other classes...
Setting Up an Environment and Creating a Theme
Setting Up an Environment and Creating a Theme Creating a theme is the first step in theme development. Once you have your own theme, you can deploy it to your Liferay DXP instance, and use it for...
Theme CSS YAML Configuration Reference
Theme CSS YAML Configuration Reference You can define a theme CSS client extension with a client-extension.yaml file. Usage Details This client-extension.yaml file defines a theme CSS client...
Bundling Independent UI Resources via Theme Contributors
Bundling Independent UI Resources via Theme Contributors Theme contributors are modules that contain CSS and JavaScript resources and apply them to every page. They are independent from specific...
Upgrading a Theme
Upgrading a Theme Themes developed for previous versions of Liferay DXP must be upgraded in order to be deployed to a new version. The gulp upgrade task updates Liferay version references and theme...
Using a Theme CSS Client Extension
Using a Theme CSS Client Extension Liferay 7.4+ With a theme CSS client extension, you can override the current theme's CSS files (main.css and clay.css) to change the look and feel of a page....
Using a Theme Sprite Map Client Extension
Using a Theme Sprite Map Client Extension Liferay DXP 2023.Q4+/Portal GA100+ With a theme sprite map client extension, you can override the default Clay sprite map used for icons on a page. Start...