{"id":21085474,"url":"https://github.com/falsovsky/idlerpg-site-ng","last_synced_at":"2025-05-16T11:31:18.067Z","repository":{"id":48615471,"uuid":"139908637","full_name":"falsovsky/idlerpg-site-ng","owner":"falsovsky","description":"Rewrite of the idlerpg irc bot site (https://idlerpg.net/) using laminas.","archived":true,"fork":false,"pushed_at":"2023-12-28T16:36:09.000Z","size":2181,"stargazers_count":9,"open_issues_count":5,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-25T04:54:02.331Z","etag":null,"topics":["cli-server","composer","idle","idlerpg","idlerpg-site-ng","irc","laminas","ng","php","site","zf3"],"latest_commit_sha":null,"homepage":"http://idle.deadbsd.org/","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/falsovsky.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":"2018-07-05T22:59:56.000Z","updated_at":"2025-01-09T19:33:19.000Z","dependencies_parsed_at":"2023-01-23T04:30:36.182Z","dependency_job_id":null,"html_url":"https://github.com/falsovsky/idlerpg-site-ng","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/falsovsky%2Fidlerpg-site-ng","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/falsovsky%2Fidlerpg-site-ng/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/falsovsky%2Fidlerpg-site-ng/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/falsovsky%2Fidlerpg-site-ng/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/falsovsky","download_url":"https://codeload.github.com/falsovsky/idlerpg-site-ng/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254521824,"owners_count":22084985,"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":["cli-server","composer","idle","idlerpg","idlerpg-site-ng","irc","laminas","ng","php","site","zf3"],"created_at":"2024-11-19T20:33:46.909Z","updated_at":"2025-05-16T11:31:13.039Z","avatar_url":"https://github.com/falsovsky.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# IdleRpg Site NG\n\n[![Codacy Badge](https://api.codacy.com/project/badge/Grade/c407b983eb894a01a8b4d1e80e50dc4a)](https://www.codacy.com/app/falsovsky/idlerpg-site-ng?utm_source=github.com\u0026amp;utm_medium=referral\u0026amp;utm_content=falsovsky/idlerpg-site-ng\u0026amp;utm_campaign=Badge_Grade)\n[![CodeFactor](https://www.codefactor.io/repository/github/falsovsky/idlerpg-site-ng/badge)](https://www.codefactor.io/repository/github/falsovsky/idlerpg-site-ng)\n[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/falsovsky/idlerpg-site-ng/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/falsovsky/idlerpg-site-ng/?branch=master)\n[![Build Status](https://travis-ci.org/falsovsky/idlerpg-site-ng.svg?branch=master)](https://travis-ci.org/falsovsky/idlerpg-site-ng)\n[![Coverage Status](https://coveralls.io/repos/github/falsovsky/idlerpg-site-ng/badge.svg?branch=master)](https://coveralls.io/github/falsovsky/idlerpg-site-ng?branch=master)\n\n## Introduction\n\nThis is a rewrite of the original site from http://idlerpg.net/ using Zend Framework 3.\nSee a live demo at http://idle.deadbsd.org/.\n\n## Installation\n\nThe easiest way to install the site 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 idlerpg-site-ng:\n\n```bash\n$ git clone https://github.com/falsovsky/idlerpg-site-ng.git path/to/install\n```\n\nEdit the default configuration file to set the path to your bot files, bot name, etc:\n\n```bash\n$ cd path/to/install\n$ cp config/autoload/local.php.dist config/autoload/local.php\n$ nano config/autoload/local.php\n```\n\nNow lets install the PHP dependencies via composer (Choose **\"Do not inject\"** if asked):\n\n```bash\n$ composer install\n```\n\nOnce everything is installed, you can test it out immediately using PHP's built-in web server:\n\n```bash\n$ php -S 0.0.0.0:8080 -t public/ public/index.php\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\n**Note:** The built-in CLI server is *for development only*.\n\n## Development mode\n\nThe site ships with [laminas-development-mode](https://github.com/laminas/laminas-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 site 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 site unit tests, you need to do one of the following:\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 docker-compose\n\nThis site 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 idlerpg.localhost\n    DocumentRoot /path/to/idlerpg/public\n    \u003cDirectory /path/to/idlerpg/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/idlerpg.localhost.conf`\nit should look something like below:\n\n```nginx\nserver {\n    listen       80;\n    server_name  idlerpg.localhost;\n    root         /path/to/idlerpg/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/idlerpg/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\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```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffalsovsky%2Fidlerpg-site-ng","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffalsovsky%2Fidlerpg-site-ng","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffalsovsky%2Fidlerpg-site-ng/lists"}