Gavern Framework – an Introduction

While creating Gavern Framework, we have used our experiences from creating templates based on T3 Framework and from common problems which faced our customers. Gavern Framework is the combination of our templates best solutions, the same as, our ideas which solve a lot of problems occurred. It is also worth mentioning, that we have paid attention to functionalities, which seemed to be omitted for a long time, needed while creating up to the modern websites.

Key news included in Gavern Framework:

  • Social API
  • Reconstructed template option look
  • Built in mini framework for templates’ mobile versions (now, with support for Android platform)
  • Plugins directly connected with template options
  • Possibility of template options translation with an ease with language files use
  • New template installer
  • Scaling a column chosen in groups of modules, e.g. user 1-6
  • Defining selectors for fonts from template option level
  • Separate template for Facebook
  • Positions selection for system messages
  • Improved view for printing
  • Possibility of logotypes and favicon selection with Media Manager use
  • Embedding Google Analytics code from template option level
  • Specifying subpages suffixes for particular pages/components
  • Specifying chrome styles for particular module positions
  • Typography divided into sections which can be turned off separately
  • Reconstructed menu scripts
  • Support for Selecti[vizr]
  • Option for reset CSS styles selection
  • New way of creating templates’ documentation
  • Clearer XTML code
  • Full CSS3 use
  • Improved CSS code structure

All news and changes will be described in article series about Gavern Framework. In this article, we would like to describe the most important of changes enumerated.

Our main aim was to move possibly a large number of parameters to administrative panel which normally were changed in template code directly. Thanks to this, users, who are not good at programming, can easily change many things in administrative panel from template option level.

Files arrangement itself is quite similar to this known from our previous templates; thanks to this, those who have worked with our templates should not have any problems with working with new framework.

Page layout

Layout of main part of the page suggested in our existing templates which uses 7columns, has been successful and it still can be useful in the field of creating some interesting layouts, therefore we decided to leave it. One of new and most important options is a possibility of specification main body and component position layout, separately homepage and other subpages of a website. Detailed description these options and some suggestions for page layout will be found in some future entry.

Social API

Social Api Gavern Framework

It’s surprising that social network services issue has been neglected in Joomla! society. Most services cannot live without “like it” button because it is a great opportunity of article promotion among user’s acquaintances. These upgrades plugins installation was quite tormenting and not always worked. That’s why we decided to include support for Facebook and for some other social network services like: Twitter, Google Buzz, Digg, Delicious and Instapaper. Of course this list is still open and in the future there will be added some more services.

Much attention was paid to support for Facebook; except ‘like it” buttons and Facepile block, we decided to add an authorization option known as “Log in with Facebook” to Gavern Framework. It is an incredible option because a user does not need to remember his/her access data to a page given; if his/her account on a page given uses the same e-mail address as on Facebook account, it is possible by double click to log in on a page given. What is interesting, those who do not have an account at our site, can create an account in the same way without filling in a form – data needed will be loaded from Facebook.

Additionally, it is possible for users to specify their own templates which is used when users are publishing links to our site on Facebook. Thanks to this, we can, e.g. limit a page from redundant modules which makes possible for the user to choose, while adding an entry, images strictly connected with article he/she is interested in.

In the case of other services, we used API which make possible to add specific buttons to pages with articles. It allows to create some kind of social toolbar without using external plugins.

Mobile pages

Mobile pages in Gavern Framework

Increasing popularity of mobile Internet leaded us to decision to improve mobile versions of our templates. On the one hand, we decided to improve the process of creating mobile versions of our templates – in existing templates a layout was very similar therefore we created one common framework in mobile version which, thanks to one CSS file fragment modification, can be adjusted to different templates’ styles. On the other hand, we decided to improve many things, e.g. take care of functionality and menu look, individual subpages and functionalities of additional ones. An important change is also support for Android so from now on, mobile pages will be created and based on three templates: iPhone, Android and other mobile devices.

Apart from that, there can be some options to modify mobile pages look in template options and also mobile version of a page will be much “lighter”; instead of frameworks like MooTools or jQuery (which takes 40-60kB), we decided to use Zepto.js framework which takes a few kB and after gzip compression it should take even less. So our new mobile versions of templates will be extremely useful for those who have to use mobile Internet of low bandwidth.

Plugins connected with template options

It happened many times that we would like to add some improvements to a template but it was impossible because it was required to write whole plugin for Joomla! Therefore, we decided to include in Gavern Framework some kind of own plugin system. It’s easy, the majority of plugins just change some code fragment in template/page’s content for different code. That’s why we created GKParser class which allows to create easy plugins changing a code specified (e.g. in article content to a different one). In this way, Social API service was created.

It’s worth mentioning, that this solution has many advantages and potential, mainly because that this plugin can be controlled from template option level. That’s why, there is another possibility of controlling some parameters which are overwritten by modules/components templates. Shortly, some examples will be published.

New installer

Because our templates will require a few plugins and modules to make them work, we decided to create an installer which will allow to install a template, plugins and modules required at once. Thanks to this, no one will forget e.g. about typography plugin or for menu. Additionally, it will be very easy to uninstall it in the same way.

Changes in printable version

Printable version of site is very important matter as we often want a printed article to be looked good. Thus, we added a logo choice option on a site to print and a look of page printed will be adjusted to a particular template’s style (of course it depends on our printer’s possibilities).

Google Analytics with one click

The subject of embedding a code from Google Analytics was a very important matter for our users therefore we decided to integrate embedding this code with Gavern Framework. A user can embed more than one tracking code, which happens very often where an advertiser would like to have information about traffic on a page. In this way, there is one plugin less to install or manual code modifications.

New typography

There are also some changes in typography, mainly more styles for headings, support for tables, tooltips in CSS and nice effects with the latest CSS3 standards. Apart from that, there would be more icons assigned to the text. Icons sets themselves were designed so as it is possible to turn them off freely and, as a result, reduce data transfer. If there is a need, it is possible to turn off whole typography – it’s redundant to load files which are not used on a page given.

More flexible fonts

Web Fonts

We resigned from Cufon script in favor of more dynamic and developing fonts in Google Fonts and Font Squirrel. Moreover, to simplify management of fonts completely, selectors connected with a font given are specified in template’s options instead of specifying it in its code. Adding next font group is also very easy, as it requires copying of two elements in template’s XML file.

Less changes in template’s code

It often happens that we need to change style of one module position – from now on, we do not need to do it manually. It would be enough to set appropriate value (e.g. “xtml” style) for a position specified and this style will overwrite default style assigned to a position given.

New approach to templates’ documentation

Majority of templates’ documentations were done similarly thus we decided to change the way of creating documentations. Documentation will be divided into two parts; the first – common for all templates and the second – unique for a template specified. The first will be available in the form of PDF files and will be strictly connected with options included in all templates. The second part of documentation will be included in demo content of a template given – specific suffixes , module positions and essential configuration settings will be described there.

It will allow to avoid collecting redundant PDF files from different templates and, additionally, documentation connected with a template given will be available on line – on our demo.gavick.com server.

Summary

As you can see, Gavern Framework is an opening Joomla! to social network services and users who do not like modifying PHP code or installing many additional plugins. Plugins created in a template itself gives great possibilities for templates authors based on our framework. In Gavern Framework attention is paid to details like: worked out printable page or layout dedicated to Facebook bots – they cause that a page is user – friendly in every situation.

Description presented is an outline of most important changes brought by Gavern Framework. In next entries, we will describe all news and improvements meticulously.

Share
This article was first published January 7th, 2011