Today, we are announc­ing the dona­tion of the HTML Tem­plate Lan­guage (HTL), for­mer­ly known as Sight­ly, the secure tem­plate lan­guage intro­duced with Adobe Expe­ri­ence Man­ag­er 6, to the Apache Sling project. To be pre­cise, the dona­tion is about the Apache Sling imple­men­ta­tion of HTL. The process that just start­ed is still to be accept­ed by the Apache Sling com­mu­ni­ty in the com­ing days. The announce­ment has been made simul­ta­ne­ous­ly at the keynote of the adapt­To con­fer­ence in Berlin, and on the Apache Sling mail­ing list.

HTML Template Language (HTL) logo

The pur­pose of HTML Tem­plate Lan­guage is to offer a high­ly pro­duc­tive enter­prise-lev­el web frame­work that helps to increase secu­ri­ty. It allows HTML devel­op­ers with­out Java knowl­edge to bet­ter par­tic­i­pate in AEM projects, result­ing in high­er project effi­cien­cy.

HTL is one of the very few tem­plate lan­guages to take secu­ri­ty so seri­ous­ly, with sys­tem­at­ic state-of-the-art pro­tec­tion against cross-site script­ing (XSS) injec­tions, and auto­mat­ic con­text-aware encod­ing of all out­put.

Also, HTL is easy to learn and its fea­tures are pur­pose­ly lim­it­ed to ensure that it stays sim­ple and straight-for­ward. It also has pow­er­ful mech­a­nisms for struc­tur­ing the markup and invok­ing log­ic, while always enforc­ing strict sep­a­ra­tion of con­cerns between markup and log­ic.

The Adobe​.com team, who designed the con­cept, esti­mat­ed that it reduced their project costs by about 25%, because it sim­pli­fied rad­i­cal­ly the work­flow between their design agen­cies, and AEM devel­op­ers. This is pos­si­ble thanks to the fact that, with HTL, a front-end devel­op­er can work direct­ly on the AEM com­po­nents, with­out hav­ing to know much about AEM, or even Java.

Here are some resources to learn more about the HTML Tem­plate Lan­guage:

Oth­er blog posts on the HTL top­ic:

Addi­tion­al­ly, fol­low­ing tools were open-sourced in the recent months, and might also be of inter­est to you:

Apache Sling is a trade­mark of The Apache Soft­ware Foun­da­tion. The Apache Soft­ware Foun­da­tion has no affil­i­a­tion with and does not endorse, or review the mate­ri­als pro­vid­ed in this blog, which is man­aged by Adobe Sys­tems Inc.