Skip to content
The API Platform website
JavaScript CSS
Branch: master
Clone or download
Pull request Compare This branch is 266 commits behind api-platform:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Calavera React Client

This is the client part of Calavera. It allows to create a nice website from a Git repository containing Markdown docs.


  • Renders a repository containing Markdown docs in HTML
  • Exposes docs and metadata (authors, modification dates...) through a JSON-LD API
  • Single Page Application built with React, Redux and React Router
  • Universal Rendering (Server-Side Rendering)
  • Bootstrap theme
  • Edit on GitHub link
  • Google Analytics integration
  • Docker setup
  • Easy to customize


Be sure to have Docker installed on your machine the:

  1. Install the client:

git clone

  1. Clone the Git repository containing Markdown files in the data directory:

git clone data-src

  1. Generate .jsonld files using Calavera:

docker run -v $PWD/data-src:/in -v $PWD/src/static/data:/out dunglas/calavera /in /out

  1. Copy assets and images:

cd data-src && find . -not -name '*.md' -exec rsync -R {} ../src/static/data \; && cd -

  1. Install JS dependencies:

docker-compose run web npm install

  1. Start the container:

docker-compose up


Features can be enabled or disabled using environment variables. If you use Docker, you can set them directly in the docker-compose.yml file.

Enable the “Edit on GitHub” link

You can define two environment variables to enable the “Edit on GitHub” link:

  • CALAVERA_GITHUB_DOCUMENTATION_REPOSITORY: the path of the github repo (eg. api-platform/docs), with no trailing slash. If present, the “edit on github” link will be displayed.
  • CALAVERA_GITHUB_DOCUMENTATION_BRANCH: the branch of the repo to link to (default to master)

Enable the Google Analytics integration

Create a CALAVERA_GOOGLE_ANALYTICS_ID environment variable containing your Google Analytics ID (UA-XXXXXXXX-1) and the Google Analytics integration will be enabled.


Main authors: Kévin Dunglas and Rodrigue Villetard. Sponsored by

Built using React Redux Universal Hot Example.

You can’t perform that action at this time.