{"id":18782891,"url":"https://github.com/jijihohococo/ichi","last_synced_at":"2025-09-06T15:41:08.808Z","repository":{"id":56998996,"uuid":"456294353","full_name":"jijihohococo/ichi","owner":"jijihohococo","description":"PHP MVC Framework","archived":false,"fork":false,"pushed_at":"2024-04-06T15:29:56.000Z","size":24,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-12-29T11:31:11.659Z","etag":null,"topics":["open-source","php","php-framework","php-mvc","php-mvc-framework"],"latest_commit_sha":null,"homepage":"","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/jijihohococo.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-02-06T22:59:22.000Z","updated_at":"2022-10-23T05:44:05.000Z","dependencies_parsed_at":"2024-02-24T06:21:23.687Z","dependency_job_id":"5344f8b9-388c-4b77-9eb7-6e1cb4445767","html_url":"https://github.com/jijihohococo/ichi","commit_stats":{"total_commits":19,"total_committers":1,"mean_commits":19.0,"dds":0.0,"last_synced_commit":"0973562faf78561659ff5f7fca6febc775355bd5"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jijihohococo%2Fichi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jijihohococo%2Fichi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jijihohococo%2Fichi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jijihohococo%2Fichi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jijihohococo","download_url":"https://codeload.github.com/jijihohococo/ichi/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239699581,"owners_count":19682574,"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":["open-source","php","php-framework","php-mvc","php-mvc-framework"],"created_at":"2024-11-07T20:37:23.945Z","updated_at":"2025-09-06T15:41:08.793Z","avatar_url":"https://github.com/jijihohococo.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ICHI PHP FRAMEWORK\n\nICHI PHP FRAMEWORK is the fast and secure MVC PHP framework.\n\n## License\n\nThis framework is Open Source According to [MIT license](LICENSE.md)\n\n\n## Table Of Contents\n\n- [ICHI PHP FRAMEWORK](#ichi-php-framework)\n\t- [License](#license)\n\t- [Table Of Contents](#table-of-contents)\n\t- [Installation](#installation)\n\t- [Setup](#setup)\n\t- [Using](#using)\n\t\t- [Route](#route)\n\t\t- [Middleware](#middleware)\n\t\t- [Model](#model)\n\t\t- [Controller](#controller)\n\t\t- [View](#view)\n\t\t- [Validation](#validation)\n\n\n## Installation\n\n```php\n\ncomposer create-project jijihohococo/ichi:dev-master your_project\n\n```\n\n## Setup\n\nFirst, You must create .env file under your project folder. And then you must declare your real database name, database username and password in this .env file.\n\n\u003cb\u003eYou can see how to set the data in .env.example under your project folder.\u003c/b\u003e\n\n\u003ci\u003eIn your .env file\u003c/i\u003e\n\n```txt\nDB_CONNECTION=mysql\nDB_HOST=127.0.0.1\nDB_PORT=3306\nDB_DATABASE=your_database_name\nDB_USERNAME=your_database_user_name\nDB_PASSWORD=your_database_password\n```\n\nYou can run the app from public path\n\n```txt\n\nyour_project/public \u003e php -S localhost:8000\n\n```\n\n## Using\n\n### Route\n\nYou can add your route in 'web' function of \"routes/web.php\".\n\nIf you want to add another route file, create new route file under \"routes\" folder.\nAnd then you must add new function like 'web.php'.\n\n```php\n\nfunction new_routes($route){\n\n}\n\n```\n\nThen you must use your new route file in 'app/Kernel.php';\n\n```php\n\nnamespace App;\n\nuse JiJiHoHoCoCo\\IchiRoute\\Router\\Route;\n\nrequire_once __DIR__ . '/../routes/new_routes.php';\n\nclass Kernel{\n\n\n\tpublic function run(){\n\t\t$route = new Route;\n\t\tnew_routes($route);\n\t\t$route-\u003erun();\n\t}\n\n\n\n}\n\n```\n\u003cb\u003eAbove code is highlighting the things in adding new route file.\u003c/b\u003e\n\nYou can use \u003ca href=\"https://github.com/jijihohococo/ichi-route/blob/master/README.md\"\u003ethis docuementation\u003c/a\u003e for the route functions in detail.\n\n### Middleware\n\nYou can create middleware for routes in command line.\n\n```php\n\nphp ichi make:middleware NewMiddleware\n\n```\n\nThe Middleware Class will be created under 'app/Middleware' folder.\n\nYou can use \u003ca href=\"https://github.com/jijihohococo/ichi-route#middleware\"\u003ethis documentation\u003c/a\u003e for the middleware functions in detail.\n\n\n### Model\n\nYou can add another database connection in \"app/Kernel.php\" as shown as \u003ca href=\"https://github.com/jijihohococo/ichi-orm/blob/master/README.md#set-up-database-connection\"\u003e this documention \u003c/a\u003e.\n\nYou can create model in command line.\n\n```php\n\nphp ichi make:model NewModel\n\n```\n\nThe Model Class will be created under 'app/Models' folder.\n\n\u003ci\u003eExample Model\u003c/i\u003e\n\n```php\n\nnamespace App\\Models;\n\nuse JiJiHoHoCoCo\\IchiORM\\Database\\Model;\n\nclass NewModel extends Model{\n\n\tpublic $id , $name , $created_at , $updated_at , $deleted_at ;\n\n}\n```\n\nYou can use \u003ca href=\"https://github.com/jijihohococo/ichi-orm/blob/master/README.md\"\u003e this documentation \u003c/a\u003e to use Model in detail\n\n### Controller\n\nYou can create Controller in command line.\n\n```php\n\nphp ichi make:controller NewController\n\n```\n\nThe Controller Class will be created under 'app/Controllers' folder.\n\nFor more detail, use \u003ca href=\"https://github.com/jijihohococo/ichi-route/blob/master/README.md#creating-controller\"\u003e this documentation \u003c/a\u003e.\n\n### View\n\nYou can create View Component Class in command line.\n\n```php\n\nphp ichi make:component ViewComponent\n\n```\nThe View Component Class will be created under 'app/Components' folder\n\n\nYou can return view in the route or controller's function\n\n\u003ci\u003eWithout Controller\u003c/i\u003e\n```php\n\n$route-\u003eget('/welcome',function(){\n\treturn view('welcome.php');\n});\n\n```\n\n\u003ci\u003eWith Controller\u003c/i\u003e\n```php\n\n$route-\u003eget('/welcome','HomeController@welcome');\n\n```\n\n```php\n\nnamespace App\\Controllers;\n\n\nclass HomeController{\n\n\n\tpublic function welcome(){\n\t\treturn view('welcome.php');\n\t}\n\n\n}\n```\n\nYou must create view PHP file under 'resources/views' folder.\n\nFor more detail, use \u003ca href=\"https://github.com/jijihohococo/ichi-template/blob/master/README.md\"\u003e this documentation\u003c/a\u003e.\n\n\n### Validation\n\nYou can validate the input data in your controller class\n\n\n```php\n\nnamespace App\\Controllers;\n\n\nuse JiJiHoHoCoCo\\IchiValidation\\Validator;\nclass TestController{\n\n\n\tpublic function test(){\n\n\t\t$validator = new Validator();\n\t\tif(!$validator-\u003evalidate($_REQUEST,[\n\t\t\t'name' =\u003e 'required' ,\n\t\t\t'age' =\u003e 'required|integer' ,\n\t\t\t'email' =\u003e ['required','email']\n\t\t])){\n\t\t\tsetErrors($validator-\u003egetErrors());\n\t\t\treturn view('test.php');\n\t\t}\n\n\t}\n\n\n}\n\n```\nYou can call your validation error messages in your view php file\n\n```\n\n\u003c?php if(isset($errors['name'])): ?\u003e\n\u003c?php echo $errors['name']; ?\u003e\n\u003c?php endif; ?\u003e\n\n```\n\nFor more detail, use \u003ca href=\"https://github.com/jijihohococo/ichi-validation/blob/master/README.md\"\u003e this documentation\u003c/a\u003e.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjijihohococo%2Fichi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjijihohococo%2Fichi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjijihohococo%2Fichi/lists"}