Apache Sling – a framework for RESTful web-applications based on an extensible content tree.
In a nutshell, Sling maps HTTP request URLs to content resources based on the request’s path, extension and selectors. Using convention over configuration, requests are processed by scripts and servlets, dynamically selected based on the current resource. This fosters meaningful URLs and resource driven request processing, while the modular nature of Sling allows for specialized server instances that include only what is needed.
Sling serves as basis for a variety of applications ranging from blogging engines all the way to enterprise content management systems.
The Sling Launchpad is a ready-to-run Sling configuration, providing an embedded content repository, a web server, a selection of Sling modules, documentation and examples. The Launchpad makes it easy to get started with Sling and to develop script-based applications. While simple to run and understand, the Launchpad is a full-featured instance of Sling, an example configuration that we have created with the most common modules and configurations. The full functionality of Sling is available by loading additional Sling modules as needed.