{"id":21697117,"url":"https://github.com/mvccore/example-helloworld-portable","last_synced_at":"2026-02-04T16:07:04.758Z","repository":{"id":106805229,"uuid":"163995165","full_name":"mvccore/example-helloworld-portable","owner":"mvccore","description":"Basic MvcCore Hello world application packaging demonstration.","archived":false,"fork":false,"pushed_at":"2024-12-16T14:08:44.000Z","size":1014,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-01T03:10:02.265Z","etag":null,"topics":["building","hello-world","mvccore","packing","portable","portable-skeleton","single-file","skeleton"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mvccore.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":"2019-01-03T16:11:36.000Z","updated_at":"2024-12-16T14:01:30.000Z","dependencies_parsed_at":"2024-04-13T00:21:19.222Z","dependency_job_id":"aa45642a-2d36-40e4-baa1-9fe8db10f510","html_url":"https://github.com/mvccore/example-helloworld-portable","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mvccore%2Fexample-helloworld-portable","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mvccore%2Fexample-helloworld-portable/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mvccore%2Fexample-helloworld-portable/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mvccore%2Fexample-helloworld-portable/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mvccore","download_url":"https://codeload.github.com/mvccore/example-helloworld-portable/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253815442,"owners_count":21968622,"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":["building","hello-world","mvccore","packing","portable","portable-skeleton","single-file","skeleton"],"created_at":"2024-11-25T19:23:44.412Z","updated_at":"2026-02-04T16:06:59.738Z","avatar_url":"https://github.com/mvccore.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MvcCore - Example - Hello World For Portable Packing\n\n[![Latest Stable Version](https://img.shields.io/badge/Stable-v5.3.0-brightgreen.svg?style=plastic)](https://github.com/mvccore/example-helloworld-portable/releases)\n[![License](https://img.shields.io/badge/License-BSD%203-brightgreen.svg?style=plastic)](https://mvccore.github.io/docs/mvccore/5.0.0/LICENSE.md)\n[![Packager Build](https://img.shields.io/badge/Packager%20Build-passing-brightgreen.svg?style=plastic)](https://github.com/mvccore/packager)\n![PHP Version](https://img.shields.io/badge/PHP-\u003e=5.4-brightgreen.svg?style=plastic)\n\nSkeleton for MvcCore [Hello World (`mvccore/example-helloworld`)](https://github.com/mvccore/example-helloworld) example portable packing/building.\n\n## Instalation\n```shell\n# load hello world portable project skeleton\ncomposer create-project mvccore/example-helloworld-portable ./my-helloworld-portable \n\n# go to portable project skeleton directory\ncd my-helloworld-portable\n\n# load hello world project\ncomposer create-project mvccore/example-helloworld ./development\n```\n\n## Packed Result Features\n\n- **Result** is **completely portable** - `./example-helloworld-portable/release/index.php`\n- Result application is **currently packed in strict package mode**\n- All packing configurations are included in `./build/configs` directory\n- Packed with [**Packager library (`mvccore/packager`)**](https://github.com/mvccore/packager), all packing ways possible:\n  - **PHAR file**\n    - standard PHAR package with whole development directory content\n  - **PHP file**\n    - **strict package**\n      - everything is contained in result `index.php`\n      - only `.htaccess` or `web.config` are necessary to use mod_rewrite\n    - **preserve package**\n      - result `index.php` file contains PHP files, \n        PHTML templates but no CSS/JS/fonts or images\n      - all wrapped file system functions are looking inside \n        package first, then they try to read data from HDD\n    - **preserve hdd**\n      - result `index.php` file contains PHP files, \n        PHTML templates but no CSS/JS/fonts or images\n      - all wrapped file system functions are looking on HDD first, \n        then they try to read data from package inself\n    - **strict hdd**\n      - result `index.php` file contains only PHP files, \n        but PHTML templates, all CSS/JS/fonts and images are on HDD\n      - no PHP file system function is wrapped\n\n## Build\n\n### 1. Prepare Application\n- go to `./my-helloworld-portable/development`\n- clear everything in `./Var/Tmp/`\n- uncomment `-\u003eSetCompiled(\\MvcCore\\Application::COMPILED_SFU)` in `./index.php`\n- visit all application routes where are different JS/CSS bundles \n  groups to generate `./Var/Tmp/` content for result app\n- run build process\n\n### 2. Run Build Process\n\n#### Linux:\n```shell\n# go to project build dir\ncd ./my-helloworld-portable/build\n# run build process into single PHP file\nsh make.sh\n```\n\n#### Windows:\n```shell\n# go to project build dir\ncd ./my-helloworld-portable/build\n# run build process into single PHP file\nmake.cmd\n```\n\n#### Browser:\n```shell\n# visit script `make-php.php` in your project build directory:\nhttp://localhost/my-helloworld-portable/build/make-php.php\n# now run your result in:\nhttp://localhost/my-helloworld-portable/release/\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmvccore%2Fexample-helloworld-portable","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmvccore%2Fexample-helloworld-portable","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmvccore%2Fexample-helloworld-portable/lists"}