Для создания своего модуля необходимо иметь 2 обязательных файла с расширениями .info и .module:
example
  |-example.info
  |-example.module
Обязательными данными в этих файлах являются:
example.info
name = example
core = 7.x
Info-файл, как понятно из расширения, это всего лишь описательный файл, который может содержать также зависимости от других модулей или версии ядра, список подключаемых php файлов, и ссылку на страницу конфигурации модуля.
Исполнительный файл модуля может быть пустой, при этом сам модуль уже будет отображаться в списке модулей на странице /admin/modules
. 
Пример создания страницы модуля
К примеру, создадим страницу на которой выведем сообщение о создании страницы.
example.info
name        = example
description = "Some description for example module"
core        = 7.x
; указываем что модуль зависит от модуля Menu
dependencies[] = menu
example.module
<?php
/**
 *  Implements hook_menu().
 */
function example_menu(){
  $items['example-page'] = array(
    'title'            => 'First example page',
    'description'      => 'It our first example page',
    'access arguments' => array('access content'),
    'page callback'    => 'example_first_page',
    'type'             => MENU_NORMAL_ITEM,
    'menu_name'        => 'main-menu'
  );
  return $items;
}
function example_first_page(){
  return 'Congratulations! First page created!';
}
Включаем модуль, чистим кэш на странице /admin/config/development/performance
 и переходим на страницу /example-page
.
Если ссылка не появилась, то возможно необходимо вынести "Главное меню" в один из регионов сайта. Сделать это можно на странице управления блоками: "/admin/structure/block".