{"id":23046967,"url":"https://github.com/ikoene/symfony-micro","last_synced_at":"2025-08-15T00:33:45.467Z","repository":{"id":56989813,"uuid":"47579863","full_name":"ikoene/symfony-micro","owner":"ikoene","description":"Use Symfony as a microframework.","archived":false,"fork":false,"pushed_at":"2017-12-21T19:16:40.000Z","size":47,"stargazers_count":35,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-06-25T12:52:21.927Z","etag":null,"topics":["micro-framework","microkernel","symfony","symfony-micro"],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ikoene.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-12-07T21:20:17.000Z","updated_at":"2024-08-29T17:07:19.000Z","dependencies_parsed_at":"2022-08-21T13:50:12.475Z","dependency_job_id":null,"html_url":"https://github.com/ikoene/symfony-micro","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/ikoene/symfony-micro","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ikoene%2Fsymfony-micro","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ikoene%2Fsymfony-micro/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ikoene%2Fsymfony-micro/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ikoene%2Fsymfony-micro/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ikoene","download_url":"https://codeload.github.com/ikoene/symfony-micro/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ikoene%2Fsymfony-micro/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270505618,"owners_count":24596501,"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","status":"online","status_checked_at":"2025-08-14T02:00:10.309Z","response_time":75,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["micro-framework","microkernel","symfony","symfony-micro"],"created_at":"2024-12-15T22:30:11.323Z","updated_at":"2025-08-15T00:33:45.215Z","avatar_url":"https://github.com/ikoene.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Build Status](https://travis-ci.org/ikoene/symfony-micro.svg?branch=master)](https://travis-ci.org/ikoene/symfony-micro)\n[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/ikoene/symfony-micro/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/ikoene/symfony-micro/?branch=master)\n[![SensioLabs Insight](https://img.shields.io/sensiolabs/i/7a556c44-8128-49e0-ac7e-d6f601d7fec7.svg)](https://insight.sensiolabs.com/projects/7a556c44-8128-49e0-ac7e-d6f601d7fec7)\n[![Packagist](https://img.shields.io/packagist/v/ikoene/symfony-micro.svg)](https://packagist.org/packages/ikoene/symfony-micro)\n[![Installs](https://img.shields.io/packagist/dt/ikoene/symfony-micro.svg)](https://packagist.org/packages/ikoene/symfony-micro)\n[![license](https://img.shields.io/github/license/ikoene/symfony-micro.svg)](https://github.com/ikoene/symfony-micro/blob/master/LICENSE.md)\n\n# Symfony micro-framework\n\nUse Symfony as a microframework.\n\n## Installation\n\nCreate a new project with [Composer](https://getcomposer.org/).\n\n```bash\ncomposer create-project ikoene/symfony-micro\n```\n\n## MicroKernelTrait\n\nThe **MicroKernelTrait** allows you to create a fully-functional Symfony application in as little as one file. It allows you to start with a tiny application, and then add features and structure as you need to. Its goal to give you the power to choose your bundles and structure. Since you're only enabling features and bundles you're actually going to use, your application gets a performance boost in comparison with using the Symfony full-stack framework. \n\n## Bundles\n\nThese bundles are registered in the MicroKernel:\n\n* [FrameworkBundle](https://github.com/]symfony/framework-bundle)\n* [SensioFrameworkExtraBundle](https://github.com/sensiolabs/SensioFrameworkExtraBundle)\n* [TwigBundle](https://github.com/symfony/twig-bundle)\n\nWhile you could argue what exactly should and should not be included in a microframework, I found myself always using these bundles. So they're enabled by default. Don't want to use Twig as your template engine? Remove it in the MicroKernel.\n\nWhen working in a *dev* or *test* environment, the **MicroKernel** also registers the necesarry bundles to be able to debug your project:\n\n* [WebProfilerBundle](https://github.com/symfony/web-profiler-bundle)\n* [DebugBundle](https://github.com/symfony/debug-bundle)\n\n## Usage\n\n### Development\n\nBuild your application in the AppBundle. You're free to structure your application as you want, but following the typical Symfony bundle structure has it's advantages. For one, it would be easier to migrate to a full-stack Symfony project if your application grows too big.\n\nBut, as I said, the choice is yours.\n\n### Register bundles\n\nMissing some features? Register your bundles in the MicroKernel:\n\n```php\n...\n\t$bundles = array(\n\t\tnew Symfony\\Bundle\\FrameworkBundle\\FrameworkBundle(),\n\t\tnew Symfony\\Bundle\\TwigBundle\\TwigBundle(),\n\t\tnew Sensio\\Bundle\\FrameworkExtraBundle\\SensioFrameworkExtraBundle(),\n\t\tnew AppBundle\\AppBundle(),\n\t);\n...\n```\n\n### Console\n\nWhile this is a microframework, chances are you'll still need the console. Use it like this:\n\n```bash\n./console\n```\n\n### PHPUnit Testing\n\nRun all tests with this command:\n\n```bash\nbin/phpunit -c .\n```\n\n# Additional info\n\n[Building your own Framework with the MicroKernelTrait](https://symfony.com/doc/2.8/cookbook/configuration/micro-kernel-trait.html)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fikoene%2Fsymfony-micro","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fikoene%2Fsymfony-micro","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fikoene%2Fsymfony-micro/lists"}