HiDev

Automation tool mixed with code generator for easier continuous development

Latest Stable Version Total Downloads Build Status Scrutinizer Code Coverage Scrutinizer Code Quality Dependency Status

Simplifies and automates:

Functionality is provided and can be extended with plugins.

Installation

There are several ways of installation in order of preference:

  1. download PHAR from http://hiqdev.com/hidev/hidev.phar
  2. require hiqdev/hidev in your project's composer.json
  3. install globally with composer global require "hiqdev/hidev:*"

Idea

The main idea behind HiDev is to combine code generator and build tool to stop copying config files between your projects. And automate all the repeated tasks of course. But firstly generate all the files that can be generated, e.g.:

You write a simple config specifying general information about your package and plugins to be used. HiDev alone does nothing at all! You specify what you want it to do in config or use plugins. There are predefined plugins with generally usable configs or you can create plugins yourself.

For example, hiqdev/hidev-php plugin is a general config for PHP projects and will enable HiDev to create all the listed above files and adds goals to use:

HiDev can generate different files: sources, tests, anything else based on templates and all the information available in config files or elsewhere.

Now I'm working to enable HiDev to do more:

Configuration

HiDev keeps everything it needs: configs, plugins, intermediate files and so on in .hidev directory in the root of your project.

The main config file is: .hidev/config.yml.

You can generate basic config file with init command:

hidev init the-vendor/my-new-package

You will receive:

package:
    type:           project
    name:           my-new-package
    title:          My New Package
    keywords:       my, new, package

vendor:
    name:           the-vendor
    authors:
        hiqsol:
            name:       Andrii Vasyliev
            email:      sol@hiqdev.com

plugins:
    hiqdev/hidev-php: "*"

Package section holds info about the package:

Also you can add more info for better README generation:

Vendor section holds info about you or your company:

Best way of configuring vendor is to create and use your vendor plugin for HiDev. It's easy, just fork hiqdev/hidev-hiqdev, change it appropriately and publish to Packagist.

Plugins section lists the plugins mentioning versions to be used for your package. Version constraints will be used with composer so must follow it's rules.

Good example of configuration is HiDev's own .hidev/config.yml.

Usage

hidev goal[/action]

License

This project is released under the terms of the BSD-3-Clause license. Read more here.

Copyright © 2015-2017, HiQDev (http://hiqdev.com/)