Links:
gtkmm gtkmm is the official C++ interface for the popular GUI library GTK+. Highlights include typesafe callbacks, and a comprehensive set of widgets that are easily extensible via inheritance. You can create user interfaces either in code or with the Glade User Interface designer, using libglademm. hot SANE Scanner Access Now Easy is an application programming interface (API) that provides standardized access to any raster image scanner hardware. hot Ali Ali is a simple to use C API to parse XML data. It's scanf like approach is much easier than using SAX or DOM. AsciiArtWidget AsciiArtWidget provides a Text widget with bindings and functions suitable for editing Ascii artwork. This is a fairly low-level library, providing only the creation routine and a loading from memory function. Saving and opening files is up to the programmer who uses this library. BCR flavor of Cooperative Data Sharing The BCR flavor of Cooperative Data Sharing (CDS) is a scalable, portable, flexible C-based API and daemon for initiating and communicating between processes/threads in uniprocessor and multiprocessor (e.g. distributed, SMP, and parallel) platforms. BX PRO (commercial) GUI Builder for Motif and includes: Builder Xcessory: GUI Builder, ViewKit, and EPak: Collection of 31 advanced user interface widgets C->Haskell C->Haskell is an interface generator that simplifies the development of Haskell bindings to C libraries. The tool processes existing C header files that determine data layout and function signatures on the C side in conjunction with Haskell modules that specify Haskell-side type signatures and marshaling details. ClassyTcl ClassyTcl is a dynamically loadable object system for Tcl. A Tcl-only as well as a C implementation is available. It also doesn't require patches to the Tcl core, so keeping up with new releases should be easy. COBOL sp2 (commercial) COBOL sp2 is a Graphical User Interface (GUI) Development tool which was designed specifically for professional COBOL programmers. COBOL sp2 allows you to add a GUI interface to your COBOL application using 100% native COBOL CALL USING statements and Working Storage parameters. Crow Designer Crow is a modern GUI builder for the GTK+ toolkit. It is an advanced IDE-embeddable RAD tool designed to fulfill the needs of desktop programmers who want to create multi-platform GTK+ based applications with minimal GUI coding. Crow is full-featured yet lightweight: its tree-based Property Explorer solves many GUI constructing tasks in a versatile manner without additional popup dialogs. The project is targeted to develop a tool that is coherent and productive for experienced GTK+ users as well as simple and accessible for newcomers. cZUI cZUI is a Zoomable User Interface framework, allowing the creation of zoomable interfaces in C++. It has been designed to use any graphics/font library and be easy to use. CZui provides common features and extra, such as multi-camera views. DataHub APIs DataHum APIs for C++, Java, and .NET is a set of APIs, each of which allows custom programs to connect to the Cascade DataHub over TCP. All three APIs share, as much as possible, common methods and syntax. DBConnect API DBConnect API is an easy to use C++ object API to allow applications to connect to databases. Your DB applications can now become cross platform and cross databased. Doubly Linked List This package consists of an API for a doubly linked list. The API is divided into six functional groups: initialization, status and state, pointer manipulation, list update, search, and input/output. Easymotif Motif GUI-builder Easymotif Motif GUI-builder is a WYSIWYG GUI-builder for Motif, producing standard C-source code. It gives a possibility for graphic lay-out, creating all callbacks and functions. EBuilder EBuilder is a GUI builder for the Qt library which allows you to construct a hierarchy of widget and manipulate them through an easily accessible tree structure, add and edit member functions, including SIGNALs and SLOTs, and more. eGTK eGTK is a binding between Eiffel programming language and the GTK+ widget toolkit. eGTK works with two compilers: the GNU SmallEiffel compiler and ISE Eiffel (commercial compiler). eiffel-fftw eiffel-fftw is a very simple binding between FFTW (The Faster Fourier Transform in the West) and Eiffel. EveryGUI EveryGui is an attempt at being a GTK+ Graphical User Interface for "Everything" (involving command line programs) on UNIX systems. This goal is achieved by providing two applications: Chameleon, which is a dynamic GUI for virtually any tool or OS command, and Designer, which is a visual environment for creating/editing config files that determine Chameleon's different behaviours for each tool/command. f90gl Fortran 90 bindings for the OpenGL 2D and 3D graphics library FastVox FastVox is an API for volume visualization that can be embedded into OpenGL displays. It features a multi-threaded realtime volume rendering engine which is based on a set of plugins that range from high-speed software-based renderers to hardware-accelerated renderers designed for current generation graphics hardware. fd2python fd2python creates a python interface to the Xforms graphics library. It uses the SWIG (v1.3) program. fd2python can generate template mainline, callback and makefile files. It can be run seemlessly from fdesign -python. Feature Data Objects The Feature Data Objects API provides a generic, command-based interface to a number of back-end data source technologies for storing, retrieving, updating, and analyzing GIS (Geographic Information System) data. A provider is a specific back-end implementation of the FDO API that provides access to data stored in a particular data source technology. Gamera Gamera is a framework for the creation of structured document analysis applications by domain experts. It combines a programming library with GUI tools for the training and interactive development of recognition systems. Gazpacho Gazpacho is one of the components of the Gruppy framework for building applications. Gazpacho is the component that provides quick and easy development of user interfaces. GDA (GNU Data Access) Perl Bindings is a set of Perl bindings to the GNOME-DB project's GNU Data Access (GDA) library (libgda*.a). Gecode Gecode is a portable, accessible, and efficient environment for developing constraint-based systems and applications. Gecode is radically open for programming, meaning that it can be easily interfaced to other systems. It supports the programming of new propagators (as implementation of constraints), branching strategies, and search engines. New variable domains can be programmed at the same level of efficiency as finite domain and integer set variables that come predefined with Gecode. General Graphical User Interface General Graphical User Interface is an effort to produce a common graphical user interface for any command-line program. It uses a wizard-like input front end to collect the information needed. Gideon Gideon is an innovative GUI designer for GTK+. It is an advanced plugin-enabled RAD tool developed for the needs of GTK+ programmers who want to create multi-platform desktop applications with minimal GUI coding. Gideon is full-featured yet elegant: its Property Explorer solves many GUI constructing tasks in a versatile manner without additional dialogs. The project is targeted to provide a tool that is coherent and highly productive for GTK+ experts as well as simple and accessible for newcomers. GLADE Glade is a RAD tool to enable quick & easy development of user interfaces for the GTK+ toolkit and the GNOME desktop environment, released under the GNU GPL License. The user interfaces designed in Glade are saved as XML, and by using the libglade library these can be loaded by applications dynamically as needed. gladepyc gladepyc generates a Python module from a Glade XML GUI description which builds the corresponding GTK+ interface by using the _gtk module of the PyGTK binding. GLCaml GLCaml is an Objective Caml interface for OpenGL versions 1.1, 1.2, 1.3, 1.4, 1.5, 2.0, and 2.1, plus extensions. It is intended as a compact drop-in binding. It is a direct, dynamic binding to OpenGL. An OCaml SDL binding is provided as well, along with texture-map scaling functions, texture mip-map generators, and a bitmapped font library. Extensive documentation and more than 20 examples are provided. Gnome-GCJ Gnome-GCJ is a set of GTK+ and Gnome bindings for Java. It compiles with the GCJ compiler (part of egcs) and uses the GCJ runtime library libgcj. GCJ is capable of compiling Java source code to native machine code, which makes Java code almost as fast as C++ code. Gorm Gorm is a clone of the NeXTstep `Interface Builder' application for GNUstep. Major features include drag-and-drop creation of GUI elements from palettes, run-time loading of additional palettes. GridMPI GridMPI is an implementation of the MPI (Message Passing Interface) standard designed for high performance computing in the Grid. GridMPI enables unmodified MPI applications to run on cluster computers distributed across the Grid environment. GrIPD GrIPD is a cross-platform extension to Miller Puckette's Pure Data software that allows one to design custom graphical user interfaces for PD patches. GtkAda GtkAda is an Ada95 binding of Gtk+ version 1.0.4 and 1.0.5. It allows you to develop graphical applications in Ada95 using Gtk+. Guile-gtk Guile-gtk is glue code to make the GTK+ (the Gimp Toolkit) accesible from Guile so it provides a convenient interface for Scheme programmers to develop visual applications. It can optionally integrate with gnome via the Gnome-guile module. Released under the GPL. Heterogeneous Parallel Virtual Machine Heterogeneous Parallel Virtual Machine is a cross-platform API for programming applications that need to distribute tasks across a variety of architectures and OS types. It provides a simple to use interface to these programs that allows them to hand out tasks to machines almost transparent to the user and even to the programmer. Any program that performs a repeated task on a large amount of data, can benefit from HPVM. IbPy IbPy is a third-party implementation of the API used for accessing the Interactive Brokers on-line trading system. IbPy implements functionality that the Python programmer can use to connect to IB, request stock ticker data, submit orders for stocks and options, and more. Inline::Guile Inline::Guile aims to produce a Perl binding to Guile, the Gnu Scheme interpreter. This will allow use of Guile code within Perl programs. inotify-cxx inotify-cxx is the C++ interface for Linux inotify technology. It offers a few simple objects instead of low-level data such as file descriptors, watch descriptors, etc. InstallJammer InstallJammer is a multi-platform GUI installer and builder designed to be completely cross-platform and function on Windows and most versions of Unix, with eventual support for Mac OS X. Inter-Language Unification Inter-Language Unification is a multi-language object interface system. The object interfaces provided by ILU hide implementation distinctions between different languages,between different address spaces, and between operating system types. kpybrowser Kpybrowser is a path- and classbrowser for Python code. It is based upon the path- and classbrowser that's included in Idle, the Python IDE that comes with the Python distribution. kUimlRenderer kUimlRenderer aims to be a UIML 2.0 compatitible renderer which renders interfaces using the Qt Widget Set. LEONARDI LEONARDI is a model-driven framework that allows GUI applications to be implemented simply and rapidly, covering all the traditionally addressed software layers. With LEONARDI, you describe your business model (using LEONARDI Studio or XML), enrich it with presentation specific information, possibly implement domain specific rules and behaviors using the Java language, and finally deploy the final software either as a DHTML/AJAX GUI, an Eclipse plug-in, or a Swing desktop application. LGI LGI is a GUI framework for abstracting out all the operating system dependencies that you can produce portable code. It handles all the graphical interface functions, threading and semaphores, network connectivity and lots of other bits and peices to help build small, fast and reliable applications. libmodem libmodem allows you to build programs that use modem devices without knowledge about how kernel serial devices works. libviper libviper is an API which builds on top of ncurses and libgpm to offer simple window creation and management facilities for developers who want to quickly create text interfacs. libviper offers an alternative to the panels library. libxml++ libxml++ is an object-oriented XML API (application programming interface) for C++. libXMLement libXMLement is designed to provide a programming interface to XML elements in C++. It consists of libraries for XML elements, parsing, documents, and element trees which are tied together with a hierarchical API. LightBlue LightBlue is a cross-platform Bluetooth API for Python which provides simple access to basic Bluetooth operations. It is available for Mac OS X, GNU/Linux and Nokia's Python for Series 60 platform for mobile phones. lxb lxb is an X/Motif interactive graphical user interface builder. With it you can build a GUI made up of Motif widgets instantiated from a pallet, move and resize them, edit their resources, and move about in the widget heirarchy. LXRAD Linux X11 Rapid Application Development, LXRAD is written in c++ and uses own component Library (liblxrad), there are components such as button, editbox, menu and others m3gtk m3gtk is a Modula-3 binding to The Gimp Toolkit - GTK. midea midea is a robust c string api set with regex support, handling fixed width 8 to 64 bit character sets at runtime (no recompilation is required). Initialization routines convert multibyte encodings such as utf8. MINOS MINOS is a graphic user interface (GUI) for X, written for bigFORTH-Linux and bigFORTH-Win32. It includes a rapid GUI developement editor (Theseus). Monitoring API MAPI, or Monitoring API, is a multi-user programming interface designed to simplify the development of network monitoring software and allows users to express their monitoring needs in a device-independent way. MPI Ruby MPI Ruby is a Ruby binding of MPI. The primary goal in making this binding was to make the power of MPI available to Ruby users in a way that fits into the language's object oriented model. murgaLua murgaLua is a slick multi-platform Lua GUI and networking environment. It combines the Lua scripting language with various libraries to provide a complete development environment with a small runtime. NeL NeL is a platform to create and run a multi-user 3D virtual environment for entertainment purposes. nib2gmodel nib2gmodel is a tool developed for GNUstep which converts Apple/NeXT OpenStep 4.x/Mac OS X Server nib files (and perhaps other nib files) to the GNUstep version of a nib file called a gmodel file. Octave-FLTK Octave-FLTK is a language binding to the FLTK GUI toolkit. It allows you to write programs that use FLTK in Octave itself. OpenAL OpenAL is a cross-platform 3D audio API appropriate for use with gaming applications and many other types of audio applications. The 1.0 specification has been complete for quite a while now, and the Linux, MacOS (8/9 and OS X), and Windows (all 32-bit versions) versions are fairly mature. OpenGLUT OpenGLUT is an open source project to evolve the GLUT (OpenGL Utility Toolkit) API (Application Programming Interface). OpenGLUT uses the FreeGLUT code base as a foundation for extending, enhancing and refining the API. ORAPP ORAPP is a programmatic API written in C++ around Oracle's OCI8/9 APIs. ORAPP does not use exceptions or RTTI, and so is very small, fast, predictable and easy to read and use. ORBit-Python ORBit-Python is a project to develop Python bindings for ORBit. It supports dynamic loading of IDL (no IDL compiler required), and most of ORBit's TypeCodes. Osicat Osicat is a lightweight operating system interface for Common Lisp on Unix-platforms. It is not a POSIX-style API, but rather a simple lispy accompaniment to the standard ANSI facilities, licensed under a MIT-style license. OSSP uuid OSSP uuid is a ISO-C application programming interface (API) and corresponding command line interface (CLI) for the generation of DCE 1.1 and ISO/IEC 11578:1996 compliant Universally Unique Identifiers (UUID). pancito pancito is a Haskell module for manipulating functional images and then saving them to disk. It was inspired by Pan. PAPI Performance Application Programming Interface aims to provide the tool designer and application engineer with a consistent interface and methodology for use of the performance counter hardware found in most major microprocessors. PCL PCL is the Performance Counter Library, a software library to access hardware performance counters on many microprocessors through a uniform interface and with low overhead. Language bindings exist for C, C++, Fortran, and Java. Perl Composer Perl Composer is a two-way visual tool used to design graphical interfaces for X-windows using Perl/GTK. The goal of it is to design a Visual Basic like tool for UNIX systems. PerlQt PerlQt is a full-fledged object oriented interface to Trolltech's Qt GUI toolkit version 3.x, for Perl >= 5.6.0 on POSIX systems. It features a powerful and clean syntax, unlimited signals and slots, seamless virtual methods reimplementation. Portable Linux Processor Affinity PLPA is an attempt to solve the problem of multiple API's for processor affinity within Linux. Specifically, the functions sched_setaffinity() and sched_getaffinity() have numbers and types of parameters depending on your Linux vendor and/or version of GLibc. This is quite problematic for applications attempting to use processor affinity in Linux for compile-time, link-time, and run-time reasons. The PLPA provides a single processor affinity API that developers can write to in order to get both consistent behavior and binary compatibility across different Linux installations (assuming that you have an executable that is otherwise binary Linux portable). Portable SDK for UPnP Devices Portable SDK for UPnP Devices (libupnp) provides developers with an API and code for building control points, devices, and bridges that are compliant with Version 1.0 of the Universal Plug and Play Device Architecture Specification. This allows discovery, event notification, and control of devices on a network, independent of operating system, programming language, or physical network connection. Portal.CLI Portal.CLI is a set of bindings that target the Common Language Infrastructure and which cover common free and open source UNIX/Linux libraries that do not yet maintain their own CLI bindings. PPM Yet Another Game Boy Tile Editor for Linux: many export formats and has different Gameboy color emulation modes. PyGTK PyGTK is a set of bindings for the GTK widget set. It provides an object oriented interface that is slightly higher level than the C one. It automatically does all the type casting and reference counting that you would have to do normally with the C API. PyGuiXml PyGuiXml is a Python tool designed to help creating GUIs. It takes an XML description of the GUI and outputs a graphical component that looks like and behaves as specified in the XML description. pyKDE pyKDE is a set of Python bindings for the Qt toolkit. The bindings are implemented as a pair of Python modules. PyKotIcon PyKotIcon is a generic, extensible, networked, cross-platform dialog box manager. It is often used as an end user companion for the PyKota print accounting system, but is completely independent. Its remotely accessible API is well documented, so using it from your own application is easy. It can display informational messages, optionally ask for confirmation or cancellation, and can also create and display free content input forms over the network. python-mcrypt python-mcrypt is a comprehensive Python interface to the mcrypt library, which provides a uniform interface to several symmetric encryption algorithms. Qt Architect Qt Architect is a GUI dialog designer for the Qt widget set. It features graphical dialog creation and property editing. C++ source files are generated for inclusion in programs. Realtime Application Interface Realtime Application Interface lets you write applications with strict timing constraints for your favourite operating system. A real time system is able to guarantee the timing requirements of the processes under its control. Renaissance Renaissance allows you to describe your user interfaces in simple and intuitive XML files, using an open, standard format describing the logic of the interface. RKWard RKWard is meant to become an easy to use, transparent frontend to the R-language, a very powerful, yet hard-to-get-into scripting-language with a strong focus on statistic functions. RPy RPy is a very simple, yet robust, Python interface to the R Programming Language. It can manage all kinds of R objects and can execute arbitrary R functions (including the graphic functions). RunTime TarBall RunTime TarBall is a library for working with files in a runtime archive, binding resources instead of having many resource files on disk. SATSHELL SATSHELL is an interface-builder to shell scripts. SATSHELL GUI screens are described using the simple SAT Display Language (SAT/DL). The interface between SATSHELL and shell scripts is very simple as it uses the normal Linux/Unix Standard Input/Output mechinism. SDL4Freepascal SDL4Freepascal is a set of FreePascal modules (units) with bindings to the SDL (Simple Directmedia Layer) Library. Shared Memory Arena Shared Memory Arena (shm-arena) is an application programming interface (API) library and utility programs for inter-process shared memory. It uses a name space to access shared memory between unrelated (or related) processes and a dynamic allocator. Name strings are used in place of underlying virtual address numbers to access shared memory. This is analogous to the way file names, are used to access regular computer files in place of the underlying inode numbers. An underlying allocator class uses a structured shared memory arena file which will grow or shrink automatically as more segments are requested from the malloc-like calls, or destroyed from free-like calls. SpecTcl SpecTcl is a GUI-builder for Tcl/Tk. It features drag & drop widget creation and configuration of widgets through a GUI. It is written in pure Tcl/Tk, so it runs on Unix, Mac and Windows. SPU-Toolbox SPU-Toolbox is a C++ API for frame-rate sensor control under Linux. Currently, SPU-Toolbox includes multithreaded facilities for video capture, rapid display of images under X, and pan-tilt unit control. SqueakGtk MCZ SqueakGtk is an attempt to port the Gtk+ GUI to Smalltalk Squeak. tDOM tDOM combines high performance XML data processing with easy and powerful Tcl scripting functionality. tDOM should be one of the fastest ways to manipulate XML with a scripting language and uses very few memory. TeleUSE (commercial) TeleUSE is a User Interface Management System (UIMS) which provides all the tools needed to interactively design and build fully object-oriented, OSF/Motif-based GUIs in C, C++, UIL or Ada95. Texttools Texttools is a GPL, ncurses-based library for the Linux console. They are written in Ada 95. Texttools contain more than 600 procedures and functions to create windows, draw scroll bars, handle the mouse and keyboard events, play sounds, and much more. The Texttools package also provides a thick binding to Linux kernel calls. The Lucene Application Layer The Lucene Application Layer is an intermediate level API for document indexing and searching. It uses the low-level API of Lucene. Turbo Vision Turbo Vision is a TUI (Text User Interface) that implements the well known CUA widgets. With TVision you can create an intuitive text mode application, intuitive means it will have CUA like interface. Universal Related Popup Menus Universal Related Popup Menus consists of two popup menus with matching submit buttons controlled by JavaScript and CGI. The left popup (menu1) is the "subject" menu and contains the main areas of the site (in this case WebReference.com). The right menu is the "topic" menu and contains the topics grouped under each subject. The topic menu defaults to topics under the first subject. UniversalIndentGUI UniversalIndentGUI is a GUI for several code formatters, beautifiers, and indenters, including GreatCode, AStyle (Artistic Style), GNU Indent, BCPP, and Uncrustify. Its main feature is a live preview to directly see how the selected formatting options affect the source code. User Dialog Perl Module User Dialog Perl Module is an OOPerl interface for dialog based applications like dialog, cdialog, whiptail, gdialog and kdialog. Utk Universal Toolkit is a system written for Perl to provide transparency between toolkits. A program written with Utk can run in GNOME, KDE and HTML (pending Qt bindings) without recoding. Vector Signal Imaging Processing Library Vector Signal Imaging Processing Library is an application programming interface (API) defined by an open standard developed by embedded signal and image processing hardware and software vendors, academia, application developers, and government labs. vtkgtk The vtkgtk project contains the necessary glue for using the VTK toolkit from within a GTK program. wxWidgets wxWidgets is a cross-platform C++ GUI library, offering classes for all common GUI controls as well as a comprehensive set of helper classes for most common application tasks, ranging from networking to HTML display and image manipulation. wxWidgets uses native widgets on all platforms whenever possible and fills missing gaps on some platforms using generic controls written with wxWidgets itself. X-Designer (commercial) X-Designer is a user interface builder for X/Motif, MFC, Java and the Internet. Xdialog Xdialog is designed to be a drop in replacement for the "dialog" or "cdialog" programs. It converts any terminal based program into a program with an X-windows interface. The dialogs are easier to see and use while adding even more functionalities (e.g. with the treeview, the file selector, the edit box, the range box, the help button/box). Xenomai Xenomai is a real-time development framework cooperating with the Linux kernel, in order to provide a pervasive, interface-agnostic, hard real-time support to user-space applications, seamlessly integrated into the GNU/Linux environment. XINS XINS is a technology used to define, create and invoke remote APIs. XINS is specification-oriented. When API specifications are written (in XML), XINS will transform them to HTML-based documentation and Java code for both the client- and the server-side. The communication is based on HTTP. xiron xiron is a rapid development framework to build multimedia frontends for the xine media playing library. A xiron-based frontend is entirely defined by XML and Javascript files, and therefore only basic programming skills are needed to build your own frontend. XMPI XMPI is an X/Motif based graphical user interface for running, debugging and visualizing MPI programs. Extensive MPI information is extracted from a running application on demand, or from a cummulative log of communication. xraw xraw is a development kit for creating games, demos, and intros under Linux and derivatives. xtklib xtklib provides a simple, complete API to developers who want to create cross-platform software. In particular, the library provides a full abstraction layer between the APIs and the main services offered by the underlying operating system (eg. threads, processes, GUI, filesystem, etc.) plus a set of generic utilities (eg. strings and data structures). Yagb Yagb is a free GUI builder program for Lesstif. With it you can visually construct your user interface and the program will automatically generate the source code for that GUI. This makes the process of developing a GUI much simpler. Yaxi Yaxi is a functional API for OCaml XML data manipulation. It provides implementations of XML 1.0, XPath, and XSLT. yaz++ YAZ++ is a C++ programmer's toolkit supporting the development of Z39.50v3 clients and servers. It includes an implementation of the ZOOM C++ binding, a generic YAZ++ client/server API, and a powerful Z39.50 proxy. Yet Another Eiffel Sockets Yet Another Eiffel Sockets provides a multi-OS (Win32, Linux, QNX, etc) TCP/IP API layer for Eiffel. SmallEiffel and ISE Eiffel are currently supported. ZEngine ZEngine is a collection of classes which are designed in order to make authoring a 2D game easy, allowing the developers to focus on the game rather than complex APIs. ZEngine uses SDL and also uses the addon libraries SDL_ttf, SDL_image, SDL_mixer, and PhysFS. Zinc (commercial) Zinc is a native, cross-platform and full-featured GUI toolkit. It consists of a collection of object-oriented C++ class libraries shipped in source code, a visual design tool called the Zinc Designer, a collection of example programs, and more.