Easily create generator (e.g. project wizard) for crystal
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
README.md
shard.yml

README.md

Generate.cr

Abstract

This small shards is useful to create project generators, wizard etc...

It provides few helpers method to create new folders, template files and execute applications.

Usage

Add it to your shard.yml:

  dependencies:
    generate-cr:
      github: anykeyh/generate.cr

Create a new generator:

  g = Generate::Generator.new
  # Setup initial directory
  g.target_directory = "./generated"
  # Setup variables into the generator.
  g["simple_test"] = "hello!"

  # Change the current working directory
  g.in_directory("sample") do
    g.file "sample_file.cr", <<-RUBY
      def test
        $simple_test
      end
    RUBY

    g.file "another_file.cr", <<-RUBY
      def test
        $simple_test
      end
    RUBY
  end