Skip to content
Data structure view templates for Crystal
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
spec
src
.gitignore
.travis.yml
LICENSE
README.md
shard.yml

README.md

crikey

Crikey is a templating engine inspired by Hiccup. It is focused on mapping snippets of view code and logic to data structures available in the language.

Installation

Add this to your application's shard.yml:

dependencies:
  crikey:
    github: domgetter/crikey

Usage

Standalone

require "crikey"

Crikey.to_html([:div, [:span, "Hello"]])
#=> "<div><span>Hello</span></div>"

with Kilt

Example with Kemal:

require "kilt/crikey"

get "/users" do
  users = [{name: "Samantha", id: 7}, {name: "Mikey", id: 24}] # this would be the result of a db call
  render "src/views/users.crikey"
end

(in users.crikey)

[:div, {id: "users"},
  users.map do |user|
    [:div, {class: "user"},
      [:span, user[:id]],
      [:span, {style: "color: red"},
        user[:name]]]
  end
]

And you will get

<div id="users">
  <div class="user">
    <span>7</span>
    <span style="color: red">Samantha</span>
  </div>
  <div class="user">
    <span>24</span>
    <span style="color: red">Mikey</span>
  </div>
</div>

It's just data!

Contributing

  1. Fork it ( https://github.com/domgetter/crikey/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Contributors

  • domgetter Dominic Muller - creator, maintainer
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.