This is a pre-production deployment of Warehouse, however changes made here WILL affect the production instance of PyPI.
Latest Version Dependencies status unknown Test status unknown Test coverage unknown
Project Description

# Kaiju

Kaiju is a framework for data analaysis applications. A Kaiju application contains a set of operations, which correspond to Python methods in your code. Kaiju offers three main features:

  • Automatic command-line parsing configuration.
  • Logging of operation executions.
  • MongoDB interfacing.

This simplifies your research work by automatically documenting your analyses and storing their results, making it easy for you to document and reproduce your work. Kaiju also stimulates you to work from the system shell instead of from within Python, so your application is a stand-alone program from the moment you start building it, and not just a Python module that you are always struggling to integrate to another system.

## Usage

Create a kaiju.Kaiju object with the desired configuration, and use the __call__ to decorate your operation methods.

Kaiju depends on pymongo for interacting with MongoDB.

## Kaiju axioms

A Kaiju application is defined by a Kaiju object, an instance from the Kaiju class.

A Kaiju application contains a set of operations.

Each Kaiju operation is a method from your Python code that was decorated by the Kaiju object.

These operations can consume and produce data. The consumed data are the method arguments, and the output data is whatever the method returns. Operations typically output lists, or generators, and Kaiju iterates over this output.

The output from a non-logged operation is simply sent to stdout.

The output from a logged operation is stored in MongoDB, in the collection specified by the decorator argument output. Each element from this output becomes a separate record in the collection.

A logged operation outputs a maker_id code, which is the _id assigned to this operation execution in the Kaiju log.

You can specify different types for the operation inputs using the classes from the kaiju.arguments submodule.

The Data input class lets you fetch data from the database. The argument receives a maker_id and outputs to the underlying operation method a generator for corresponding data.

Release History

Release History

0.1.0

This version

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

Download Files

Download Files

TODO: Brief introduction on what you do with files - including link to relevant help section.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
kaiju-0.1.0.tar.gz (8.6 kB) Copy SHA256 Checksum SHA256 Source Nov 5, 2014

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS HPE HPE Development Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting