{"id":13519429,"url":"https://github.com/jacquesbh/installer","last_synced_at":"2025-03-17T16:30:44.983Z","repository":{"id":1834194,"uuid":"2758530","full_name":"jacquesbh/installer","owner":"jacquesbh","description":"PHP command line tool for Magento extension development and scaffolding","archived":false,"fork":false,"pushed_at":"2022-07-11T14:01:03.000Z","size":244,"stargazers_count":38,"open_issues_count":1,"forks_count":11,"subscribers_count":11,"default_branch":"master","last_synced_at":"2025-02-28T01:37:34.643Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"aredridel/dsn","license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jacquesbh.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2011-11-11T21:02:09.000Z","updated_at":"2024-07-02T20:32:31.000Z","dependencies_parsed_at":"2022-09-07T10:10:57.250Z","dependency_job_id":null,"html_url":"https://github.com/jacquesbh/installer","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jacquesbh%2Finstaller","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jacquesbh%2Finstaller/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jacquesbh%2Finstaller/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jacquesbh%2Finstaller/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jacquesbh","download_url":"https://codeload.github.com/jacquesbh/installer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243871330,"owners_count":20361330,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-01T05:01:58.965Z","updated_at":"2025-03-17T16:30:44.622Z","avatar_url":"https://github.com/jacquesbh.png","language":"PHP","funding_links":[],"categories":["PHP","Tools"],"sub_categories":["Free"],"readme":"# The Installer\n\nThe Installer is under the General Public License. See the `COPYING` for further information.\n\n## What's that?\n\nThe \"Installer\" is a *simple* shell which allows you to create custom modules on Magento.\n\n### V2\n\nThe second version will be developped with the Console component of Symfony. If you want help us to build it, let me know! \u003cjacques ON bodin-hullin DOT net\u003e\n\n## Install\n\n### Via Docker\n\nRun the following:\n\n`cd docker-binary \u0026\u0026 docker build --tag installer:latest .`\n\nThen you can use the docker image like this where you want to use the Installer:\n\n```\ndocker run --rm -ti -v $PWD:/work installer:latest\n```\n\n### On UNIX\n\nPuppet file: \u003chttps://github.com/monsieurbiz/vagrant-magento/blob/master/puppet/modules/tools/manifests/installer.pp\u003e\n\n    # step by step\n    git clone git://github.com/jacquesbh/installer.git /usr/local/src/installer\n    ln -s /usr/local/src/installer/bin/Installer /usr/local/bin/installer\n    \nDon't forget to pull sometimes ;)\n\n    cd /usr/local/src/Installer \u0026\u0026 git pull\n\n### On Windows\n\n... Sorry dude ;)\n\n## Howto\n\n### Configure\n\nEach time I need to use The Installer, I've a git repository.  \nBecause it's always a Magento project and I always use git as SCM.\n\n```sh\ngit config jbh-installer.company-name \"The Company\"\ngit config jbh-installer.company-name-short \"company\"\ngit config jbh-installer.user-name \"John Doe\"\ngit config jbh-installer.user-email \"john.doe@example.org\"\ngit config jbh-installer.company-url \"http://example.org\"\n```\n\nYou can use the following configuration path:\n\n*   `path`: The path to the \"app\" directory. (optional)\n*   `company-name`: The name of your company.\n*   `company-name-short`: The namespace of your company.\n*   `company-url`: The website url of your company.\n*   `user-name`: Your name.\n*   `user-email`: Your email.\n*   `license`: The license used. \"All rights reserved\" as default.\n*   `design`: The project's design. \"base_default\" as default.\n*   `locales`: The project's locales. \"fr_FR,en_US\" as default.\n\nIn the lastest version the Installer will ask you those information.\n\n### Binary\n\nYou can use the binary `bin/Installer`.\n\nJust create a simple symlink link.\n\n### Run it!\n\nWith your shell, go under your magento dir, like that :\n\n    $ cd ~/Sites/magento/\n\nThen run the Installer! (with the function above)\n\n    $ installer\n    The Installer - by jacquesbh\n    \u003e \n\n### Help\n\nType `?`!\n\n    \u003e ?\n      ---------------------- ----------------------- -------------------------------------------\n     | COMMAND              | ALIAS                 | PARAMETERS                                |\n     |----------------------|-----------------------|-------------------------------------------|\n     | help                 | -h ?                  |                                           |\n     | module               | mod                   | namespace name pool                       |\n     | general              |                       |                                           |\n     | info                 | i config conf         |                                           |\n     | clean                |                       | [all, cache, log(s)]                      |\n     | controller           | c                     | name [actions]                            |\n     | helper               | h                     | name [methods]                            |\n     | model                | m                     | name [methods]                            |\n     | observer             | o                     | name [methods]                            |\n     | observer Observer    | oo                    | [methods]                                 |\n     | block                | b                     | name [methods] [-p]                       |\n     | translate            | t                     | where                                     |\n     | translates           | ts                    |                                           |\n     | layout               | l                     | where                                     |\n     | layouts              | ls                    |                                           |\n     | resources            | res                   |                                           |\n     | entity               | ent                   | name table                                |\n     | grid                 |                       | entity                                    |\n     | form                 |                       | entity                                    |\n     |----------------------|-----------------------|-------------------------------------------|\n     | COMMAND              | ALIAS                 | PARAMETERS                                |\n     |----------------------|-----------------------|-------------------------------------------|\n     | setup                | sql set               |                                           |\n     | data                 |                       | [[from] to]                               |\n     | upgrade              | up                    | [from] to                                 |\n     | event                |                       | name model method where                   |\n     | cron                 |                       | identifier 1 2 3 4 5 model method         |\n     | default              | def conf              | name value                                |\n     | depends              | dep                   | (-)module                                 |\n     | exit                 |                       |                                           |\n     | delete               | del rm remove         |                                           |\n     | last                 |                       | [...]                                     |\n     | addtranslate         | __                    |                                           |\n     | routers              | r route router        | where frontName                           |\n     | tmp                  |                       | action                                    |\n     | misc                 | script                | name (without .php)                       |\n     | doc                  |                       | [title]                                   |\n     | system               |                       |                                           |\n     | adminhtml            |                       |                                           |\n     | session              |                       | [methods]                                 |\n     | email                | mail                  | name                                      |\n     |                      |                       |                                           |\n      ---------------------- ----------------------- -------------------------------------------\n    \u003e \n\n### Example\n\n    $ installer\n    The Installer - by jacquesbh\n    \u003e mod jbh demo local\n    Using: Jbh_Demo in local\n    Jbh_Demo\u003e ent\n    Entity?\n    \u003e foo\n    Table?\n    \u003e jbh_foo\n    Jbh_Demo\u003e h data -\n    Jbh_Demo\u003e layout\n    Where? (enter for front)\n    \u003e \n    Jbh_Demo\u003e session\n    Jbh_Demo\u003e\n\nEasy, isn't it ?\n\n### Tips\n\n#### Variables?\n\n    Jbh_Tmp\u003e model foo $_iAmProtected $_meToo=1 $iAmPublic $meToo=array $iAmNull=null $iAmAString=foo $_iAmBoolean=false\n\n```php\n\u003c?php\n/**\n[...]\n */\n\n/**\n * Foo Model\n * @package Jbh_Tmp\n */\nclass Jbh_Tmp_Model_Foo extends Mage_Core_Model_Abstract\n{\n\n// Company Tag NEW_CONST\n\n    /**\n     * short_description_here\n     * @var \n     */\n    protected $_iAmProtected = null;\n\n    /**\n     * short_description_here\n     * @var int\n     */\n    protected $_meToo = 1;\n\n    /**\n     * short_description_here\n     * @var \n     */\n    public $iAmPublic = null;\n\n    /**\n     * short_description_here\n     * @var array\n     */\n    public $meToo = array();\n\n    /**\n     * short_description_here\n     * @var null\n     */\n    public $iAmNull = null;\n\n    /**\n     * short_description_here\n     * @var string\n     */\n    public $iAmAString = 'foo';\n\n    /**\n     * short_description_here\n     * @var bool\n     */\n    protected $_iAmBoolean = false;\n\n// Company Tag NEW_VAR\n\n// Company Tag NEW_METHOD\n\n}\n```\n\n#### Constants?\n\n    Jbh_Tmp\u003e model foo I_AM_CONSTANT I_AM_A_STRING=foo I_AM_INTEGER=123 I_AM_BOOLEAN=true\n\n```php\n\u003c?php\n/**\n[...]\n */\n\n/**\n * Foo Model\n * @package Jbh_Tmp\n */\nclass Jbh_Tmp_Model_Foo extends Mage_Core_Model_Abstract\n{\n\n    /**\n     * short_description_here\n     * @const I_AM_CONSTANT\n     */\n    const I_AM_CONSTANT = null;\n\n    /**\n     * short_description_here\n     * @const I_AM_A_STRING string\n     */\n    const I_AM_A_STRING = 'foo';\n\n    /**\n     * short_description_here\n     * @const I_AM_INTEGER int\n     */\n    const I_AM_INTEGER = 123;\n\n    /**\n     * short_description_here\n     * @const I_AM_BOOLEAN bool\n     */\n    const I_AM_BOOLEAN = true;\n\n// Company Tag NEW_CONST\n\n// Company Tag NEW_VAR\n\n// Company Tag NEW_METHOD\n\n}\n```\n\n#### Methods?\n\n    Jbh_Tmp\u003e model foo _iAmProtected iAmPublic iReturnsBool:bool iReturnsObject:Varien_Object iCallMyParent/p iHaveArgs() iHaveArgsAndIReturnsBool():bool _iHaveArgsIReturnsStringICallDad():string/p\n    Return for iCallMyParent()?\n    \u003e string\n    Params for iHaveArgs()?\n    \u003e $customer\n    Params for iHaveArgsAndIReturnsBool()?\n    \u003e $flag\n    Params for iHaveArgsIReturnsStringICallDad()?\n    \u003e $order\n\n```php\n\u003c?php\n/**\n[...]\n */\n\n/**\n * Foo Model\n * @package Jbh_Tmp\n */\nclass Jbh_Tmp_Model_Foo extends Mage_Core_Model_Abstract\n{\n\n// Company Tag NEW_CONST\n\n// Company Tag NEW_VAR\n\n    /**\n     * short_description_here\n     * @return \n     */\n    protected function _iAmProtected()\n    {\n        // Code here\n    }\n\n    /**\n     * short_description_here\n     * @return \n     */\n    public function iAmPublic()\n    {\n        // Code here\n    }\n\n    /**\n     * short_description_here\n     * @return bool\n     */\n    public function iReturnsBool()\n    {\n        // Code here\n    }\n\n    /**\n     * short_description_here\n     * @return Varien_Object\n     */\n    public function iReturnsObject()\n    {\n        // Code here\n    }\n\n    /**\n     * short_description_here\n     * @return string\n     */\n    public function iCallMyParent()\n    {\n        parent::iCallMyParent();\n        // Code here\n    }\n\n    /**\n     * short_description_here\n     * @return \n     */\n    public function iHaveArgs($customer)\n    {\n        // Code here\n    }\n\n    /**\n     * short_description_here\n     * @return bool\n     */\n    public function iHaveArgsAndIReturnsBool($flag)\n    {\n        // Code here\n    }\n\n    /**\n     * short_description_here\n     * @return string\n     */\n    protected function _iHaveArgsIReturnsStringICallDad($order)\n    {\n        parent::_iHaveArgsIReturnsStringICallDad($order);\n        // Code here\n    }\n\n// Company Tag NEW_METHOD\n\n}\n```\n\n## Documentation\n\nIf you want generate a documentation for your modules, you can do it! And the Installer is helpful!\n\n    \u003e doc Title if you want :)\n\nThis command creates a simple directory named `doc` with a file `README.md`.\n\nThe idea is to use _Easybook_ for generate the documentation in PDF or website formats.\n\n## system.xml \u0026 adminhtml.xml\n\nYou can generate those files but you need to edit them after.\nIt's customized samples.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjacquesbh%2Finstaller","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjacquesbh%2Finstaller","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjacquesbh%2Finstaller/lists"}