CurlPas is a Pascal binding and object-oriented wrapper for the LibCurl client-side URL transfer library.
LibCurl is mature, stable, powerful, actively maintained, well-supported, and well-documented.
While CurlPas is not nearly as well-tested as LibCurl, I would consider it to be quite stable at this point.
Both CurlPas and LibCurl are distributed under liberal open-source licensing, permitting their use in both open-source and proprietary applications.
CurlPas was developed and tested on the following systems:
In addition, the CurlPas components are also compatible with the Lazarus LCL.
The CurlPas package consists of three parts:
The FreePascal versions of tCurl and tCurlMulti exist in two different incarnations, the lightweight objects defined in curlobj.pas, and the full-fledged Lazarus components defined in lazcurl.pas .
To date, the tCurl object has over 130 different properties and methods to handle a wide variety of URL transfer requirements. While this may seem overwhelming at first glance, the good news is you will probably need only a small subset of these for most situations.
I would recommend at least browsing through the tcurl.html file to get some idea of what's available, and then refer back to the documentation as needed. Examples for several CurlPas applications are also provided in the demo folder.