Overview

YAAF stands for Yet Another Application Framework, a C++ framework or library which is designed to facilitate creating cross-platform applications which can be compiled and ran under Microsoft Windows, Macintosh OS 9 and Macintosh OS X under Carbon, and X Windows on Linux.

YAAF may be downloaded and compiled using Metrowerks Codewarrior on the Macintosh, Microsoft Visual C++ or using the GNU C++ compiler suite. (The latest version still needs to be resynchronized with the Microsoft and GNU compiler suites.) There is also documentation available for download which describes how to build YAAF and use the various libraries that make up the YAAF suite.

What's New

  • The new "YAAF: The Other Libraries" book has been published on CafePress. This book covers writing software using the YAAF Mail library (for POP3 and SMTP services), the YAAF HTTP library (for HTTP services and servlet creation), and the YAAF Astronomy library, which computes orbital elements and planetary locations.
  • The new "YAAF Development, Second Edition" book has been published on CafePress. You can order a copy of the book by selecting the "merchandise" link to the left. This covers many of the changes that have been made in v1.1a8 of YAAF.
  • Version 1.1a8 released! This new version has updated build files so it can be compiled using Visual C++ v6.0 on Microsoft Windows. Now I'm working on revising the makefile and build scripts to build on Redhat Linux.
  • The CD version of YAAF is now available! This contains the entire YAAF distribution for Macintosh and for Microsoft Windows, and is available for those who don't have the bandwidth to download from the web site.
  • We now have YAAF Merchandise, available through CafePress.com. Originally I was going to just use them for producing YAAF CDs (which are done at order time so there is no inventory costs), but once I had the artwork, a few minutes of screwing around and I also had a t-shirt, coffee mug, and a hat. The high costs reflect the fact that each of these items are printed "just in time" as they are ordered.

License

YAAF is provided under the terms of the YAAF Open Source License, a license similar to the BSD Open Source License. Please note that any third party contributions made to the YAAF source base must be released under the YAAF license as well.

YAAF is Copyright 1997-2004 by William Woody and others.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

Neither the name of the copyright holder or other contributors may be used to promote products derived from this software without specific written prior permission.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

The point of these restrictions is to (a) protect the integrety of the YAAF source code base (so that it will remain free for others to use), and (b) to allow people to use YAAF in their own products without any restrictions beyond those listed above. Unlike the GPL license, users may use the YAAF source code base in their own proprietary projects, redistribute their executables without disclosing their source code, sell products based on YAAF, and use snippets of YAAF in their own non-YAAF source code projects without any restrictions—beyond not suing the contributers to the YAAF project or using their names in promotional materials without permission, of course.

Contact

For more information about yaaf, contact Bill Woody at woody@yaaf.org.