friendica/friendica — pull request #549 by fermionic (2012-12-22 20:11:17+00:00)
Title: Implement Smarty3

Use the Smarty3 template engine to render Friendica templates. Initial tests have shown that Smarty3 can render about 10 times faster than the internal template engine.

The Smarty engine has been implemented in such a way that themes can specify which engine they want to use: the internal engine or Smarty. The default is the internal engine, to avoid breaking unofficial themes.

All templates, including most of the official themes, have been converted to Smarty3. I've included a Python script to automatically convert from the internal templates to Smarty templates which can be used by unofficial themes if they want to convert.

I strongly recommend that theme developers do all their development with Smarty now. Changes in the default templates should be done to the internal Friendica templates, then the conversion script that's included should be run to convert everything to Smarty3, in order to maintain compatibility with both engines.