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
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
Article about using ClearSilver in embedded systems [2006-Jul-31]
Cliff Brake has an article about choosing ClearSilver for use in embedded systems where memory and processor space is at a premium. Thanks for the recommendation!
Release ClearSilver 0.10.3 [2006-Mar-12]
Another release, fixes the main configure bug in the last release, and a bunch of things you probably won't notice. Release Notes
more...
Re: Does nerr_log_error free the NEO_ERR * - caox
    OK, I see. That means we need call nerr_ignore after nerr_log_error if we want the err chain to be freed correctly. Thanks. ... OK, I see. That means we need

Re: Does nerr_log_error free the NEO_ERR * - Brandon Long
    ... Ah, the comment was fixed: http://code.google.com/p/clearsilver/source/detail?spec=svn861&r=861 ... It doesn't, just sloppy I guess. Brandon ... On Wed,

Re: Does nerr_log_error free the NEO_ERR * - caox
    hmm... I found it in the header file "neo_err.h": /* function: nerr_log_error * description: currently, this prints out the error to stderr, and *

Re: Does nerr_log_error free the NEO_ERR * - Brandon Long
    I don't think any of those free the error chain, where did you get that impression? Its not in the api docs, as near as I can tell. Brandon

Does nerr_log_error free the NEO_ERR * - caox
    Hi Sorry to bother. According to the description and code example, the API nerr_log_error should free the err chain. But I didn't find the respective code to

more...
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 © 2009 Brandon Long, All rights reserved.