This is an old revision of the document!
Functionaity (changes) for the latest Gemstracker releases can be found here:
GemsTracker is a tool for tracking fixed sequences of surveys asked to groups of individuals or organizations.
GemsTracker is not a tool for building and administrating surveys. For that specialized survey software packages are used by GemsTracker, with LimeSurvey as the first among equals.
GemsTracker is a tool that allows:
follow up surveys surveys dependent on answers in previous surveys multiple people to answer surveys concerning one person different sequences of surveys (i.e. tracks) assigned to different people
For developers it offers a broad library of web pages that can be easily extended or overridden on a per project basis.
Working with the GemsTracker library can sometimes be difficult. We have a rich API documentation but sometimes you need a little bit more to get you going. This is the right place to start searching or adding your own information.
GemsTracker is developed to allow you to quickly and easily adapt it to the demands of specific projects. We quickly found out that almost every project has different data demands for respondents. I.e. some projects need a respondents postal address, others need only a birthday while requiring their fathers birthday as well. For this reason GemsTracker uses a separate project application directory that can extend, change and overrule almost any feature of the core GemsTracker libraries.
GemsTracker itself is built on other software, both open source as well as commercial. This page describes all these layers:
Application / Project layer: your own code (optional) GemsTracker Layer: GemsTracker and (optionally) LimeSurvey Programming language layer: PHP and the Zend Framework Server software layer: Apache or IIS and MySQL OS layer: Unix, Linux or Windows Server or Workstation
The last three layers are described first in the Software requirements. Next comes an overview of the GemsTracker Core and lastly the How to's to get started with adapting the software for a specific project.