Generate

screenshot of Generate
rails

A new command line tool and developer framework for scaffolding out GitHub projects. Generate offers the robustness and configurability of Yeoman, the expressiveness and simplicity of Slush, and more powerful flow control and composability than either.

Overview

Generate is a command line tool and developer framework used for scaffolding out new GitHub projects. It combines the robustness and configurability of Yeoman, the expressiveness and simplicity of Slush, and offers more powerful flow control and composability than either. Generate offers features such as advanced flow control, template rendering with any engine, data gathering from the user's environment, custom prompts, and much more. It is part of a suite of developer tools including Assemble, Verb, and Update, all built on top of the base and templates foundation.

Features

  • Advanced flow control: Through the use of generators, sub-generators, and tasks, Generate provides advanced flow control for creating projects.
  • Template rendering: Generate allows users to use templates to create new files or replace existing files. It supports any template engine, including handlebars, lodash, swig, and pug.
  • Data gathering: Generate automatically gathers data from the user's environment for rendering templates, allowing for easy population of "hints" in user prompts or for rendering templates.
  • Custom prompts: It is easy to create custom prompts and use the answers for various purposes such as rendering templates, determining file names, directory structure, and more.
  • Macros: Users can create custom generators from the command line using macros, providing flexibility and customization options.
  • Front-matter: Generate supports yaml front matter in templates, allowing users to define settings or defaults on a file-by-file basis.
  • Smart plugins: Generate is built on base, which means any "smart" plugin from the Base ecosystem can be used, enhancing the functionality and extensibility of the tool.
  • Config store: Generate has a built-in config store to persist configuration settings, global defaults, project-specific defaults, answers to prompts, and more.
  • Streams: Generate fully supports gulp and assemble plugins, making it easy to integrate with existing build systems and workflows.
  • Vinyl files: Files and templates in Generate are represented as vinyl files, providing a standardized and flexible format.

Summary

Generate is a powerful command line tool and developer framework for scaffolding out new GitHub projects. It combines the best features of Yeoman, Slush, and more, offering advanced flow control, template rendering, data gathering, custom prompts, and much more. It is part of a suite of developer tools that share a common foundation, providing a seamless experience across various tasks. With Generate, developers can quickly and easily scaffold new projects with configurability and flexibility.

rails
Ruby on Rails

Ruby on Rails, often referred to as Rails, is an open-source web application framework written in Ruby. Known for its convention over configuration and don't repeat yourself (DRY) principles, Rails simplifies and accelerates the development of database-backed web applications.

template
Templates & Themes

A template or theme refers to a pre-designed layout or structure that provides a basic framework for building a specific type of application or website. It typically includes good design, placeholder content and functional features, allowing developers to customize and fill in the details according to their specific needs.

gulp
Gulp

Gulp.js is an old but popular site building tool that automates various repetitive development tasks in web development, such as compiling Sass, minifying JavaScript, and optimizing images.

webpack
Webpack

Webpack is a popular open-source module bundler for JavaScript applications that bundles and optimizes the code and its dependencies for production-ready deployment. It can also be used to transform other types of assets such as CSS, images, and fonts.