All Projects → JeroenDeDauw → New Php Project

JeroenDeDauw / New Php Project

Licence: other
Template for new PHP projects. Also see https://github.com/JeroenDeDauw/new-php-library

Projects that are alternatives of or similar to New Php Project

Template Python
A template for new Python libraries.
Stars: ✭ 479 (+2561.11%)
Mutual labels:  makefile, template
Python Project Blueprint
Blueprint/Boilerplate For Python Projects
Stars: ✭ 670 (+3622.22%)
Mutual labels:  makefile, template
Datacurator Filetree
a standard filetree for /r/datacurator [ and r/datahoarder ]
Stars: ✭ 753 (+4083.33%)
Mutual labels:  makefile, template
League Gothic
A revival of an old classic, Alternate Gothic #1
Stars: ✭ 887 (+4827.78%)
Mutual labels:  makefile
Crazyarcade
A coco2d-x game
Stars: ✭ 16 (-11.11%)
Mutual labels:  makefile
Donut
Xcode file template manager
Stars: ✭ 17 (-5.56%)
Mutual labels:  template
Emojione Color Font
End of Life. Switch to https://github.com/eosrei/twemoji-color-font
Stars: ✭ 899 (+4894.44%)
Mutual labels:  makefile
Python Mk
A Makefile that contains the seed of a python development environment.
Stars: ✭ 16 (-11.11%)
Mutual labels:  makefile
Azure Openshift
RedHat Openshift Origin cluster on Azure
Stars: ✭ 17 (-5.56%)
Mutual labels:  template
Cxcore
A prebuilt Linux system use UEFI and f2fs for RaspberryPi 3B, RaspberryPi 3B+, RaspberryPi 4B
Stars: ✭ 17 (-5.56%)
Mutual labels:  makefile
Compiletools
Build C++ fast, with practically no configuration
Stars: ✭ 16 (-11.11%)
Mutual labels:  makefile
Docker Release Toolkit
My personal toolkit for building releases with Docker
Stars: ✭ 16 (-11.11%)
Mutual labels:  makefile
Articles
Article Publish in Wechat & Toutiao
Stars: ✭ 896 (+4877.78%)
Mutual labels:  makefile
Redash Kubernetes
Kubernetes setup for Redash
Stars: ✭ 16 (-11.11%)
Mutual labels:  makefile
Gitsem
a command line utility for managing semantically versioned (semver) git tags
Stars: ✭ 17 (-5.56%)
Mutual labels:  makefile
Template Sailsjs Vue
Two independent projects (BackEnd and FrontEnd) working as one. A Sails application.
Stars: ✭ 16 (-11.11%)
Mutual labels:  template
Device Sony Loire
Stars: ✭ 17 (-5.56%)
Mutual labels:  makefile
Ports
Developer FreeBSD Haskell "overlay" for the mighty FreeBSD Ports Collection. Use with caution, slippery when wet, etc.
Stars: ✭ 16 (-11.11%)
Mutual labels:  makefile
Mesos Dns Pkg
Packaging utilities for Mesos-DNS
Stars: ✭ 16 (-11.11%)
Mutual labels:  makefile
Azure Pipelines Template
template for your azure pipelines
Stars: ✭ 17 (-5.56%)
Mutual labels:  template

PHP Project Template

Build Status

This is a template for starting new PHP projects. Copy or fork to get started quickly.

(Update this section)

Contents

  • Ready-to-go PHPUnit (configuration and working bootstrap)
  • Ready-to-go PHPCS
  • Docker environment with PHP 7.2 and Composer (so you do not need to have PHP or Composer installed!)
  • Tests and style checks runnable in the Docker environment with simple make commands
  • TravisCI ready
  • Code coverage creation on TravisCI and uploading to ScrutinizerCI (optional)
  • Coverage tag validation
  • Stub production and test classes for ultra-quick start (ideal when doing a kata)
  • COPYING and .gitignore files
  • README with instructions of how to run the tests

(Delete this section)

Getting started

  • Copy the code or fork the repository
  • If you do not want to use the MediaWiki coding style, remove mediawiki/mediawiki-codesniffer from composer.json
  • If you want to support older PHP versions, update composer.json and remove new PHP features from the stub PHP files
  • If the code is not a kata or quick experiment, update the PHP namespaces and the README
  • Start writing code!
  • If you want TravisCI and/or ScrutinizerCI integration you will need to log in to their respective websites

asciicast

(Delete this section)

Installation

To use the UPDATE_NAME library in your project, simply add a dependency on UPDATE/NAME to your project's composer.json file. Here is a minimal example of a composer.json file that just defines a dependency on UPDATE_NAME 1.x:

{
    "require": {
        "UPDATE/NAME": "~1.0"
    }
}

Development

For development you need to have Docker and Docker-compose installed. Local PHP and Composer are not needed.

sudo apt-get install docker docker-compose

Running Composer

To pull in the project dependencies via Composer, run:

make composer install

You can run other Composer commands via make run, but at present this does not support argument flags. If you need to execute such a command, you can do so in this format:

docker run --rm --interactive --tty --volume $PWD:/app -w /app\
 --volume ~/.composer:/composer --user $(id -u):$(id -g) composer composer install --no-scripts

Where composer install --no-scripts is the command being run.

Running the CI checks

To run all CI checks, which includes PHPUnit tests, PHPCS style checks and coverage tag validation, run:

make

Running the tests

To run just the PHPUnit tests run

make test

To run only a subset of PHPUnit tests or otherwise pass flags to PHPUnit, run

docker-compose run --rm app ./vendor/bin/phpunit --filter SomeClassNameOrFilter
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].