Skip to main content

Serve static files and django templates in current folder, for prototyping

Project description

This is a command line utility that django-izes the current folder. This is primarily for prototyping.

Lets say the current folder contains a bunch of html file, this utility runs a django server, and makes the files available through it. The html files can use django’s powerful template inheritance.


djangothis supports configuring django using config.yaml file if present in current folder. It can be used configure middleware, template context processors etc.

Static files

If there is a folder named static in current folder, that content of that folder will also become available on /static/ url.

This utility maps request to /favicon.ico to /static/favicon.ico. and

Further if file names or exist, the utility “imports” them, and if those files use importd style “decorated” views or forms, they too become available (example).

Fake Ajax

Also if there is a ajax.yaml file in current folder, this utility will look for request the requested path in the yaml file, and if it exists, appropriate JSON will be returned.


djangothis supports theming. Theme can be placed in a special folder _theme. This folder is placed at the beginning of template dirs settings, so any template can be “overridden” by placing in it.

For the purpose of special theme specific static files, they can be placed in side _theme folder, and will be accessible via /theme/ url. Eg if there is a css file _theme/style.css, it can be accessed via /theme/style.css.

With these two features themes can be distributed as self contained folder.

Using djangothis as a static site generator

$ wget -mk http://localhost:8000

Can be used to create a local mirror.

Using djangothis as a replacement of jekyll, pelican

An appropriate file has to be written and placed in the current folder, which will define views for / or /blog/, that view can read the content of _posts for example, generate appropriate summary and links, define views for post etc, which serve the page.

It is left for reader as an exercice. ;-)

Example site

Take a look at an example folder, and compare it with the test suite.

Installation and Usage

To install:

$ pip install djangothis

To run from any folder that contains files as described above:

$ djangothis
Validating models...

0 errors found
Django version 1.4.1, using settings None
Development server is running at
Quit the server with CONTROL-C.

Project details

Download files

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

Source Distributions (8.8 kB view hashes)

Uploaded source

djangothis-0.3.tar.gz (4.2 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page