Tiny JavaScript Templating.
Project description
Description
tjst = Tiny JavaScript Templating
High performance JS template engine.
It supports:
Anything you can write on JS =)
Server-side and client-side compilation.
…?
It not supports:
Templates inheritence.
Includes.
…?
Installation
$ git clone https://bitbucket.org/dkuryakin/tjst.git $ cd tjst && python setup.py install
or
$ pip install tjst
Quickstart
tjst supports only <% %> and <%= %> tags.
Suppose, we have file index.html file in some folder:
<!doctype html>
<html>
<head>
<script src="tpl.js"></script>
</head>
<body>
<div id="content"></div>
<script>
var context = {
users: [
{name: "Jeff", online: true, info: "Jeff likes html"},
{name: "Mike", online: true, info: "Mike likes css"},
{name: "Rose", online: false, info: "Rose likes javascript"},
{name: "Anna", online: false, info: "Anna likes perl"},
]
};
document.getElementById('content').innerHTML = templates['tpl.html'](context);
</script>
</body>
</html>
And template file tpl.html in the same folder:
<% for (var i = 0; i < users.length; i++) { %>
<div>
<strong style="color: <%=users[i].online ? 'green' : 'red'%>"><%=users[i].name%></strong> - <%=users[i].info%>
</div>
<% } %>
Install tjst and go to this folder. Compile template:
$ tjst-compile tpl.html tpl.js
Now view index.html in your browser. You can find all examples here: https://bitbucket.org/dkuryakin/tjst/src/HEAD/tjst/examples/
Use as command-line tool
$ tjst-compile -e html,my-tpl-extension /path/to/template/file.html/or/folder /path/to/compiled/file.js
Use in python code
from tjst import compile_text2text, compile_file2file
js = compile_text2text('''
<div>
<% for (var i = 0; i < 10; i++) { %>
<p><%=i%></p>
<% } %>
''')
compile_file2file('templates_file_or_dir_path', 'dst_path.js', ['html', 'txt', 'my-ext'])
Tests
You can run tests with following commands:
$ git clone https://bitbucket.org/dkuryakin/tjst.git $ cd tjst && python setup.py test
Changelog
- v0.1.0
Basic functionality. Py3 support was not tested.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file tjst-0.1.0.tar.gz
.
File metadata
- Download URL: tjst-0.1.0.tar.gz
- Upload date:
- Size: 4.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 37af4a0312eaa6108156d175cc4f2eb6c3ecf1c1903fb90f3407ab1e4e25d143 |
|
MD5 | 515aac72b11a951efd93722cd9e27754 |
|
BLAKE2b-256 | be3cdaca5eee2cd7b3aeb271f9cf0adf932a1f793b5527b5d52f52a4aacba9d2 |
File details
Details for the file tjst-0.1.0-py2-none-any.whl
.
File metadata
- Download URL: tjst-0.1.0-py2-none-any.whl
- Upload date:
- Size: 7.4 kB
- Tags: Python 2
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 359ad4fa2d8deaa72ac3e74a0f0548e8501ee9115214cc5aaea086be9914f03b |
|
MD5 | c2482dc245950babfc2a1abd94ce7fd6 |
|
BLAKE2b-256 | a245c6e6c7bfa330cab4fa16494e213c384703fc65dfd3926a05b944aae58649 |