General¶
Note
Let’s cover the core structure of this Boilerplate consisting of the main folders:
docs/
private/
static/
templates/
tests/
The starting point for each entry is always named “base”``”, with the
appropriate file extension. For HTML base.html, Sass base.scss,
JavaScript base.js – you get the idea. This way you always know which file
you should look after first. Lets take a closer look at each individual
folder:
docs/¶
The full documentation is stored within /docs and is compiled into
/docs/_build when running make run. The documentation is automatically
pushed to Read the Docs
once something is committed to the master branch. More information on how to
contribute to the documentation can be found within the Contribution
section.
private/¶
Important
This folder is not published, nor touched by preprocessing or other build libraries. Anything in here should be and remain safe.
This folder is intended for storing preprocessing library code (Sass, Less,
Coffee, HAML, etc). Simply create a folder within /private with appropriate
name: /sass, /less or /haml and so on as required. Always place
required configuration files within the /private root.
private/
├─ sass/
│ └─ base.sass
└─ config.rb
Hint
We are using /sass as folder name and not /scss as the language
itself is called Sass. Always use the full
written acronym.
static/¶
Important
This folder is publicly available, all files can be accessed via
http://yourwebserver/static/.
The default folder layout looks as follows:
static/
├─ css/
├─ fonts/
├─ img/
├─ js/
├─ swf/
└─ ...
If folders are not required, just simply remove them. When a folder reaches a
certain file count, make use of grouping and create additional sub-directories
such as /static/img/icons or /static/js/addons/jquery.
templates/¶
All django templates should be allocated within the /templates folder.
This also applies for apps or inclusion files. When using
Haml, set your configuration so templates get compiled
into /templates.
The default index.html is always /templates/base.html.
Global inclusion files are placed within /templates/includes.
Addons normally have their own /includes folder so they are not overcrowding
the structure.