Skip to content

v-rie/www.php-fig.org

 
 

Repository files navigation

This is the source for www.php-fig.org. It is a static site generated with Sculpin.

Contributing

  • If you notice something missing, please open an issue on GitHub.

  • If you'd like to fix it yourself, simply edit the file on GitHub and open a pull request. The site will be recompiled as soon as your pull request is merged.

  • If you'd like to run the site locally o generate the HTML files, you'll need to install the dependencies. The templates are built by directly including the Markdown sources from the fig standards repo, which is provided as a git submodule.

Clone

Note the --recursive flag to clone the submodule too.

git clone --recursive https://github.com/php-fig/www.php-fig.org

Install

While the project was ported from Jekyll to Sculpin to use PHP, some Ruby dependencies are still present. This will probably change in the future.

bin/install.sh

will install both PHP Composer packages and Ruby bundled gems.

Build

bin/build.sh

will compile the sources into output_dev.

Run

vendor/bin/sculpin serve

Updating the submodule

This site uses the master branch of the main PHP-FIG repository as a Git submodule to pull content from it. If you need to update it, you can use the bin/update_submodule.sh script to pull new commits. Afterwards, you can commit the differences in this repo, to push the updates afterwards.

Using Docker

A multistage Dockerfile is provided, in case you want to build and/or run everything without installing any dependency whatsoever. Docker version 17.09.0-ce or newer is required.

The final image is a simple NGINX instance:

docker build . -t fig-website
docker run --rm -p 80:80 fig-website
# browse the website at http://localhost

However, you can use the dev target, which provides an interactive terminal to access a fully provisioned PHP+Ruby environment.

If you want to develop in the Docker runtime, you'll have mount the project root as a volume, expose port 8000, explicitly run the install/build process, and run the PHP built-in server:

docker build . --target dev -t fig-website-dev
docker run --rm -ti -p 8000:8000 -v $PWD:/fig-website fig-website-dev
# inside the container terminal
install.sh
build.sh
sculpin serve

Note that:

  • inside the container, relevant executables are in the global PATH
  • the container is executed with user and group with id 1000 by default, which will likely match your main host user. You can change the id via the UID and GID build-time variables (--build-arg).

About

Source for the PHP-FIG website

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • HTML 48.4%
  • CSS 37.2%
  • PHP 10.6%
  • Ruby 1.5%
  • Dockerfile 1.3%
  • Shell 0.7%
  • JavaScript 0.3%