My favorites | Sign in
Project Home Downloads Wiki Issues Source
Project Information
Members
Featured
Downloads
Wiki pages
Links

Welcome to the home of The FreeBASIC Extended Library!


We need your help!

The FreeBASIC Extended Library is always looking for new submissions. Submissions do not necessarily need to be code, in fact our primary concern at the moment is improving the documentation. We feel the best way to improve the documentation is with more tutorials and a User's Guide that combines an overview of the api (the what) of the modules with the why, the how and the when. So if you are handy with a text editor and know your way around a certain part of the library, please help us out by writing a tutorial or an in-depth article about a submodule/class/set of functions and we'll potentially add it to the User's Guide once we get a place set up for it to reside. Thank you for your time, enjoy using the FreeBASIC Extended Library, we have enjoyed working on it!


What is it?

The FreeBASIC Extended Library aims to provide a portable, community-driven set of libraries designed exclusively for FreeBASIC development, and includes many commonly used game-oriented and general purpose APIs written by the community and licensed under a BSD type license to maximize user freedom.

What can it do?

Designed to be an effective "all-in-one" set of libraries, The FreeBASIC Extended Library can improve quality and production of your FreeBASIC projects by providing common functionality that is tuned to be fast.

Many libraries within The FreeBASIC Extended Library make use of ext/Templates, a header-only library containing macros that enable generic programming similar to that of C++, allowing you to write more reusable code faster.

Head to the Downloads area for the latest sources, pre-built binaries and documentation. Users are encouraged to join our mailing list.


Here is a brief run-down of some of the features of The FreeBASIC Extended Library grouped by category:

  • Graphics and Games

    • Rotate, scale and manipulate BMP, PNG, TGA and JPG images.
    • Draw animated sprites with pixel-perfect collision detection.
    • Use TrueType fonts (TTF) with FreeBASIC's Draw String statement.
    • 2D, 3D and 4D generic vector classes.
    • OpenGL-compatible 4x4 matrix class. (more on the way..)
  • XML

    • Create and edit simple non-validating DOM XML, on-disk or in-memory.
  • Generic Container Classes

    • Create variable-length arrays, lists, stacks, queues and hashtables.
    • Custom memory allocation strategies are supported.
  • Generic Algorithms

    • Based on The Standard C++ Library, included are copy, find, fill, transform, among many others.
    • Sorting algorithms include gnome and quicksort.
  • Generic Programming and Metaprogramming

    • Create C++-like parameterized procedures and classes.
    • Automate common tasks and minimize code duplication.
    • Write type-dependent code with the preprocessor.
  • Testing and Debugging

    • Ensure program correctness with a unit testing framework.
    • Detect and plug up hidden memory leaks.
  • Memory Management

    • Worry-free dynamic memory and resource usage with smart pointers.
    • Included are smart pointer classes for scoped and shared resources.
  • Strings

    • ASCII-character string class makes string manipulation elegant.
    • Included are search, replace, reverse and split APIs, among many others.
    • Also included are most of the unique PHP string APIs.

Powered by Google Project Hosting