Skip to content

Skeleton Project

This is where your project documentation should go. It SHOULD NOT just be a repetition of the README, but COULD expand on some of the topics mentioned there. The primary focus SHOULD be on someone wanting to make use of the software/library rather than someone wanting to develop on it.

The index page SHOULD be a brief introduction. All other sections SHOULD be separate pages, linked together via the MkDocs configuration.

Some things to consider:

  • Introduction
    • What it is
    • Why it exists
    • How to obtain it
    • Requirements
    • Installation steps
  • Quick Start.
    • ie. what's the quickest way for someone to get up and running, covering the most common use cases.
  • Architecture
  • Configuration
  • Different use cases
  • Deeper dive into individual features/components
  • Limitations
  • Any relevant history
  • How to get help
  • FAQ

Some third party documentation for inspiration:

This is heavily inspired by the skeleton project from The PHP League. With some changes based on our preferences. Thanks to them!

Quick Start

git clone --depth=1 git@github.com:graze/skeleton-project.git your-project
cd ./your-project
rm -rf .git
git init

You now have a copy of the files in this repository, in a new git repository with no previous history that can you manipulate and push to other remote repositories.

Replacement

Replace __author-name__ __author-username__ __author@email.com, skeleton-project, __package-name__, __package-description__, __year__ with their correct values in README.md, CHANGELOG.md, CONTRIBUTING.md, LICENSE, composer.json, Dockerfile and travis.yml files, then delete all the *.md files in the docs directory.

Continuous Integration

Our Open source projects rely on a set of external services to operate.

  1. Travis is our main continuous integration pipeline and performs testing and building.
  2. Scrutinizer profiles the code looking for coding standards violations and other recommendations.
  3. Packagist stores the build library for use by other projects with composer.
  4. Docker Hub is used to store docker images.
  5. Github is where the code is hosted.
  6. Github Pages hosts any documentation using github pages.