Metadata-Version: 1.0
Name: django-cherrydev
Version: 0.1
Summary: CherryPy Web server for Django development.
Home-page: http://code.db-init.com/django-cherrydev/
Author: David Bennett
Author-email: david@db-init.com
License: MIT
Description: ================
        Django-CherryDev
        ================
        
        
        Description
        ===========
        
        This utility is a substitute for Django's ``runserver`` command. It was
        inspired by Gunicorn_'s ``gunicorn_django`` command which makes it so easy
        to serve Django projects without having to create extra WSGI scripts.
        
        .. _Gunicorn: http://www.gunicorn.org/
        
        I chose to use CherryPy as it is pure Python (thus cross-platform) and quite
        efficient in its own right. It also had the functionality I desired to be able
        to serve static media without fuss while developing Django applications.
        
        **To be clear, this utility will automatically serve your static media (as well
        as admin media) without needing to modify your settings.py or maintain a
        development version of your settings.**
        
        To do this, it modifies your settings.MEDIA_URL and settings.ADMIN_MEDIA_PREFIX
        on the fly before loading Django, which is also the reason that it is not
        provided as a custom management command.
        
        
        Requirements and Installation
        =============================
        
        In its present incarnation, this utility requires Python 2.7 and CherryPy 3.1
        or above. Also, it is assumed you have Django installed.
        
        Installation is as simple as ``pip install django-cherrydev``. This will
        also install CherryPy if it isn't already available.
        
        Source
        ------
        You can install the latest development version from the `hg repository`_ with
        ``pip install -e hg+http://code.db-init.com/django-cherrydev`` or from a
        tarball_ with ``pip install django-cherrydev==dev``.
        
        .. _hg repository: http://code.db-init.com/django-cherrydev/
        .. _tarball:
            http://code.db-init.com/django-cherrydev/get/tip.gz#egg=django-cherrydev-dev
        
        
        Usage
        =====
        
        Django-CherryDev provides a single script, ``cherrydev``, which uses CherryPy
        to serve your Django project and media files. To use it, simply CD into your
        Django project directory and run ``cherrydev``::
        
            $ cd myproject
            $ cherrydev
        
        Arguments
        ---------
        usage: cherrydev [-h] [--noreload] [-b ADDRESS] [--nomedia] [-m MEDIA_ADDR]
                         [--noadmin] [-a ADMIN_ADDR] [-l LINK_DIR]
                         [SETTINGS_PATH]
        
        positional arguments:
          SETTINGS_PATH         By default SETTINGS_PATH will look for settings.py in
                                the current directory.
        
        optional arguments:
          -h, --help            show this help message and exit
          --noreload            Tells CherryPy to NOT use the auto-reloader.
          -b ADDRESS, --bind ADDRESS
                                The socket to bind. A string of the form: 'HOST',
                                'HOST:PORT'. An IP is a valid HOST. (default:
                                '127.0.0.1:8000')
        
        Media:
          By default, CherryPy will be used to serve your media. If your MEDIA_URL
          includes a host component, it will be changed to an alternate port on
          localhost. If your ADMIN_MEDIA_PREFIX includes a host component that does
          not match that of MEDIA_URL, it will also be changed to its own alternate
          port.
        
          --nomedia             Tells CherryPy to NOT host media.
          -m MEDIA_ADDR, --media MEDIA_ADDR
                                The socket to bind media. A string of the form:
                                'HOST', 'HOST:PORT'. An IP is a valid HOST. (default:
                                '127.0.0.1:8001')
          --noadmin             Tells CherryPy to NOT host admin media.
          -a ADMIN_ADDR, --admin ADMIN_ADDR
                                The socket to bind admin. A string of the form:
                                'HOST', 'HOST:PORT'. An IP is a valid HOST. (default:
                                '127.0.0.1:8002')
          -l LINK_DIR, --link LINK_DIR
                                An additional directory to be linked to MEDIA_URL. May
                                be used multiple times. A string of the form:
                                'PATH=DIRECTORY'. (e.g. 'app=../myapp/media')
        
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Web Environment
Classifier: Framework :: Django
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 2.7
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Utilities
