Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/amirhoseinsalimi/ash-template-engine

I built my own template engine for learning purposes with zero dependencies in TypeScript - It's called Ash
https://github.com/amirhoseinsalimi/ash-template-engine

backend build-your-own build-your-own-x javascript js template-engine typescript

Last synced: 4 days ago
JSON representation

I built my own template engine for learning purposes with zero dependencies in TypeScript - It's called Ash

Awesome Lists containing this project

README

        

# My Own Template Engine - Ash

> **Warning**
> This project is not for production use. I built this project just for
> learning purposes and consider it a hobby project. I may or may not update
> it, so please don't use it on production, and neither do I. Issues, ideas,
> and PRs are WELCOME!

> **Note**
> This is the project that I built when I was deepening my knowledge of
> back-end development. Feel free to open issues, bring ideas, and send PRs.

---

[![Banner](https://github.com/amirhoseinsalimi/ash-template-engine/blob/master/feynman.png)](https://github.com/amirhoseinsalimi/ash-template-engine)

> _What I cannot create, I do not understand — Richard Feynman._

It sure is. The above quote is my favorite. It's through building that we learn
how things work or should work. Using the code that others have written is
convenient, but if we want to be have a deeper understanding we should start
building. Visit the golden GitHub repository
[Build Your Own X](https://github.com/codecrafters-io/build-your-own-x) to find
some notions.

---

This project is my attempt to learn how template engines work. You can read
the code and pick some ideas to build your own template engine. I also went
further and implemented tests and added TypeScript so everyone — including
future myself — can understand the code better. I provided some examples in
[examples folder](https://github.com/amirhoseinsalimi/ash-template-engine/tree/master/examples)
as well.

---

### Why the name?
In order to being more user freindly, I called this project Ash — One of the
operators in Tom Clancy's Rainbow 6 Siege Video Game. That's it.