Agar

Hypertriton, Inc. Hypertriton, Inc.
( Francais )
HOME | SCREENSHOTS | DOWNLOAD | DOCS | SUPPORT | CHAT | CONTRIBUTE | BUGZILLA
About Agar

Agar is an open-source, cross-platform toolkit for graphical applications. The Agar GUI takes maximum advantage of hardware graphics acceleration when it is available, but it also supports plain framebuffer interfaces such as direct video via SDL. When a window system is not available, Agar can even provide its own.

Agar consists of two libraries: Agar-Core provides generic object functions and portability interfaces. Agar-GUI includes the base GUI system and a comprehensive set of standard widgets. Both are implemented in C, but are usable from other languages. When compiled with threads support, both libraries are efficiently thread-safe. The distribution also includes some more specialized libraries aimed at specific applications.

Agar is free software. Its source code is freely usable and re-usable by everyone under a BSD license, which allows use in commercial applications free of charge. Agar is stable, well-maintained and has been growing organically since early 2002.

The Agar project is sponsored by Csoft.net: Security conscious, high-availability Unix hosting on redundant server arrays.

Agar-GUI

The Agar GUI library is designed to work under almost any platform that provides a graphic display and some kind of input device. Currently, there are drivers for SDL and OpenGL. The OpenGL mode makes efficient use of hardware acceleration. The API is simple, object-oriented and unobtrusive (e.g., bindings reduce the need for event handlers to the minimum). Implementing new widgets as part of an application or library is easy, and the Agar object system provides you with inheritance, even if you are only using C. See the Agar FAQ for more details.

Agar-Core

An object system which allows libraries to provide equally good object-oriented programming support to applications in any language (currently C and C++). Its functions include a virtual filesystem implementation, inheritance, virtual functions (i.e., events), property tables, timers, thread management and archiving features.


Other libraries using Agar
FreeSG (alpha)

A portable and efficient 3D engine with an emphasis on generality. It also provides a visualization widgets, an efficient math library, computational geometry routines, dimensioned 2D sketches and geometrical constraint solving.

Website: freesg.org/

Agar-VG (stable)

A simple 2D vector graphics package which allows developers to specify hierarchical sketches consisting of elements such as lines, curves and text. It was designed mainly for editors (for example, the circuit editor in agar-eda uses it). For dimensioned/constrained technical drawings, the SK library (in FreeSG) is recommended instead.

Website: hypertriton.com/agar-vg/

Agar-RG (stable)

A library for generating and manipulating feature-based pixmap elements (either static or animated). It uses an image format which allows directives, transformations and instancing of graphical elements.

Website: hypertriton.com/agar-rg/

Agar-MAP (stable)

This is a 2D tiling library aimed at isometric/platform games and scrollers. Agar-MAP includes a visualisation widget and a complete editor. Along with Agar-RG, it provides built-in bitmap edition.

Website: hypertriton.com/agar-map/

Agar-1.4 Branch

We expect to make the first release of the Agar-1.4 series in June 2008. The focus of the new series is the addition of drivers with multiple window support (e.g., X11, Cocoa and Win32), the implementation of a graphical GUI editor, support for high-level GUI operation over the network and improved desktop integration (see the full list). The Agar-1.4 branch is available in /branches/agar14 on Subversion

Announcements
03/02/2008 New stable release: agar-1.3.2 (Landscapes Turn To Ash)
[ What's new ]
03/02/2008 Created agar-commits mailing list for automated commit notifications of the Agar source code exlusively. Note that the previous source-diff list will continue to receive notices as well. The new list provides a RSS feed.
12/03/2007 New bugfix release: agar-1.3.1
[ Fixed compilation issue with some C++ compilers. ]
11/29/2007 New stable release: agar-1.3 (Birth of an Era Obscured by Sulfur and Flames)
[ What's new | What to expect in 1.4 ]
03/15/2007 New stable release: agar-1.2 (Crusade of the Underworld Hordes)
02/26/2007 The subversion server has moved to dev.hypertriton.com. We apologize for the inconvenience.
10/23/2005 New stable release: agar-1.0 (Night of the Late October)

[Previous announcements]

How to get help

If you have any questions, comments or suggestions, don't hesitate to contact the author. There are also forums and an #agar channel on irc.freenode.net (here is a web interface to it).

Your feedback and contributions help us build a better library with better documentation. Don't hesitate to send us your bug reports and enhancement/feature requests with Bugzilla.


"A display connected to a digital computer gives us a chance to gain familiarity with concepts not realizable in the physical world. It is like a looking glass into a mathematical wonderland." -- Ivan Sutherland