The Theme - Step by Step

What's in a theme?

At the minimum, a theme folder will contain these files:


It may also contain folders


Plus media content which is common  to all pages, for example page head or foot banners and the like. 

theme.php is a HTML file, and has the general format of a webpage.  It should follow W3C syntax rules. It should be in HTML5, or for legacy purposes HTML4.  Note that Mara does not support the use of XHTML. In fact you could say theme.php is the webpage which Mara always displays, regardless of which notional page the user has chosen to view. SInce, this is how reflex loading works.

theme.css determines the styling elements common to all pages using this theme.
It's here that you will likely do most of your customizing, and in fact for a regular layout you may not need to change the other files too much.

theme.js contains any javascript used by the theme. It can legitimately be empty (zero bytes) if no javascript is involved.
Which is often the case, javascript being more usually coded as a plugin than in a theme, since that way it can serve multiple themes.

menu_img contains the small icons used to indicate open or closed dropdown sections, offsite links and the like.
These are nonessential since there are system icons in the codebase/ing folder which will be used if none are present here.

font contains optional soft fonts. These should preferably be in the .woff format.
If soft fonts are used, these must also be declared in theme.css.
Soft fonts are not obligatory, but they do greatly expand the range of text styling available to you.

Incidentally, it is a Mara convention that all folder/directory names are singular and lowercase. Sticking to one convention avoids confusion.