- Make sure you have pipenv installed.
- Clone this repository.
- Open your command line interface and
cdto the repository root directory.
pipenv installto create a Python virtual environment and install the requirements for this project.
pipenv doesn't always provide the best error messages (Provide better error
message if the project’s virtual environment is broken). If all
else fails, try removing the virtual environment and reinstalling:
pipenv shellto spawn a shell with the virtualenv activated.
lektor server -f webpackto start the Lektor development server. You will be able to see the website at
http://localhost:5000/. The Lektor server will rebuild the site every time you change any content.
We have continuous deployment set up. To deploy, push your code to the
master branch (or make a pull request against the
master branch. Travis CI builds and deploys the site whenever it detects new commits on the
For reference only, you should not need to not do this.
When you are ready to deploy a new version of the site, run
(assuming you have your GitHub SSH key already set up and you have access to
the creativecommons.github.io repository). That's it, it's live
Here's how the code is structured in the top level of the repository:
content: The content of the site lives here. Here's an explanation of how content works in Lektor. This is probably what you'll be modifying most often.
models: All content in Lektor is associated with data models to define their schema. Currently, we only use the default
pagemodel that ships with Lektor.
templates: This is where the Jinja2 templates that render content are stored. See the Lektor template documentation for more information.