Giter Club home page Giter Club logo

froglet's Introduction

Froglet - Lightweight textual artifact generation environment

Latest version 0.4

froglet is a command line program that provides an interactive workflow for GSL. GSL is a command line program developed by Matrix and designed to construct textual artfacts. Note that you will have to install gsl on your computer before using froglet. You can learn more about GSL https://github.com/imatix/gsl

The advantage of Froglet

froglet provides an incremental way to develop GSL templates and models. The target construct can be developed gradually. GSL templates can be written in strategies. For examples, independent generation task per template file or complex generation task that use multiple template files. Using the interactive CLI of froglet will allow user to run generation tasks with flexibility. froglet uses the advantages of gsl which is fast and small, so froglet is a lightweight textual artifact generation environment

Usage Design

  1. Only work with the following directory structure.
├── <UserProject>
│   ├── templates/*.gsl   # GSL template files
│   ├── models/*.xml      # GSL XML-based model files
  1. Run froglet at the root of <UserProject> directory
  2. Each program run, froglet asks user to select one template file (.gsl) and one model file (.xml) from an interactive list

Installation

froglet can be installed using brew at this time and tested on MacOS.

Install Froglet

brew tab vorachet/froglet
brew install froglet

Upgrade Froglet to the latest version

brew upgrade froglet

Uninstall Froglet

brew remove froglet

Usage example

More examples on https://github.com/vorachet/froglet-examples

$ git clone https://github.com/vorachet/froglet-examples
$ cd froglet-examples
$ cd graphml2dot
$ froglet 

  FROGLET_MODELS_FOLDER = /Users/vorachet/Desktop/froglet-examples/graphml2dot/models
  FROGLET_TEMPLATES_FOLDER = /Users/vorachet/Desktop/froglet-examples/graphml2dot/templates
  FROGLET_OUTPUT_FOLDER = /Users/vorachet/Desktop/froglet-examples/graphml2dot/output

✔ Found GSL at /usr/local/bin/gsl
✔ Found templates directory at 
✔ Found models directory at /Users/vorachet/Desktop/froglet-examples/graphml2dot/models

Choose generator:
1) graphml2dot.gsl
#? 1

Choose model:
1) graphml_10_nodes.xml
2) graphml_2_nodes.xml
#? 2

✔  Target Generator /Users/vorachet/Desktop/froglet-examples/graphml2dot/templates/graphml2dot.gsl
✔  Target Model /Users/vorachet/Desktop/froglet-examples/graphml2dot/models/graphml_2_nodes.xml
✔  Target Output Folder /Users/vorachet/Desktop/froglet-examples/graphml2dot/output

Generating...

gsl/4 M: Generated /Users/vorachet/Desktop/froglet-examples/graphml2dot/output/graphml_2_nodes.dot

✔  Done

Enjoy using Froglet v0.4!

froglet's People

Contributors

vorachet avatar vorachetreviewer avatar

Stargazers

 avatar

Watchers

 avatar  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.