Code Monkey home page Code Monkey logo

libagar's Introduction

Agar

What is it?

Agar is a type of sugar polymer obtained from seaweed and red algae. It becomes gelatinous in water and is primarly used as a culture medium for microbiological work. Agar (or LibAgar) is also the name of an open source GUI toolkit, a set of software libraries for building graphical user interfaces.

Agar works with a wide variety of platforms and graphics systems, from modern desktops to classic consoles and embedded devices. Its low-level layers are modular, extensible and easily ported to new hardware platforms and graphics systems. Standard drivers include:

For graphics systems without multi-window capabilities (or cases where a MDI-style interface is preferred over desktop integration), a single-window mode is provided in which case Agar provides its own internal window manager.

Agar's cascading Style Engine separates presentation details from underlying code. Style attributes including typography, colors, paddings and spacings of widgets can be assigned from a style sheet using a common language. Style Editor tool allows style changes to be viewed in real-time.

While Agar includes a standard library of general-purpose widgets, it is also designed to be extended externally. New Agar widgets can be implemented as part of an application or of an external library. Complex user interface elements can be realized often in few lines of code. The class registration interface simplifies the process.

To aid debugging, the Debug version performs type checking, object-validity and class-membership tests against object pointers passed to API calls at run-time. Agar is thread-safe when built with threads support. Public API calls are reentrant unless documented otherwise, although Agar does not rely on threads for its own operation.

Libraries included (stable)

  • CORE: Platform, I/O, object system (non graphical)
  • GUI (Base): GUI base framework
  • GUI (Widgets): GUI standard widgets
  • MATH: Matrices, vectors & advanced rendering methods
  • NET: Network interface, HTTP application server
  • VG: Vector graphics

Libraries included (beta)

  • AU: Audio interface library
  • SG: General-purpose 3D engine
  • SK: Sketches with constraints
  • MAP: Tile engine

How to install

See the provided INSTALL.md or an online installation guide:

Availability

Latest Stable Release

Latest Development Sources

License

Contributing

  • Sign up to the Patreon for exclusive content including articles, code and tutorials.
  • Contribute by donating, supporting our sponsors, reporting bugs or submitting code.

libagar's People

Contributors

julnadeauca avatar charlesdaniels avatar sgherbst avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.