thumbnail
David H Nebinger | 20 Nov 2025

At Liferay DevCon today, someone asked me a great question: “How do you develop and test a local custom element (a standard Web Component) while still using the Liferay JS global object?” We talked it through, and I hinted I’d get a blog post up about it. Since I’m sure others will hit this same challenge… here we go. Good news: it’s easier than you might...

70
0
thumbnail
David H Nebinger | 19 Nov 2025

Day 2 of Liferay DevCon 2025 has wrapped, but my favorite day is still ahead: the UnConference. Once again, my good friend Olaf will be running it; if you’ve never experienced an UnConference before, it’s something truly unique. For those who don’t know what an UnConference is, think of it as the anti-conference: No pre-set agenda. No scheduled workshops. No rigid...

66
0
thumbnail
David H Nebinger | 18 Nov 2025

Today at Liferay DevCon 2025, I had the opportunity to watch two live demos showcasing the brand-new Liferay + Camunda partnership, and they were genuinely impressive. The demos showed not only the technical integration points, but also how AI-infused process orchestration can transform onboarding, customer service, financial workflows, and more. I captured several photos ...

61
0
thumbnail
Gabriel Prates | 17 Nov 2025

Having a good developer experience is the key to improve productivity, satisfaction and the impact of our work. In the frontend world, Hot Module Replacement is a way to significantly speed up development, let’s talk about how we can apply this technique with FE Client Extensions. It is not required, but highly recommended that you read Saving Cloud (SaaS) resources for FE...

43
0
thumbnail
Ben Turner | 17 Nov 2025

Hi everyone, I'm really excited to announce that we have a new approach that you can use to tell us about the things that you think should be in the product. It's called "Product Ideas", and it's live, as of today, on discuss.liferay.com. You can find it here: https://discuss.liferay.com/c/product-ideas/ Why does this matter? Your feedback is the...

68
0
thumbnail
Peter Richards | 13 Nov 2025

At DEVCON 2025, I will be delivering a hands-on session focused on building consistent, accessible, and fully responsive navigation using Liferay’s Responsive Menu Fragments. The session is designed to give you practical techniques you can apply immediately in real projects, whether you’re designing multi-site layouts, or improving navigation across devices. Session Details ...

108
0
thumbnail
Ben Turner | 12 Nov 2025

Hi Everyone! I'm excited to announce that the release webinar for our final release of 2025 - the 2025.Q4 release - is coming up in just a few weeks, on Wednesday, December 3rd. The webinar will follow the usual agenda, which is: The release timeline Highlights of the 2025.Q4 release A live Q&A with me and our Product Managers where you can ask anything you want...

135
0
thumbnail
Daniel Martinez Cisneros | 06 Nov 2025

This article explains: Where to place cache configuration files How to reference them in portal-ext.properties Real‑world tuning examples for improving performance   Background: Ehcache in Liferay Liferay uses two main cache layers: Single‑VM Cache: Local in‑JVM cache used for, ...

29
0
thumbnail
Fabian Bouché | 06 Nov 2025

Many developers eventually run load tests on their Liferay environments, and a common complaint is that authentication becomes a major performance bottleneck. This happens because password authentication in Liferay is intentionally slow — it’s designed that way to mitigate brute-force attacks. During load testing, however, this security feature can dramatically skew results. ...

22
0
thumbnail
Tibor Lipusz | 05 Nov 2025

Much has changed in the fields of LLMs and AI since we announced our semantic search capability through integration with third-party providers (Hugging Face, txtai) in May 2023. The technologies have improved, and today AI-driven features surround almost every service and product we interact with daily. ​​​​​​​ Since the initial release, we have added support for...

72
0
thumbnail
Ben Turner | 28 Oct 2025

Hi everyone, As I continue to get my feet well under the Community table, I'm trying to make liferay.dev a more engaging and generally more useful experience for you all. As of right now (like, a minute OK), I've launched a new experience for Blogs. This consists of two major changes: The Blogs listing page (liferay.dev/blogs) is now a Search Results page, rather...

194
0
thumbnail
Michael Wall | 14 Oct 2025

Introduction The Liferay Dynamic Data Lists (DDL) functionality is now deprecated and marked for removal, with Liferay Objects the replacement for DDL. For customers migrating existing DDL Lists to Liferay Objects, where the customer used the DDL 'Display Template' functionality to display a collection of DDL Records, this OSGi Liferay MVC widget is intended as an...

940
0
thumbnail
YOGESH CHANDRA | 20 Oct 2025

1. Introduction: Why It’s Time to Rethink Themes Most Liferay customers upgrading from older versions (like DXP 7.1–7.4) face recurring challenges with traditional themes—performance bottlenecks, complex upgrades, and high maintenance costs. With the latest Liferay DXP 2025 releases, a new approach has emerged—theme-less architecture, powered by Style Books, Theme CSS Client ...

707
0
thumbnail
David Oliveira Montenegro | 08 Oct 2025

When building a site in Liferay, you might be used to the fully-fledged web applications with dynamic content, widgets, and templates. But sometimes, all you need is a simple static site for a small project or a temporary page. In these cases, you don’t need to delve into the complex technologies of Liferay’s site creation tools like stylebooks, fragments, or themes. Instead, you can...

778
0
thumbnail
David H Nebinger | 20 Oct 2025

Introduction If you’ve been following Liferay’s recent messaging, you’ve probably heard a strong emphasis on avoiding customizations and building with client extensions instead. That’s not an accident. There are very good reasons why client extensions have become the centerpiece of our story. Client extensions live outside of Liferay. That means they don’t alter the...

1220
0
thumbnail
David H Nebinger | 01 Oct 2025

I’m excited to share some great news: the Liferay DXP Bug Bounty Program is now open to the public! My colleague and friend Zsolt Balogh announced this recently, and I couldn’t agree more about how important this step is for our community. We’ve run a private program for a few years, but like many closed initiatives, the flow of new discoveries slowed over time. By going...

1087
0
thumbnail
David H Nebinger | 26 Sep 2025

Introduction The Content Signals Policy is a new initiative from Cloudflare, published at contentsignals.org. It extends the familiar robots.txt file so site owners can declare how their content may be used: search: allow content to be indexed and shown in search results. ai-input: allow content to be used as real-time inputs to AI...

1182
0
thumbnail
David H Nebinger | 25 Sep 2025

Introduction One of the first things new administrators notice when they get into Liferay is just how many different ways there are to group users. You’ll find Accounts, Organizations, Sites, User Groups, Asset Libraries, Segments, and Teams all sitting there in the menus. And then, layered on top, you’ve got roles to assign. It’s no wonder folks stop and ask: Which one do I...

1353
2
thumbnail
Ben Turner | 28 Oct 2025

As I said a couple of weeks ago, Ask has played a hugely valuable role over the years but it's time has come. As of today I'm really excited to announce that the replacement to ask is now live - please let me introduce you to discuss.liferay.com! Discuss is a brand new site, with brand new features, many of which we're still figuring out ourselves. But, we didn't want to ...

1860
3
thumbnail
Olaf Kock | 20 Oct 2025

Javascript EventListeners are a great tool and easily introduced in a template, a fragment or any other frontend component. It's quick to write window.addEventListener("scroll", doSomething); and something will be done. What is easily missed is that Liferay runs your code in an SPA environment - which means that your page typically does not fully reload....

1531
0