{"id":15108680,"url":"https://github.com/zendframework/zendskeletonapplication","last_synced_at":"2025-09-27T08:30:28.690Z","repository":{"id":1731287,"uuid":"2484971","full_name":"zendframework/ZendSkeletonApplication","owner":"zendframework","description":"Skeleton application for zend-mvc projects","archived":true,"fork":false,"pushed_at":"2019-12-31T22:24:51.000Z","size":2954,"stargazers_count":1516,"open_issues_count":4,"forks_count":1429,"subscribers_count":215,"default_branch":"master","last_synced_at":"2024-05-17T19:43:43.097Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"jamis/bucketwise","license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zendframework.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2011-09-29T21:14:22.000Z","updated_at":"2024-05-17T16:39:54.000Z","dependencies_parsed_at":"2022-08-20T16:50:08.024Z","dependency_job_id":null,"html_url":"https://github.com/zendframework/ZendSkeletonApplication","commit_stats":null,"previous_names":[],"tags_count":41,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zendframework%2FZendSkeletonApplication","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zendframework%2FZendSkeletonApplication/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zendframework%2FZendSkeletonApplication/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zendframework%2FZendSkeletonApplication/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zendframework","download_url":"https://codeload.github.com/zendframework/ZendSkeletonApplication/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":234410488,"owners_count":18828215,"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":[],"created_at":"2024-09-25T22:21:45.421Z","updated_at":"2025-09-27T08:30:28.033Z","avatar_url":"https://github.com/zendframework.png","language":"PHP","readme":"# ZendSkeletonApplication\n\n\u003e ## Repository abandoned 2019-12-31\n\u003e\n\u003e This repository has moved to laminas/laminas-skeleton-installer.\n\n## Introduction\n\nThis is a skeleton application using the Zend Framework MVC layer and module\nsystems. This application is meant to be used as a starting place for those\nlooking to get their feet wet with Zend Framework.\n\n## Installation using Composer\n\nThe easiest way to create a new Zend Framework project is to use\n[Composer](https://getcomposer.org/).  If you don't have it already installed,\nthen please install as per the [documentation](https://getcomposer.org/doc/00-intro.md).\n\nTo create your new Zend Framework project:\n\n```bash\n$ composer create-project -sdev zendframework/skeleton-application path/to/install\n```\n\nOnce installed, you can test it out immediately using PHP's built-in web server:\n\n```bash\n$ cd path/to/install\n$ php -S 0.0.0.0:8080 -t public\n# OR use the composer alias:\n$ composer run --timeout 0 serve\n```\n\nThis will start the cli-server on port 8080, and bind it to all network\ninterfaces. You can then visit the site at http://localhost:8080/\n- which will bring up Zend Framework welcome page.\n\n**Note:** The built-in CLI server is *for development only*.\n\n## Development mode\n\nThe skeleton ships with [zf-development-mode](https://github.com/zfcampus/zf-development-mode)\nby default, and provides three aliases for consuming the script it ships with:\n\n```bash\n$ composer development-enable  # enable development mode\n$ composer development-disable # disable development mode\n$ composer development-status  # whether or not development mode is enabled\n```\n\nYou may provide development-only modules and bootstrap-level configuration in\n`config/development.config.php.dist`, and development-only application\nconfiguration in `config/autoload/development.local.php.dist`. Enabling\ndevelopment mode will copy these files to versions removing the `.dist` suffix,\nwhile disabling development mode will remove those copies.\n\nDevelopment mode is automatically enabled as part of the skeleton installation process. \nAfter making changes to one of the above-mentioned `.dist` configuration files you will\neither need to disable then enable development mode for the changes to take effect,\nor manually make matching updates to the `.dist`-less copies of those files.\n\n## Running Unit Tests\n\nTo run the supplied skeleton unit tests, you need to do one of the following:\n\n- During initial project creation, select to install the MVC testing support.\n- After initial project creation, install [zend-test](https://zendframework.github.io/zend-test/):\n\n  ```bash\n  $ composer require --dev zendframework/zend-test\n  ```\n\nOnce testing support is present, you can run the tests using:\n\n```bash\n$ ./vendor/bin/phpunit\n```\n\nIf you need to make local modifications for the PHPUnit test setup, copy\n`phpunit.xml.dist` to `phpunit.xml` and edit the new file; the latter has\nprecedence over the former when running tests, and is ignored by version\ncontrol. (If you want to make the modifications permanent, edit the\n`phpunit.xml.dist` file.)\n\n## Using Vagrant\n\nThis skeleton includes a `Vagrantfile` based on ubuntu 16.04 (bento box)\nwith configured Apache2 and PHP 7.0. Start it up using:\n\n```bash\n$ vagrant up\n```\n\nOnce built, you can also run composer within the box. For example, the following\nwill install dependencies:\n\n```bash\n$ vagrant ssh -c 'composer install'\n```\n\nWhile this will update them:\n\n```bash\n$ vagrant ssh -c 'composer update'\n```\n\nWhile running, Vagrant maps your host port 8080 to port 80 on the virtual\nmachine; you can visit the site at http://localhost:8080/\n\n\u003e ### Vagrant and VirtualBox\n\u003e\n\u003e The vagrant image is based on ubuntu/xenial64. If you are using VirtualBox as\n\u003e a provider, you will need:\n\u003e\n\u003e - Vagrant 1.8.5 or later\n\u003e - VirtualBox 5.0.26 or later\n\nFor vagrant documentation, please refer to [vagrantup.com](https://www.vagrantup.com/)\n\n## Using docker-compose\n\nThis skeleton provides a `docker-compose.yml` for use with\n[docker-compose](https://docs.docker.com/compose/); it\nuses the `Dockerfile` provided as its base. Build and start the image using:\n\n```bash\n$ docker-compose up -d --build\n```\n\nAt this point, you can visit http://localhost:8080 to see the site running.\n\nYou can also run composer from the image. The container environment is named\n\"zf\", so you will pass that value to `docker-compose run`:\n\n```bash\n$ docker-compose run zf composer install\n```\n\n## Web server setup\n\n### Apache setup\n\nTo setup apache, setup a virtual host to point to the public/ directory of the\nproject and you should be ready to go! It should look something like below:\n\n```apache\n\u003cVirtualHost *:80\u003e\n    ServerName zfapp.localhost\n    DocumentRoot /path/to/zfapp/public\n    \u003cDirectory /path/to/zfapp/public\u003e\n        DirectoryIndex index.php\n        AllowOverride All\n        Order allow,deny\n        Allow from all\n        \u003cIfModule mod_authz_core.c\u003e\n        Require all granted\n        \u003c/IfModule\u003e\n    \u003c/Directory\u003e\n\u003c/VirtualHost\u003e\n```\n\n### Nginx setup\n\nTo setup nginx, open your `/path/to/nginx/nginx.conf` and add an\n[include directive](http://nginx.org/en/docs/ngx_core_module.html#include) below\ninto `http` block if it does not already exist:\n\n```nginx\nhttp {\n    # ...\n    include sites-enabled/*.conf;\n}\n```\n\n\nCreate a virtual host configuration file for your project under `/path/to/nginx/sites-enabled/zfapp.localhost.conf`\nit should look something like below:\n\n```nginx\nserver {\n    listen       80;\n    server_name  zfapp.localhost;\n    root         /path/to/zfapp/public;\n\n    location / {\n        index index.php;\n        try_files $uri $uri/ @php;\n    }\n\n    location @php {\n        # Pass the PHP requests to FastCGI server (php-fpm) on 127.0.0.1:9000\n        fastcgi_pass   127.0.0.1:9000;\n        fastcgi_param  SCRIPT_FILENAME /path/to/zfapp/public/index.php;\n        include fastcgi_params;\n    }\n}\n```\n\nRestart the nginx, now you should be ready to go!\n\n## QA Tools\n\nThe skeleton does not come with any QA tooling by default, but does ship with\nconfiguration for each of:\n\n- [phpcs](https://github.com/squizlabs/php_codesniffer)\n- [phpunit](https://phpunit.de)\n\nAdditionally, it comes with some basic tests for the shipped\n`Application\\Controller\\IndexController`.\n\nIf you want to add these QA tools, execute the following:\n\n```bash\n$ composer require --dev phpunit/phpunit squizlabs/php_codesniffer zendframework/zend-test\n```\n\nWe provide aliases for each of these tools in the Composer configuration:\n\n```bash\n# Run CS checks:\n$ composer cs-check\n# Fix CS errors:\n$ composer cs-fix\n# Run PHPUnit tests:\n$ composer test\n```","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzendframework%2Fzendskeletonapplication","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzendframework%2Fzendskeletonapplication","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzendframework%2Fzendskeletonapplication/lists"}