Skip to content

LiveRamp/templater

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

templater: the power of Go templates available on the command line

Ever wanted to use Go's text/template in shell tooling instead of having to use a here document? Well, now you can. templater is a command line tool that accepts an arbitrary template input file, and a JSON data file to use as the context for rendering the template.

Now you can drive templates that use inline conditionals, loops, format strings from the convenience of any script that allows you to fork out to templater.

This tool is an open source project of LiveRamp. Want to hack on cool Go projects at adtech scale? Come work for us!

Building

$ go get -u github.com/LiveRamp/templater
$ go install github.com/LiveRamp/templater

Usage

Usage of templater:
  -data string
        Data file to use as template context
  -template string
        Template to render

Example

Example template input file:

I have three students:
{{ range $index, $element := .Students }}
One student is named {{ $element }}.
{{ end }}

Example JSON data file:

{"Students": ["Curly", "Larry", "Moe"]}

Rendering the template:

$ templater -template example.tmpl -data example.json
I have three students:

One student is named Curly.

One student is named Larry.

One student is named Moe.

What's Next

  • Load multiple templates into the context so you can include other templates from the root template.
  • Multiple data files with precedence.
  • Additional template context functions defined in Go to reach parity with Erubis, Jinja, etc.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages