Gadget Pool

GNUCITIZEN Gadget is a simple gadgeting system that was designed to enable several other GNUCITIZEN applications. The core of the framework is based on JavaScript and jQuery. No server-side infrastructure is required.

The source code of the system is available for free. Styles/Art/Graphics are published under the Creative Commons License and they are prohibited from use without the special authorization from the author (us).

GNUCITIZEN Gadgets resembles to a great extend other similar systems such as iGoogle and Yahoo dashboard gadgets. However, fundamentally, it is very different when compared. The GNUCITIZEN gadget system does not have builtin API nor it requires special deployment. Gadgets built on the top of this system can use all jQuery functionalities which are loaded into the global scope. jquery.include.js is loaded by default, which provide facilities to load external libraries for additional functionalities.

It is important to understand that the system renders all gadgets as part of the page HTML. This means that you must not trust gadgets that you don’t know (you haven’t read their code). In case you want to provide facilities where 3rd-party organizations/individuals deploy some of the gadgets that are in use, tweak the jquery.gadgets.js to enclose each gadget into an iframe which is served from a different origin. This is what iGoogle does. This tweak will be added as a feature soon.

The GNUCITIZEN Gadgets will be embedded into next major version of Backframe, which will incorporate ZombieMap within the main interface as well. Each Backframe component will be deployed as separate gadget for greater modularity. You will be able to add your customized gadgets as well. We are working on it. Other types of applications, which names we cannot disclose at the moment, will use Gadgets as a core component as well.

If you are interested in this project and you are willing to spend some time on it, adding improvements and polishing the interface, do not hesitate to contact us. As usual, use the Contact page or drop us an email at contact at gnucitizen.org or group at gnucitizen.org. Contributing to various open source projects you feel strong about is a great way to learn and also build strong social connections which may help you latter in life.

Currently, we have the following things on the line:

  • clean up the API
  • add features to save gadgets positions inside the browser cookie store or persistent storage
  • add features to enable other mechanism for serializing gadgets
  • whatever else is needed