|
|
8 years ago | |
|---|---|---|
| .. | ||
| LICENSE | 8 years ago | |
| README.md | 8 years ago | |
| constructors.go | 8 years ago | |
| default.go | 8 years ago | |
| eval.go | 8 years ago | |
| func.go | 8 years ago | |
| lex.go | 8 years ago | |
| loader.go | 8 years ago | |
| node.go | 8 years ago | |
| parse.go | 8 years ago | |
| profile.sh | 8 years ago | |
| stress.bash | 8 years ago | |
| template.go | 8 years ago | |
Jet is a template engine developed to be easy to use, powerful, dynamic, yet secure and very fast.
extends, import and include statementsYou can find the documentation in the wiki.
The last release of v1 was v1.2 which is available at https://github.com/CloudyKit/jet/releases/tag/v1.2 and the tag v1.2.
To upgrade to v2 a few updates to your templates are necessary – these are explained in the upgrade guide.
If you use IntelliJ there is a plugin available at https://github.com/jhsx/GoJetPlugin. There is also a very good Go plugin for IntelliJ – see https://github.com/go-lang-plugin-org/go-lang-idea-plugin. GoJetPlugin + Go-lang-idea-plugin = happiness!
You can find examples in the wiki.
An example application is available in the repository. Use go get -u github.com/CloudyKit/jet or clone the repository into $GOPATH/github.com/CloudyKit/jet, then do:
$ cd examples/todos; go run main.go
The benchmark consists of a range over a slice of data printing the values, the benchmark is based on https://github.com/SlinSo/goTemplateBenchmark, Jet performs better than all template engines without pre-compilation, and performs better than gorazor, Ftmpl and Egon, all of which are pre-compiled to Go.
go 1.6.2
PASS
BenchmarkEgonSlinso-4 2000000 989 ns/op 517 B/op 0 allocs/op
BenchmarkQuicktemplate-4 1000000 1004 ns/op 999 B/op 0 allocs/op
BenchmarkEgo-4 1000000 2137 ns/op 603 B/op 8 allocs/op
BenchmarkJet-4 500000 2798 ns/op 536 B/op 0 allocs/op
BenchmarkJetHTML-4 500000 2822 ns/op 536 B/op 0 allocs/op
BenchmarkGorazor-4 500000 3028 ns/op 613 B/op 11 allocs/op
BenchmarkFtmpl-4 500000 3192 ns/op 1152 B/op 12 allocs/op
BenchmarkEgon-4 300000 4673 ns/op 1172 B/op 22 allocs/op
BenchmarkKasia-4 200000 6902 ns/op 1789 B/op 26 allocs/op
BenchmarkSoy-4 200000 7144 ns/op 1684 B/op 26 allocs/op
BenchmarkMustache-4 200000 8213 ns/op 1568 B/op 28 allocs/op
BenchmarkPongo2-4 200000 9989 ns/op 2949 B/op 46 allocs/op
BenchmarkGolang-4 100000 16284 ns/op 2039 B/op 38 allocs/op
BenchmarkAmber-4 100000 17208 ns/op 2050 B/op 39 allocs/op
BenchmarkHandlebars-4 50000 29864 ns/op 4258 B/op 90 allocs/op
BenchmarkAce-4 30000 40771 ns/op 5710 B/op 77 allocs/op
BenchmarkDamsel-4 20000 95947 ns/op 11160 B/op 165 allocs/op
ok github.com/SlinSo/goTemplateBenchmark 34.384s
go tip
BenchmarkQuicktemplate-4 2000000 916 ns/op 999 B/op 0 allocs/op
BenchmarkEgonSlinso-4 2000000 1074 ns/op 517 B/op 0 allocs/op
BenchmarkEgo-4 1000000 1822 ns/op 603 B/op 8 allocs/op
BenchmarkJetHTML-4 500000 2627 ns/op 536 B/op 0 allocs/op
BenchmarkJet-4 500000 2652 ns/op 536 B/op 0 allocs/op
BenchmarkFtmpl-4 500000 2700 ns/op 1152 B/op 12 allocs/op
BenchmarkGorazor-4 500000 2858 ns/op 613 B/op 11 allocs/op
BenchmarkEgon-4 500000 4023 ns/op 827 B/op 22 allocs/op
BenchmarkSoy-4 300000 5590 ns/op 1784 B/op 26 allocs/op
BenchmarkKasia-4 200000 6487 ns/op 1789 B/op 26 allocs/op
BenchmarkMustache-4 200000 6515 ns/op 1568 B/op 28 allocs/op
BenchmarkPongo2-4 200000 7602 ns/op 2949 B/op 46 allocs/op
BenchmarkAmber-4 100000 13942 ns/op 2050 B/op 39 allocs/op
BenchmarkGolang-4 100000 16945 ns/op 2039 B/op 38 allocs/op
BenchmarkHandlebars-4 100000 20152 ns/op 4258 B/op 90 allocs/op
BenchmarkAce-4 50000 33091 ns/op 5509 B/op 77 allocs/op
BenchmarkDamsel-4 20000 86340 ns/op 11159 B/op 165 allocs/op
PASS
ok github.com/SlinSo/goTemplateBenchmark 36.200s
All contributions are welcome – if you find a bug please report it.