Skip to main content

A code snippet manager, originally written to power djangosnippets.org

Project description

Build Status

Cab (named for the jazz bandleader and scat singer Cab Calloway) is a Django application which allows users to post and share useful “snippets” of code.

This code is used to power the snippet sharing site, djangosnippets.org

Installation notes

Cab has a couple of external dependencies:

Additionally, the default setup requires a few applications which are bundled with Django itself:

  • django.contrib.comments to enable commenting.
  • django.contrib.markup to handle Markdown formatting of comments.
  • django.contrib.syndication to enable feeds.

It’s also recommended that you have django.contrib.admin installed for ease of site maintenance.

Once you’ve got those taken care of, grab a git checkout of Cab from somewhere on your Python path:

git clone git://github.com/django-de/djangosnippets.org.git

Then add ratings, taggit and cab to the INSTALLED_APPS setting of your Django project, run manage.py syncdb, and either put a call to include('cab.urls.snippets') somewhere inn your root URLConf or copy over the URL patterns from Cab that you want to use.

Note that the get_absolute_url methods of the Language, Snippet and Tag models assume that they will live under the URLs /languages/, /snippets/ and /tags/, so if you want them to go elsewhere you’ll need to edit those methods or ovveride them with Django’s ABSOLUTE_URL_OVERRIDES setting.

For search support you need to set up a search engine and configure haystack:

# Place where search indexes are stored for snippets - should be non web accessible
HAYSTACK_CONNECTIONS = {
    'default': {
        'ENGINE': 'haystack.backends.whoosh_backend.WhooshEngine',
        'PATH': '/some-path/search-index',
        'STORAGE': 'file',
        'POST_LIMIT': 128 * 1024 * 1024,
        'INCLUDE_SPELLING': True,
        'BATCH_SIZE': 100,
    },
}
HAYSTACK_SIGNAL_PROCESSOR = 'haystack.signals.RealtimeSignalProcessor'

Templates

The git repo will get you a set of example templates matching those currently in use on djangosnippets.org

OMGWTF Tests?

Yeah, there are tests now. See https://travis-ci.org/django-de/django-cab

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
django_cab-0.3.7-py2.py3-none-any.whl (54.0 kB) Copy SHA256 hash SHA256 Wheel py2.py3 Sep 15, 2014
django-cab-0.3.7.tar.gz (32.0 kB) Copy SHA256 hash SHA256 Source None Sep 15, 2014

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page