Building a template engine
In this section, we will look at the design of an HTML template engine and implement one of the features using the Rust Standard Library. Let's first understand what a template engine is.
Applications such as web and mobile apps use structured data stored in datastores such as relational databases, NoSQL databases, and key-value stores. However, there is a lot of data on the web that is unstructured. One particular example is text data that all web pages contain. Web pages are generated as HTML files that have a text-based format.
On observing closely, we can see that an HTML page has two parts: static text literals and dynamic parts. The HTML page is authored as a template with the static and dynamic parts, and the context for HTML generation comes from a data source. While generating a web page, the generator should take the static text and output it without change, while it should combine some processing and the supplied context to generate...