All Projects → DannyBen → bashly

DannyBen / bashly

Licence: MIT license
Bash command line framework and CLI generator

Programming Languages

ruby
36898 projects - #4 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to bashly

Jennifer
Jennifer is a code generator for Go
Stars: ✭ 2,257 (+47.13%)
Mutual labels:  code-generator
Ng Swagger Gen
A Swagger 2.0 codegen for Angular
Stars: ✭ 196 (-87.22%)
Mutual labels:  code-generator
Laracrud
Laravel Code Generator based on MySQL Database
Stars: ✭ 238 (-84.49%)
Mutual labels:  code-generator
Jeecg
JEECG是一款基于代码生成器的J2EE快速开发平台,开源界“小普元”超越传统商业企业级开发平台。引领新的开发模式(Online Coding模式(自定义表单) - > 代码生成器模式 - > 手工MERGE智能开发), 可以帮助解决Java项目90%的重复工作,让开发更多关注业务逻辑。既能快速提高开发效率,帮助公司节省人力成本,同时又不失灵活性。具备:表单配置能力(无需编码)、移动配置能力、工作流配置能力、报表配置能力(支持移动端)、插件开发能力(可插拔)
Stars: ✭ 2,027 (+32.14%)
Mutual labels:  code-generator
Drupal Code Generator
A code generator for Drupal.
Stars: ✭ 184 (-88.01%)
Mutual labels:  code-generator
Kvf Admin
kvf-admin是一套基于springboot、mybatis、shiro及layui的轻量级快速开发框架、脚手架、后台管理系统、权限系统、基于activiti6整合的工作流OA系统,上手简单,拿来即用。
Stars: ✭ 209 (-86.38%)
Mutual labels:  code-generator
Swiftcolorgen
A tool that generate code for Swift projects, designed to improve the maintainability of UIColors
Stars: ✭ 152 (-90.09%)
Mutual labels:  code-generator
Xo
Command line tool to generate idiomatic Go code for SQL databases supporting PostgreSQL, MySQL, SQLite, Oracle, and Microsoft SQL Server
Stars: ✭ 2,974 (+93.87%)
Mutual labels:  code-generator
Php To Zephir
Convert PHP to Zephir
Stars: ✭ 186 (-87.87%)
Mutual labels:  code-generator
Kyaml2go
K8s Go client code generator from Kubernetes resource yamls
Stars: ✭ 226 (-85.27%)
Mutual labels:  code-generator
Sloth
Sloth 是一个生成脚手架代码的工具。你只需要设置好业务应用所需要用的 Mysql 数据源即可。如果你用过 Ruby on Rails 的代码生成器的话,那么 Sloth 也同样适用于这样的场景, 它使用 Java 语言构建,生成的脚手架代码亦是 Java。旨在为开发者提供一系列健壮的工具、程序库和工作流,帮助他们快速构建出漂亮、引人注目的SpringBoot Web应用
Stars: ✭ 170 (-88.92%)
Mutual labels:  code-generator
Yii2 Gii
Yii 2 Gii Extension
Stars: ✭ 183 (-88.07%)
Mutual labels:  code-generator
Baby
Create models from a JSON file, even a Baby can do it.
Stars: ✭ 214 (-86.05%)
Mutual labels:  code-generator
Evolutility Ui Jquery
Model-driven Web UI for CRUD using REST or localStorage.
Stars: ✭ 164 (-89.31%)
Mutual labels:  code-generator
Api Generator
PHP-code generator for Laravel framework, with complete support of JSON-API data format
Stars: ✭ 244 (-84.09%)
Mutual labels:  code-generator
Speedment
Speedment is a Stream ORM Java Toolkit and Runtime
Stars: ✭ 1,978 (+28.94%)
Mutual labels:  code-generator
Dbtool
数据库工具,根据表结构文档生成创建表sql,根据数据库表信息导出Model和表结构文档,根据文档生成数据库表,根据已有Model文件生成创建数据库表sql
Stars: ✭ 206 (-86.57%)
Mutual labels:  code-generator
openimmo
OpenImmo library
Stars: ✭ 36 (-97.65%)
Mutual labels:  code-generator
Sketchtoswift
📲 Generate Swift from Sketch
Stars: ✭ 251 (-83.64%)
Mutual labels:  code-generator
Crud Intellij Plugin
一个增删改查的idea插件,可以根据数据库表结构,帮助您快速生成model、dao、service、controller等相关代码。同时支持MyBatis、JPA、MybatisPlus。
Stars: ✭ 217 (-85.85%)
Mutual labels:  code-generator

Bashly - Bash CLI Framework and Generator

Create feature-rich bash scripts using simple YAML configuration

Gem Version Build Status Maintainability

bashly.dannyb.co


demo

Bashly is a command line application (written in Ruby) that lets you generate feature-rich bash command line tools.

Bashly lets you focus on your specific code, without worrying about command line argument parsing, usage texts, error messages and other functions that are usually handled by a framework in any other programming language.

It is available both as a ruby gem and as a docker image.

Bashly is Sponsored By

Documentation

How it works

  1. You provide a YAML configuration file, describing commands, sub-commands, arguments, and flags. Running bashly init creates an initial sample YAML file for you (example).
  2. Bashly then automatically generates a bash script (when you run bashly generate) that can parse and validate user input, provide help messages, and run your code for each command.
  3. Your code for each command is kept in a separate file, and can be merged again if you change it (example).

Features

Bashly is responsible for:

  • Generating a single, standalone bash script.
  • Generating a human readable, shellcheck-compliant and shfmt-compliant script.
  • Generating usage texts and help screens, showing your tool's arguments, flags and commands (works for sub-commands also).
  • Parsing the user's command line and extracting:
    • Optional or required positional arguments.
    • Optional or required option flags (with or without flag arguments).
    • Commands (and sub-commands).
    • Standard flags (like --help and --version).
  • Preventing your script from running unless the command line is valid.
  • Providing you with a place to input your code for each of the functions your tool performs, and merging it back to the final script.
  • Providing you with additional (optional) framework-style, standard library functions:
    • Color output.
    • Config file management (INI format).
    • YAML parsing.
    • Bash completions.
    • and more.

Contributing / Support

If you experience any issue, have a question or a suggestion, or if you wish to contribute, feel free to open an issue or start a discussion.

Visit the How to contribute page for more information.

Stargazers and Forkers

Stargazers repo roster for @DannyBen/bashly

Forkers repo roster for @DannyBen/bashly

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].