Brook for Free Pascal

From Free Pascal wiki
Revision as of 12:49, 9 January 2019 by Almuhandis (talk | contribs) (Plugins)


Brook framework is the Pascal framework for web applications. Release 4.0 [1] is compatible with FreePascal. The new 5.0 [2] also has Delphi compatibility but is still in development. BrookFramework 4.0 is pure Pascal. You don't need to leave your preferred programming language. Further, unless otherwise specified mean 4.0 version.

It's complete: simple actions or configurable actions for database access, advanced routing features, wizard for Lazarus, support for i18n, high compatibility with JSON structures, easy 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.


  • Advanced routes management – Actions are performed by means of routes. Brook knows how to receive a request and choose the correct URL and the correct method to reply to it.
  • Integrated data persistance – Brook offers a table object where data can be handled. Less instantiations, less coding, with an elegant syntax.
  • JSON native supportJSON is widespread in the web for data exchange purposes. You will really appreciate Brooks' good JSON support.
  • REST architecture supportREST is an architecture 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 - With Lazarus, development is easier; with the Brook wizards, only a few clicks are required to start and configure your Brook projects.


If you want to see Brook in action, then take a look a database demo here and a simple chat here.


  • dOPF – This plugin provides sleek, intuitive and fast object persistence for faster and easier database development.
  • RUtils – This plugin offers some general purpose routines for string conversion, parsing, encoding and more.
  • JTemplate – This plugin helps you to fill variables in a template file.
  • QTemplate – This plugin implements an alternative to the FPTemplate engine.
  • EasyRSS – This plugin is the easiest way for Pascal developers to provide news updating services in their applications.
  • XMailer – This plugin offers a really simple way to send e-mail using Free Pascal.
  • AlgEx – This plugin helps you to process algebraic expressions passed as strings.
  • Captcha – This plugin provides the handling of verification images, usually to block bot access on login pages.
  • MGeoIP – This plugin allows you to identify the name of the country or city where IPs reside.
  • ConvUtils – This plugin allows conversion between units of measurement (centimeters, inches, liters etc.)
  • HtmlDoc – Whith this plugin you can write headers, body and other relevant tags using Object Pascal.
  • LJGridUtils – This plugin offers easy conversion from LCL to JSON and vice versa.
  • Brook-Telegram – This plugin helps you to implement telegram interface via a bot.


Get started, documentation, license, download and others details here.