Genova is a Drush utility that automates repetitive code writing such as schema, hook implementations, drupal arrays, etc.

It is targeted at Drupal developers who regularly create custom Drupal modules. Genova is extensible. It provides an API so that any other module can create its own component generator by extending the basic GenComponent class and providing own code templates.

A similar tool that helps generating modules is Module builder

Features

The currently implemented components are:

  • Drupal module
  • Menu, theme, permission, install/uninstall, schema
  • Sources: css, js, PHP classes file
  • External modules: mforms, sdbo

Introduction videos

Getting started

  1. Create a custom module using Genova command gen-mc: drush gen-mc hello_world. This creates the custom module named hello_world in the folder sites/all/scaffolding
  2. Move the module to the folder sites/all/modules/custom
  3. Enable the module

Add components

drush gen-cc hello_world css

Creates css directory in the and css files css_file_1.css and css_file_2.css. Adds style include into .info file.

drush gen-cc hello_world schema

Implements hook_schema and prompts for schema fields and their types.

drush gen-cc hello_world menu

Adds implementation of hook_menu to the module