Apache Sling is an innovative web framework that is intended to bring back the fun to web development.
Apache Sling is an innovative web framework that is intended to bring back the fun to web development.
Customer Reviews
Ashish P.
Advanced user of Apache SlingApache sling is a web framework that relies on JCR for content storage. While recent versions have now started supporting other content storage formats, it's still primarily used on top of JCR.
I'm not aware if Apache Sling is used as a base for building solutions by end clients themselves. I've mainly seen it as a framework used by CMS companies to base their product on (e.g. Adobe's AEM). For content related operations it does provide quite a lot of useful APIs and abstractions (Resource, default GET/POST servlet implementations that do a lot of heavy lifting, Exporter framework, Sling Pipes for ETL etc).
It's a modulith (OSGI) that offers flexibility for those that know how to work with it.
One of the best features I like is around content representation which can be controlled via request selectors, extentions, resourceType and method type (GET, POST etc) that allows for a lot of flexibility in rendering content. This model lends itself to controlling rendering across multiple channels (web, mobile, kiosks etc) without too much effort.
Developer support and experience could be improved. Very recently resource viewer has been added that allows to view the repo, edit properties and add resources.
Many developers end up working on low level JCR APIs when equivalent and better abstractions exist at Sling's level. It's adoption might increase if it natively supported unstructured content handling (assets).
For content centric applications it's a good framework to have. Under the hood it's using OSGI so one needs good grips working with OSGI and there are a lot of examples to get started quickly.
If your needs are very simple (static website, content for mobile), then Apache sling fits the bill. For complex layouts, and features you may have to rely on a dedicated CMS to deliver value.
Content management and representation across devices and channels. It makes it easy to delivery content in multiple formats, with a host of default implementations part of the package.
Most likely end users would end up with a system that leverages Apache Sling under the hood to deliver the promise.