Django is a great framework that eases application development. The aim of the dja_skel tool is to further ease the development process by pushing the idea behind the startproject and startapp commands one step further.
Let’s suppose that you need to create a new class based view in the views package, this involves:
Here’s a lot of repetitive work that should be avoided in order to focus on the real problem we are trying to solve.
Steps 1, 2 and, to some extent, 6 can be streamlined using templates. Steps 4 and 5 require some intelligence that modifies existing files. Such a combination of templates and intelligence (in the form of python code) is what dja_skel calls an skeleton.
The project’s goal is not to provide a set of skeletons, since every programmer has developed his own patterns, instead it focuses on providing building blocks to ease the creation of new skeletons and the customisation of existing ones. It does provide a couple of simple skeletons just for demonstration purposes.
Once created and registered the skeletons become available either through the dja_skel script or the skel management command, ready for use.
Take a look at the Tutorial to have a grasp on how all of this works.