PHPackages                             adfab/magentofuse - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. adfab/magentofuse

ArchivedLibrary

adfab/magentofuse
=================

1.0(11y ago)2903[4 issues](https://github.com/AdFabConnect/magentofuse/issues)OSLCSS

Since May 2Pushed 11y agoCompare

[ Source](https://github.com/AdFabConnect/magentofuse)[ Packagist](https://packagist.org/packages/adfab/magentofuse)[ RSS](/packages/adfab-magentofuse/feed)WikiDiscussions master Synced today

READMEChangelog (1)Dependencies (12)Versions (2)Used By (0)

Magento FUSE
============

[](#magento-fuse)

Magento Management Driven by Composer &amp; Grunt

This project is directly inspired by

- I wanted Magento
- I wanted Magento to be fast
- I wanted Magento to be fast and easy to install
- I wanted Magento to be fast and easy to unit test
- I wanted Magento to be fast and easy to extend
- I wanted Magento to be fast and easy to skin
- I wanted Magento to be fast and easy to embed new features

Here you have adfab/magentofuse, a Magento CE rocketed with the best modules and extensions ever created by fabulous people.

This project aims to ease your life as a Magento dev :

- With Magento Fuse, you install a CE version of Magento in 1 line. The installation includes the database creation and sample upload (if you want).

\##Composer

- ivanchepurnyi ([https://github.com/EcomDev/EcomDev\_PHPUnit](https://github.com/EcomDev/EcomDev_PHPUnit))
- stof ()
- mmenozzi )
- Vinai ()

\##Grunt

- shama ()
- tkellen ()
- sindresorhus ()
- hughsk ()
- indieisaconcept ()
- shakyShane ()

Much much more to come !

\#Usage

Create a new project
--------------------

[](#create-a-new-project)

```
composer create-project -s dev adfab/magentofuse new-project

```

**BEWARE : Your Mysql account must have a password**

**BEWARE : In windows, open your command window as administrator (it is mandatory for the symbolic links creation)**

This command will :

- Ask the Magento version you want to install then download it (be patient, Magento download servers are even slower than composer updates).
- Install the PHPUnit module
- Install the Grunt config
- Enter the installation process : Answer each question including database config.

Once done and only if needed, update your /etc/hosts file + your web server configuration. Relaunch the web server, and you're ready to go !

Redo the Magento config + database install
------------------------------------------

[](#redo-the-magento-config--database-install)

If you want to launch specific Magento install, check first that there is no app/etc/local.xml file so that the Magento install can be launched. Then :

```
composer run-script post-install-cmd

```

This will run the composer post-install script specifically.

Create a new theme
------------------

[](#create-a-new-theme)

Once the projet is installed you'll be able to dev the frontend directly from Chrome DevTools while keeping updated ALL browsers (incuding mobiles) connected to your magento website.

[NodeJS](http://nodejs.org/), [Grunt](http://gruntjs.com/) and [Compass](http://compass-style.org/) have to be installed on your computer.

As described in [Magento documentation](http://www.magentocommerce.com/knowledge-base/entry/magentos-theme-hierarchy)

1. Create two subdirectories in app/design/frontend/rwd/custom\_theme and skin/frontend/rwd/custom\_theme
2. Change watched theme and domain inside Gruntfile.js in the two first variables
3. Log into the Magento admin and change the design theme from default to custom\_theme
4. Copy only needed files to override

You now have a responsive base theme ready to be customized.

But it's not over : Magento Fuse brings tools to help front dev. The Grunt config will give you opportunity to modify your Less / Sass files from Chrome DevTools and automatically compile and synchronize the browsers (IE, FF, Chrome, Safari) even on your mobile.

The Grunt config use grunt-contrib-watch to watch the changes during your dev, grunt-contrib-less, grunt-contrib-compass to compile your Less files and create the map file of your CSS for Chrome to display your Less files in Chrome Devtools (amazing) and grunt-browser-sync to synchronize the CSS, JS and HTML on all your browsers (and no only chrome).

To achieve this, just launch Grunt from your project root :

```
grunt dev

```

Don't forget to script grunt command line when deploying in order to refresh less / sass / css / images

### TDD CSS

[](#tdd-css)

This feature is a WiP feature I'm working on : I want to apply the same work process as for back dev : Test Driven Development.

This is now possible to achieve this goal for CSS dev. We'll use the KSS documentation  with the NodeJS KSS-node project and the grunt-styleguide.

During your dev, a live styleguide is created at /styleguide/index.html address ().

With the dynamic update on save, you then can work directly on html templates of your doc to create the "unit blocks" of your design.

To benefit from this feature, just launch grunt :

```
grunt dev

```

HOW-TO DEVELOP A NEW MODULE
===========================

[](#how-to-develop-a-new-module)

Introduction
------------

[](#introduction)

With Magento, a module is split into many directories making its development and maintenance difficult.

Thanks to Magento Fuse, we'll fix this and simplify the development of a module : You'll only version your module stuff. Nothing more !

The skeleton
------------

[](#the-skeleton)

A new tool fully inspired by Mtool from Daniel Kocherga () will be added to Magento Fuse soon. In the meantime, organize your module skeleton this way :

```
/app/etc/modules/MyNamespace_MyModule.xml
/app/code/community/MyNamespace/Monmodule/*
/app/design/frontend/base/default/layout/mynamespace/mymodule/*
/app/design/frontend/base/default/template/mynamespace/mymodule/*
/skin/frontend/base/default/css/mynamespace/mymodule/*
/skin/frontend/base/default/js/mynamespace/mymodule/*
/skin/frontend/base/default/images/mynamespace/mymodule/*
/js/mynamespace/mymodule/*
/lib/mynamespace/mymodule/*

```

Dev process
-----------

[](#dev-process)

### Create the module skeleton

[](#create-the-module-skeleton)

Add a composer.json to define the project as a Magento module ("type" : "magento-module") + describe the installation mapping :

```

{
    "name": "adfab/avatar",
    "description": "Social commerce is on its way",
    "version": "1.0.0",
    "type": "magento-module",
    "keywords": [
        "magento", "avatar", "social commerce", "adfab"
    ],
    "homepage": "http://www.adfab.fr",
    "license":"OSL-3.0",
    "authors": [
        {
            "name": "Grégory Besson",
            "email": "gregory.besson@adfab.fr",
            "homepage": "http://www.adfab.fr"
        }
    ],
    "require": {
        "magento-hackathon/magento-composer-installer": "@stable"
    },
    "extra": {
        "map": [
            ["app/etc/modules/Adfab_Avatar.xml", "app/etc/modules/Adfab_Avatar.xml"],
            ["app/code/community/Adfab/Avatar/", "app/code/community/Adfab/Avatar/"],
            ["app/design/frontend/base/default/layout/adfab/avatar/layout.xml", "app/design/frontend/base/default/layout/adfab/avatar/layout.xml"],
            ["app/locale/en_US/Adfab_Avatar.csv", "app/locale/en_US/Adfab_Avatar.csv"],
            ["app/locale/fr_FR/Adfab_Avatar.csv", "app/locale/fr_FR/Adfab_Avatar.csv"],
            ["skin/frontend/base/default/css/adfab/avatar/", "skin/frontend/base/default/css/adfab/avatar/"],
            ["skin/frontend/base/default/images/adfab/avatar/", "skin/frontend/base/default/images/adfab/avatar/"],
            ["skin/frontend/base/default/js/adfab/", "skin/frontend/base/default/js/adfab/"]
        ]
    }
}

```

### Version this module

[](#version-this-module)

Use Git or SVN as you wish

### Install a Magento version with Magento Fuse

[](#install-a-magento-version-with-magento-fuse)

Once done, declare the SVN or Git repository in the Fuse composer.json (following example for SVN) :

```
"require": {
    "adfab/avatar": "dev-trunk"
},
"repositories": [
    {
        "type": "vcs",
        "url": "http://myrepository.com/svn/MAGENTO/AVATAR"
    }
],

```

Launch `composer update` (your module will be installed in your vendor directory)

---

**BE CAREFUL**

Don't forget to activate the symlinks in System/configuration/Developer/Allow Symlinks

If you forget to do that, the render of your templates will fail silently :P

If you want to reapply your symlinks, just do :

---

` ./vendor/bin/composerCommandIntegrator.php magento-module-deploy`

### Add this module directory in your IDE

[](#add-this-module-directory-in-your-ide)

Add the module directory as a project in your IDE (For Eclipse : New-&gt;PHP Project from existing directory).

That's it, You can now develop your Magento module with no adherence with the Magento core files :)

Each modification is directly testabe on your Fuse environment. And the versioning will only contain the files from your module.

Enjoy ;)

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance0

Infrequent updates — may be unmaintained

Popularity14

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity63

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~26 days

Total

2

Last Release

4364d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/04f6fd57b93b6fc8c4f2e7388e9d24d5178c9c821c3b374e040484fd9dac333f?d=identicon)[Adfab](/maintainers/Adfab)

---

Top Contributors

[![gregorybesson](https://avatars.githubusercontent.com/u/2585805?v=4)](https://github.com/gregorybesson "gregorybesson (61 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/adfab-magentofuse/health.svg)

```
[![Health](https://phpackages.com/badges/adfab-magentofuse/health.svg)](https://phpackages.com/packages/adfab-magentofuse)
```

###  Alternatives

[roave/backward-compatibility-check

Tool to compare two revisions of a public API to check for BC breaks

5953.3M55](/packages/roave-backward-compatibility-check)[internachi/modular

Modularize your Laravel apps

1.1k662.4k8](/packages/internachi-modular)[drupal/core-dev

require-dev dependencies from drupal/drupal; use in addition to drupal/core-recommended to run tests from drupal/core.

2021.0M276](/packages/drupal-core-dev)[wsdltophp/packagegenerator

Generate hierarchical PHP classes based on a WSDL

4351.9M19](/packages/wsdltophp-packagegenerator)[wheelpros/fitment-platform-api

Magento 2 (Open Source)

12.1k1.2k](/packages/wheelpros-fitment-platform-api)[october/rain

October Rain Library

1601.7M63](/packages/october-rain)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
