######Copyright (C) 2012 Silvio Clecio.
##INTRODUCTION
Brook framework is the perfect Free Pascal framework for your web applications. It's pure Pascal. You don't need to leave your preferred programming language.
It's complete: simple actions or configurable actions for database access, advanced routing features, wizard for Lazarus, support for internationalization, high compatibility with JSON structures, eazy and elegant REST implementation, plugins for varied needs, extensible and decoupled brokers... In fact, you have several reasons to adopt Brook as your web development framework.
##FEATURES
- Advanced routes management - Actions are performed by means of routes. The application replies to requests that pass information through routes. Implementing this could envolve a bunch of boring tests, but Brook knows how to receive a request and choose the correct URL and the correct method to reply to it. Using Brook, you have shorter and friendlier code to handle your routes.
- Integrated data persistance - Brook can work together well with other frameworks. Brook offers a table object where data can be handled. Less instantiations, less coding, with a elegant syntax. These are advantages of Brook, but in this case, it's a special virtue of Greyhound, the partner project responsible to handle databases. Within Brook, scope, there are other database layers available for specific usages but for most cases, Greyhound is the best one.
- JSON native support - JSON structures are largely used by JavaScript. JSON is widespred in the web for data exchange purposes. You will really appreciate Brooks' good JSON support.
- REST architecture support - If you didn't come from the web development world, you won't understand the power of REST. REST is not a software component or a tool kit, but an idea. An idea able to simplify and standardize data requests and replies. Brook is powerful even if you don't use REST - but you will want to use it.
- Lazarus wizards for installation and usage - No, Brook didn't forget Lazarus users. With Lazarus, development is easier; with the Brook wizards, only a few clicks are required to start and configure your Brook projects.
- Plugins for varied needs - In the full Brook package, everything is included: mail sending, HTTP utilities, templating, algebraic expression processing, RSS reading and writing and much more. You can see the whole list of plugins here.
##LICENSE
The source code of the Brook framework is distributed under the GNU Lesser General Public License. See the project licence for copyright/license details.
##GET STARTED
Do you need some help to start? Whether you use the Lazarus IDE or purely the Free Pascal compiler, start here.
##DOCUMENTATION
The project documentation is available in two formats: HTML and PDF.
##DEMOS
If you want to see Brook in action, then take a look at demos here.
##VERSIONING
For transparency and insight into our release cycle, and for striving to maintain backward compatibility, Brook framework will be maintained under the Semantic Versioning guidelines as much as possible.
Releases will be numbered with the following format:
<major>.<minor>.<release>
And constructed with the following guidelines:
- Breaking backward compatibility bumps the major (and resets the minor and release);
- New additions without breaking backward compatibility bumps the minor (and resets the release);
- Bug fixes and misc changes bumps the release;
For more information on SemVer, please visit http://semver.org.
##SUPPORT, BUGS, CONTACT
Please use the issues page. Your cooperation will be appreciated.
##SYSTEM REQUIREMENTS
Book requires Free Pascal 2.6.1 or newer. If you prefer the Lazarus interface, choose the 1.1 version or newer.
You can download a release here. Alternatively, you can also follow the project's GIT repository. The address is:
git://github.com/silvioprog/brookframework.git
##CONTRIBUTORS
Brook would not be possible without important and active contributors. See their names here.