Smarty is a template engine for PHP. It facilitates a manageable way to separate application logic and content from its presentation. This is best described in a situation where the application programmer and the template designer are not the same person. Smarty is a web template system written in PHP. Smarty is primarily promoted as a tool for separation of concerns.
Smarty provides one with all tools to get started on coding the logic(specific to each project) and helps eliminate repetition in code development. Smarty supports a developer in every aspect of the application starting from user's initial request to final rendering of a web page.
Smarty is intended to simplify compartmentalization, allowing the front-end of a web page to change separately from its back-end. Ideally, this lowers costs and minimizes the efforts associated with software maintenance.
With its basic organization structure (folder structure and naming conventions), Smarty provides consistency, logic and flow to an application.