GithubHelp home page GithubHelp logo

templaid's Introduction

Templaid

Declarative filesystem based template rendering with handlebars.js.

Install

yarn add templaid

Example

Given the following template folder hierarchy:

path/to/template
└─ {{project.name}}
   ├─ {{project.name}}.md
   ├─ file001.txt
   └─ assets
      ├─ {{project.name}}.ae
      └─ {{project.name}}.psd

Will render the following hierarchy:

path/to/destination
└─ MyProjectName
   ├─ MyProjectName.md
   ├─ file001.txt
   └─ assets
      ├─ MyProjectName.ae
      └─ MyProjectName.psd

With this code:

renderTemplate({
  templatePath: 'path/to/template',
  destinationPath: 'path/to/destination',
  data: {
    project: {
      name: 'MyProjectName'
    }
  }
})

Template files

Files suffixed with .template will be treated as templates. For example, if a markdown file named {{project.name}}Readme.md.template with the following content:

### {{project.name}} : {{project.version}}

{{project.description}}

With the data:

{
  "name": "MyProjectName",
  "version": "1.0.0",
  "description": "A description of the project."
}

Will create a file named MyProjectNameReadme.md with its contents being:

### MyProject : 1.0.0

A description of the project.

Todo

  • Document all features ( partials, macros )
  • Cover more use cases in tests

templaid's People

Contributors

fusepilot avatar

Stargazers

Krišjānis Veinbahs avatar Raitis Veinbahs avatar Conor Heine avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.