{
    "href": "/post/2013/12/12/lighter-than-silex-and-slimmer-than-slim-aura-web-project-the-micromacro-framework/",
    "relId": "2013/12/12/lighter-than-silex-and-slimmer-than-slim-aura-web-project-the-micromacro-framework",
    "title": "Lighter than Silex, and Slimmer than Slim: Aura.Web_Project, the Micro/Macro Framework",
    "author": "pmjones",
    "markup": "html",
    "tags": [
        {
            "href": "/tag/aura/",
            "relId": "aura",
            "title": "Aura",
            "author": null,
            "created": "2020-09-14 21:51:57 UTC",
            "updated": [
                "2020-09-14 21:51:57 UTC"
            ],
            "markup": "markdown"
        },
        {
            "href": "/tag/php/",
            "relId": "php",
            "title": "PHP",
            "author": null,
            "created": null,
            "updated": [],
            "markup": "markdown"
        },
        {
            "href": "/tag/programming/",
            "relId": "programming",
            "title": "Programming",
            "author": null,
            "created": null,
            "updated": [],
            "markup": "markdown"
        }
    ],
    "created": "2013-12-12 17:04:56 UTC",
    "updated": [
        "2013-12-12 17:04:56 UTC"
    ],
    "html": "<blockquote>\n<p>... the <a href=\"https://github.com/auraphp/Aura.Web_Kernel\">Aura.Web_Project</a> package is a minimalist web-specific project framework that starts out small and grows only as you need it.</p>\n<p>By \u201cminimal\u201d we mean <em>very</em> minimal. The project package provides only a <a href=\"https://github.com/auraphp/Aura.Di/tree/develop-2\">dependency injection container</a>, a <a href=\"https://github.com/auraphp/Aura.Project_Kernel\">configuration system</a>, a <a href=\"https://github.com/auraphp/Aura.Router/tree/develop-2\">router</a>, a <a href=\"https://github.com/auraphp/Aura.Dispatcher\">dispatcher</a>, a pair of <a href=\"http://github.com/auraphp/Aura.Web/tree/develop-2\">request and response</a> objects, and a <a href=\"https://github.com/Seldaek/monolog\">Monolog</a> instance for logging.</p>\n<p>This minimal implementation should not be taken as \u201crestrictive\u201d:</p>\n<ul>\n<li>\n<p>The DI container, coupled with the project kernel\u2019s two-stage configuration, allows a wide range of programmatic service definitions. This means <em>no more static calls</em> to configure services; edit the <code>modify</code> stage config files, pull a service out of the container, and operate on it directly.</p>\n</li>\n<li>\n<p>You can add <em>any</em> library you want into the project, not just Aura libraries, through Composer and the DI container. This means the bundle/plugin universe is made up of <strong>anything written in PHP</strong>, not just Aura-specific plugins.</p>\n</li>\n<li>\n<p>As noted in earlier articles in this series, the <a href=\"/blog/2013/11/18/aura-v2-router\">router</a> and <a href=\"/blog/2013/11/04/aura-v2-dispatcher\">dispatcher</a> are completely separated from each other, and are built with iterative refactoring in mind. This means you can start with micro-framework-like closure controllers, and work your way into more complex controller objects of your own design.</p>\n</li>\n</ul>\n</blockquote>\n"
}
