home | news | documentation | downloads | discussion | projects | license  

What is Clearsilver?

Clearsilver is a fast, powerful, and language-neutral HTML template system. In both static content sites and dynamic HTML applications, it provides a separation between presentation code and application logic which makes working with your project easier.

The design of Clearsilver began in 1999, and evolved during its use at onelist.com, egroups.com, and Yahoo! Groups. Today many other projects and websites using it.

Why use Clearsilver?

High Performance and Language Neutral. Because Clearsilver is written as a C-library, and exported to scripting languages like Python, Perl, Java and Ruby via modules, it is extremely fast. This also means you can work with the same template system independent of the language your project is in.

Pluggable Look and Feel. Clearsilver makes it easy to face lift a site by providing a new set of templates. It is possible to easily run more than one look and feel at once, and share components with a base look and feel to reduce maintenance.

Internationalization Support. Clearsilver makes it trivial to support internationlization. You write your templates in your native language and included tools automatically extract and catalog language strings for translation.

Advanced features. Built in support for advanced features such as gzip compression, smart whitespace stripping, parametric macros, online debugging mode, url and javascript string escaping, and more.

How can I learn more?

The Clearsilver documentation explains both the theory of operation for Clearsilver itself, the C-api, and the extension module APIs.

What does Clearsilver look like?  ]
How is Clearsilver different from ASP, JSP, PHP?  ]
How does Clearsilver compare with XML/XSLT?  ]
Who is using Clearsilver?  ]
Recent News Recent Discussion
Release ClearSilver 0.11.0 [2017-Jul-14]
This release captures nearly 8 years of bugfixes (not as many as you might think), and it's been way too long since we had a release, so here it is. This release was done directly from github, go to here.
Github Repository Available [2016-Aug-15]
As you may have noticed, Google Code's SVN depot shutdown. I migrated the clearsilver depot to GitHub.
SVN Repository Available [2009-Nov-05]
After much work, I've been able to migrate the full history of Clearsilver into an SVN repository at Google Code. A new release should come soon.
Release ClearSilver 0.10.5 [2007-Jul-12]
Mostly a bugfix release, see Release Notes
Release ClearSilver 0.10.4 [2006-Nov-14]
Bugfixes, python 2.5 support and Automatic escape mode, see Release Notes
Re: VC++ - paragshravagi
    I tried to download this patch from the mentioned link. But the site cannot be reached. Can someone share the patch again? Best Regards, ParagS

high-speed hdf-json-bson converter - 马亮
    hi, cs I have an application need high-spped json, hdf, bson converter. I can't find it on internet, so, I coded them, put them on

Re: At what point does CS acquire its data from the HDF backend data - David Jeske
    ... Yes, the result of hdf_write_file should be readable by hdf_read_file. I doubt hdf_write_file is smart about escaping the contents of HDF keys though. This

Re: At what point does CS acquire its data from the HDF backend data - Rod Nussbaumer
    Thanks for clarifying that. I just wanted to make sure what I'm trying to do is actually within the intended purpose of ClearSilver. Armed with that

Re: At what point does CS acquire its data from the HDF backend data - David Jeske
    What you're doing is fine. You can call cs_render multiple times, changing the HDF dataset in-between. There are, however, some subtleties of var/evar/lvar

ClearSilver was written by Brandon Long.
Many of the concepts behind ClearSilver are based on work by Scott Shambarger,
Paul Clegg and John Cwikla on the templating system for onelist.com and eGroups.com.
Donations in the form of Good Tequila or Chicago Pizza will be greatly appreciated by the authors.
Copyright © 2017 Brandon Long, All rights reserved.