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.