rookeries/readme.md

2.9 KiB

Rookeries

A developer and designer friendly web platform for building gorgeous blogs and portfolios.

Rookeries is:

  • Powered by Python on the server side using Flask and CouchDB.
  • Uses React, Reflux, CoffeeScript and LESS to build responsive single page apps.
  • Licensed under the Affero GNU General Public License (AGPL) version 3.0.
  • Heavily inspired by the Ghost blogging platform.

Status

  • Builds: Codeship Status for dorianpula/rookeries

Installation

Rookeries is heavily under development and once things stabilize there will be a user friendly installation guide. In the meantime, please refer to the development guide below.

Development

Rookeries uses the following technologies:

  • Python
  • NodeJS
  • CoffeeScript
  • GCC (for compiling some dependencies)

Make sure you have the following installed and setup before continuing:

  • git
  • pip
  • virtualenv
  • npm

comfortable using the bash shell on Linux or Mac OS X. (Window users should install bash using cygwin or the Windows App store.)

For development and deployment you'll also need Vagrant and Ansible.

Getting Started

  1. Clone this repository: git clone https://bitbucket.org/dorianpula/rookeries.git
  2. Create a virtualenv and source it: virtualenv rookeries && source rookeries/bin/activate
  3. Install the Python/PIP dependencies: pip install -r requirement/development.txt
    • Ubuntu Linux: You may need to install via apt-get install the following dependencies:
      • python-dev
      • libffi-dev
      • libssl-dev
  4. Install the Node/NPM dependencies: npm install
  5. Install the global Node/NPM dependencies: npm install -g coffee-script browserify less karma-cli
  6. Run the invoke build script to run the application: inv server.run
  7. Navigate to the main Rookeries page in a browser: http://localhost:5000/

Use inv -l to list all the available commands.

Getting Started - Docker

This is a very experimental setup, and requires installing the latest version of docker-compose. Tested on Docker 1.11.1 & Docker Compose 1.7.1.

  1. Install docker-compose via pip: pip install docker-compose
  2. Install make via apt-get: apt-get install make
  3. Build Rookeries: make build
  4. Run tests: make test
  5. Run demo: make demo

Test Deployment

You can also test the deployment of Rookeries to local server. You'll need to install to have Vagrant. Ansible should be installed in your virtualenv if you followed the instructions above.

  1. Install the Rookeries to a local Vagrant box with: inv vagrant.install
  2. The application will be accessible via port 8080 locally: http://localhost:8080/