Welcome to the fossil repositories page. This is the home of several Fossil source code repositories for Stephan Beal's pet programming projects. Some are experimental projects, probably not of interest to the average coder. Some of them are "maintained" code, however, which i use in other projects and do in fact update from time to time.

See also: the project wiki collection. As of March 2012 most project wikis are being migrated to fossil-based wikis with a custom front-end.

The repositories are listed below in alphabetical order. The asterisks next to each repository name mean:

  • (*) = Highly experimental, unmaintained, or not intended to be a stable/public project. These are often incubation grounds or mini-libraries which i occasionally import into other source trees.
  • (**) = Maintained/active code, possibly interesting for certain clients. (It might not be maintained often, but is updated from time to time.)
  • (***) = Code which i actively maintain and use in other client applications, and considered safe for use by arbitrary clients.

Occasionally the more active projects dveloped by programmers are moved to "more capable" source repositories like Google Code, but the new location will be listed on the project's repository page (just follow the links below).

The repositories are:

  • c11n (**) - an experimental serialization library for C, based on the principals of libs11n.
  • c-snippets (*) - my dropping-ground for C code which has no other home. Some of the other libraries here are refinements of this code.
  • cpdo (**) - a database access abstraction API for C, modeled heavily after the PHP PDO API.
  • cson (***) - an object-oriented C library for generating and consuming JSON data.
  • cwal (***) - an experimental scripting-engine and garbage collector.
  • felta (**) - a C library version of the delta-generation routines from the Fossil SCM.
  • libfossil (***) - a C library API port of the Fossil SCM.
  • nosjob (**) - a C++ library for creating and consuming JSON data.
  • parse0x (**) - a Parsing Expression Grammar (PEG) toolkit written for C++0x (albeit long before it was standardized!).
  • parsepp (**) - a Parsing Expression Grammar (PEG) toolkit for modern C++ compilers (not C++0x).
  • pegc (**) - And yet another PEG library, but this one is implemented in C.
  • sigslot (**) - a collection of various Signals and Slots implementations in C++.
  • sqlite-stuff (**) - a collection of "stuff" for sqlite, e.g. several C++ wrappers.
  • th1-sgb (*) - a C library version of the TH1 scripting language from the Fossil SCM.
  • whalloc (*) - a C library providing several custom memory allocators.
  • whbst (*) - a binary search tree API for C.
  • whdbg (*) - a very simple C library for adding runtime-configurable debugging output to an application.
  • whgc (*) - a collection of simple garbage collection APIs for C.
  • whiki (**) - A CGI-and-JSON-based wiki system. Based on cson and cpdo (see links above).
  • whio (**) - a generic i/o-device library for C. Provides implementations for FILE and in-memory back-ends, and can be extended to wrap arbitrary i/o device types which support random access.
  • whprintf (***) - a generic printf()-like implementation which can send its output to arbitrary destinations (e.g. GUI widget, file, or a memory buffer) via a callback function. Probably my single most-re-used library.
  • whsha1 (**) - a small, easy-to-use SHA1 hashing library for C.
  • whuuid (**) - a tiny C library for generating random UUIDs.

Generic download instructions for fossil repositories can be found on the downloads page.