A modular content CMS by Interaction Consortium.
Python HTML Shell CSS JavaScript
Failed to load latest commit information.
docs Document need for extra DB migration dependencies when renaming apps Feb 8, 2017
icekit Note fluent-pages version that no longer needs `base_fieldsets` monke… Feb 19, 2017
project_template Only generate MD5 signature for `requirements.txt`, because it is che… Dec 1, 2016
.coveragerc Ignore DB migrations in unit test coverage report Sep 29, 2016
.dockerignore Use compose override file as an actual override again. Oct 26, 2016
.editorconfig Use spaces for Markdown files. Oct 7, 2016
.gitignore Ignore build directory in Git. Nov 8, 2016
.travis.yml Add Zapier webhook notification. Nov 16, 2016
Dockerfile Get ElasticSearch host and port from environment. See ixc/acmi#159 Dec 6, 2016
LICENSE Rename LICENSE file. Aug 12, 2016
MANIFEST.in Exclude files from built package that might be present due to local e… Aug 16, 2016
README.md Add `docker-cloud.yml` to project template and fix invalid options. Sep 28, 2016
constraints-django17.txt Make it possible to run Django 1.7 tests again manually. Just not by … Aug 13, 2016
docker-cloud.yml Update `docker-cloud.yml`. Oct 25, 2016
docker-compose.override.sample.yml Use compose override file as an actual override again. Oct 26, 2016
docker-compose.travis.yml And set QUICK=1 when running tests on Travis CI. Oct 4, 2016
docker-compose.yml Use compose override file as an actual override again. Oct 26, 2016
mkdocs.yml Factoring out admin thumbnail size Sep 1, 2016
requirements.txt Subclassing haystack searchengine to allow us to factor a document bo… Dec 12, 2016
setup.cfg Switch to nose test runner and rename `get_test_image()` context mana… Mar 18, 2016
setup.py Avoid using django-fluent-pages versions >= 1.1 pending upstream fix,… Feb 19, 2017
tox.ini Fix typo in `setup-postgres.sh` script name. Sep 19, 2016


Build Status Coverage Status Documentation Requirements Status Version

Deploy to Docker Cloud

ICEkit is a next-generation CMS by the Interaction Consortium, built on top of django-fluent-pages and django-fluent-contents. See ICEkit features at a glance.

ICEkit underpins GLAMkit and many individual sites.

Quickstart, with Docker

If you haven't already, install Docker:

Docker works on OS X, Linux, and Windows, takes care of all the project dependencies (e.g. database, search engine, web server, etc.), and makes deployment easy.

If you're not ready for Docker, see Manual Setup.

1. Create a new project

$ bash <(curl -Ls https://raw.githubusercontent.com/ic-labs/django-icekit/master/icekit/bin/startproject.sh) {project_name}

This will create a new project from the ICEkit project template, in a directory named {project_name} in the current working directory.

NOTE: Windows users should run this command in Git Bash, which comes with Git for Windows.

2. Run the project

Build a Docker image:

$ cd {project_name}
$ docker-compose build --pull

Run a django container and all of its dependancies:

$ docker-compose run --rm --service-ports django

Create a superuser account:

# manage.py createsuperuser

Run the Django dev server:

# runserver.sh

3. That's it!

Open the site in a browser:


When you're done, exit the container and stop all of its dependencies:

# exit
$ docker-compose stop

Next steps