Automation tool mixed with code generator for easier continuous development
Automation tool mixed with code generator for easier continuous development
Simplifies and automates:
Functionality is provided and can be extended with plugins.
There are several ways of installation in order of preference:
hiqdev/hidev
in your project’s composer.jsoncomposer global require "hiqdev/hidev:*"
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.:
.gitignore
, README.md
, LICENSE
, CHANGELOG.md
composer.json
.travis.yml
, .scrutinizer.yml
phpunit.xml
, codeception.yml
.php_cs
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 default
or simply hidev
will update config files according to the changes you madehidev fix
: will update .php_cs
file and run php-cs-fixer
to fix code style of your PHP fileshidev test
: will update phpunit.xml
and run your tests with phpunit
hidev build
: will do fix and test alltogetherhidev bump
and hidev release
will bump project version and publish release to GitHubHiDev 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:
The main config file is: hidev.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: [email protected]
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 to configure 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.
For examples of HiDev configuration you can see our repos on GitHub,
all of them are automated with HiDev.
hidev goal[/action]
This project is released under the terms of the BSD-3-Clause license.
Read more here.
Copyright © 2015-2018, HiQDev (http://hiqdev.com/)