Difference between revisions of "Projects using Lazarus - Components and Libraries"

From Lazarus wiki
Jump to navigationJump to search
(New page for "Projects using Lazarus - Components and Libraries")
 
 
(18 intermediate revisions by 6 users not shown)
Line 1: Line 1:
== Components and Libraries ==
+
{{Sidebar-LazProjects}}
 +
== 5dpo ==
  
=== 5dpo ===
 
 
[[5dpo]] Component Library is a set of components developed by the [http://www.fe.up.pt/~robosoc 5dpo Robotic Soccer Team]. It provides a visual serial port (TSdpoSerial) implementation of [[Projects_using_Lazarus#Synaser|Synaser]], an IEEE1394 camera (TSdpoVideo1394) component, an [http://linux-uvc.berlios.de/ UVC video] driver component (TSdpoVideo4L2) for webcams, a Gtk fast painting form (TSdpoFastForm) and a Joystick (TSdpoJoystick) component.
 
[[5dpo]] Component Library is a set of components developed by the [http://www.fe.up.pt/~robosoc 5dpo Robotic Soccer Team]. It provides a visual serial port (TSdpoSerial) implementation of [[Projects_using_Lazarus#Synaser|Synaser]], an IEEE1394 camera (TSdpoVideo1394) component, an [http://linux-uvc.berlios.de/ UVC video] driver component (TSdpoVideo4L2) for webcams, a Gtk fast painting form (TSdpoFastForm) and a Joystick (TSdpoJoystick) component.
  
=== ACBr ===
+
== ACBr ==
 +
 
 
[https://sourceforge.net/projects/acbr/ Project ACBr] Suite Components facing Commercial Automation. Working with ECF, TEF, NF-e, CT-e, MDF-e, SPED, NFS-e targeted to Brazilian Software. [http://www.projetoacbr.com.br/forum/index.php Fórum ACBr]. GNU Library or Lesser General Public License version 2.0 (LGPLv2).
 
[https://sourceforge.net/projects/acbr/ Project ACBr] Suite Components facing Commercial Automation. Working with ECF, TEF, NF-e, CT-e, MDF-e, SPED, NFS-e targeted to Brazilian Software. [http://www.projetoacbr.com.br/forum/index.php Fórum ACBr]. GNU Library or Lesser General Public License version 2.0 (LGPLv2).
  
=== Alcinoe ===
+
== Alcinoe ==
  
 
Alcinoe is a set of components written in assembly language x86.
 
Alcinoe is a set of components written in assembly language x86.
 
[https://liberlog.fr/Alcinoe Here is Alcinoe for Lazarus].
 
[https://liberlog.fr/Alcinoe Here is Alcinoe for Lazarus].
  
=== Audorra ===
+
== Area Calculations Library ==
 +
 
 +
[[Area Calculations Library]] is a set of Pascal functions for calculating the area of squares, rectangles, triangles, rhombus, trapezoids, circles and circle segments. It also includes some additional measurement calculations functions.
 +
 
 +
== Audorra ==
 +
 
 
[http://audorra.sourceforge.net Audorra] is a digital audio library for Delphi and Free Pascal. Using a flexible plugin architecture, it allows you to exchange the audio backend (e.g. WaveOut, OpenAL), add protocol classes (e.g. file, http) and decoders.  
 
[http://audorra.sourceforge.net Audorra] is a digital audio library for Delphi and Free Pascal. Using a flexible plugin architecture, it allows you to exchange the audio backend (e.g. WaveOut, OpenAL), add protocol classes (e.g. file, http) and decoders.  
  
=== BrasLib ===
+
== BrasLib ==
 +
 
 
[http://br.groups.yahoo.com/group/BrasLib-devel/ BrasLib] is a new report component for Lazarus under development by Brazilian programmers.  
 
[http://br.groups.yahoo.com/group/BrasLib-devel/ BrasLib] is a new report component for Lazarus under development by Brazilian programmers.  
  
=== Brook Framework ===
+
== Brook Framework ==
  
 
[[Brook for Free Pascal]] is the Free Pascal framework for web applications. 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 etc...
 
[[Brook for Free Pascal]] is the Free Pascal framework for web applications. 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 etc...
  
=== Carik Bot ===
+
== Carik Bot ==
 +
 
 
[https://carik.id Carik] is lightweight bot engine, simple, fast and open source. NLP has been provided in Indonesian as an example.
 
[https://carik.id Carik] is lightweight bot engine, simple, fast and open source. NLP has been provided in Indonesian as an example.
 
Can run on microservice environments like Amazon Lambda also. Currently, Carik works on several messenger platforms such as Telegram, Facebook Messenger, Line, Direct Message, and Whatsapp. Carik is very easy to integrate with other systems, such as finance, staffing, iot and so forth.
 
Can run on microservice environments like Amazon Lambda also. Currently, Carik works on several messenger platforms such as Telegram, Facebook Messenger, Line, Direct Message, and Whatsapp. Carik is very easy to integrate with other systems, such as finance, staffing, iot and so forth.
  
=== Extended Man/XML Frames ===
+
== COMTAY ==
 +
 
 +
[https://opensimply.org/comtay Project homepage] COMTAY is a shared library for creating asymmetric stackful coroutines and co-methods.
 +
It is applicable to both procedural and class-based programming to implement cooperative multitasking.
 +
 
 +
COMTAY currently supports the calling conventions of Free Pascal, Delphi, MS Visual C++, and GNU C++.
 +
It runs on 32- and 64-bit platforms on Windows and Linux.
 +
 
 +
== CyberUnits ==
 +
[[CyberUnits]] is a cross-platform class library for computer simulations in life sciences and systems research.
 +
 
 +
== Extended Man/XML Frames ==
  
[http://hg.code.sf.net/u/matthieugiroux/extended Extended] components are data and ini customized components. It contains relationships management components to use with your data software and for [https://sourceforge.net/p/virtualdbtreeex/code/ci/default/tree/ VirtualDbTreeEx]. There are also invisible components for pictures' translation, extracting and copying. There is also an update component with its ini creating project. With Extended you can create reports quickly from data, Virtual Trees or tdbgrids. Extended uses GPL license.
+
[[Extended Components]] are a set of data and ini customized components. It contains relationships management components to use with your data software and for [https://sourceforge.net/p/virtualdbtreeex/code/ci/default/tree/ VirtualDbTreeEx]. There are also invisible components for pictures' translation, extracting and copying. There is also an update component with its ini creating project. With Extended you can create reports quickly from data, Virtual Trees or tdbgrids. Extended uses GPL license. [http://hg.code.sf.net/u/matthieugiroux/extended Source]
  
[https://bitbucket.org/matthieugiroux/manframes-rad-rich-management-framework-with-main-and-child Man Frames] are management components for tables. Some data or property forms can manage some kinds of Datasets. It contains an old asynchronous data pull on customform and groupview. A prepared software with user management and functions management lets you [http://en.wikipedia.org/wiki/Model-driven_engineering#Tools quickly create a management software with an engine, without creating source]. It depends on [https://bitbucket.org/matthieugiroux/extended Extended] components.  
+
[https://bitbucket.org/matthieugiroux/manframes-rad-rich-management-framework-with-main-and-child Man Frames] are management components for tables. Some data or property forms can manage some kinds of Datasets. It contains an old asynchronous data pull on customform and groupview. A prepared software with user management and functions management lets you [http://en.wikipedia.org/wiki/Model-driven_engineering#Tools quickly create a management software with an engine, without creating source]. It depends on [http://hg.code.sf.net/u/matthieugiroux/extended Extended] components.  
  
 
[https://bitbucket.org/matthieugiroux/very-rapid-applications-management-development-framework XML Frames], a [http://www.vrad.fr VRAD] Framework, lets you create a management software from [https://fr.wikipedia.org/wiki/Business_Process_Model_and_Notation BPMN 2 XML] files. On Windows, Linux and macOS. Free components are now with GPL license.
 
[https://bitbucket.org/matthieugiroux/very-rapid-applications-management-development-framework XML Frames], a [http://www.vrad.fr VRAD] Framework, lets you create a management software from [https://fr.wikipedia.org/wiki/Business_Process_Model_and_Notation BPMN 2 XML] files. On Windows, Linux and macOS. Free components are now with GPL license.
Line 38: Line 57:
 
[[File:2010-10_extended.png|380px]][[File:2010-10 xmlframes.png|350px]]
 
[[File:2010-10_extended.png|380px]][[File:2010-10 xmlframes.png|350px]]
  
[[ATExtendedDialogs|More]]
+
See also [[ATExtendedDialogs]] for a form which mimics the good features from the GTK2/Win32 font dialogs.
  
=== ExtPascal ===
+
== ExtPascal ==
  
Old ExtPascal is an Ext JS wrapper that lets you use the Ext JS from Object Pascal commands issued by the server using FastCGI or FastCGI thru CGI gateway. That brings the structure and strict syntax of the Object Pascal for programming the web browser. It can be found [https://sourceforge.net/projects/extpascal/files/ExtPascal%20Ext%203.2.1/ here], [https://github.com/farshadmohajeri/extpascal here] and [https://bitbucket.org/matthieugiroux/extpascal/downloads/ here] ([http://www.lazaruspascal.it/index.php?page=109 Community]).
+
Old ExtPascal is an Ext JS wrapper that lets you use the Ext JS from Object Pascal commands issued by the server using FastCGI or FastCGI thru CGI gateway. That brings the structure and strict syntax of the Object Pascal for programming the web browser. It can be found [https://sourceforge.net/projects/extpascal/files/ExtPascal%20Ext%203.2.1/ here], [https://github.com/farshadmohajeri/extpascal here] ([http://www.lazaruspascal.it/index.php?page=109 Community]).
 +
 
 +
== Eye-Candy Controls ==
  
=== Eye-Candy Controls ===
 
 
[[Eye-Candy Controls]] - set of visual controls written for Lazarus. More than twenty advanced controls.
 
[[Eye-Candy Controls]] - set of visual controls written for Lazarus. More than twenty advanced controls.
  
=== FastPlaz ===
+
== FastPlaz ==
 +
 
 
[https://fastplaz.com FastPlaz] is a lightweight web framework that builds with Free Pascal. Have a wizard to build a Rich Web Application or Rest JSON API. FastPlaz working on Linux, Windows, and Mac. FastPlaz have internal ORM so that will makes it easy to access the database.<BR>
 
[https://fastplaz.com FastPlaz] is a lightweight web framework that builds with Free Pascal. Have a wizard to build a Rich Web Application or Rest JSON API. FastPlaz working on Linux, Windows, and Mac. FastPlaz have internal ORM so that will makes it easy to access the database.<BR>
 
FastPlaz can run on shared hosting or even in microservice environments like Amazon Lambda.
 
FastPlaz can run on shared hosting or even in microservice environments like Amazon Lambda.
  
=== Fortes Report ===
+
== Fortes Report ==
 +
 
 
View report at design time. Available for Lazarus from [https://bitbucket.org/matthieugiroux/fortes/downloads/ here].
 
View report at design time. Available for Lazarus from [https://bitbucket.org/matthieugiroux/fortes/downloads/ here].
  
=== fpctwit ===
+
== fpctwit ==
[https://bitbucket.org/mararosas/fpctwit/src/default/ fpctwit] is a plurk, Twitter and OAuthv1 library with example programs (console and GUI). It's a framework that implements the [http://en.wikipedia.org/wiki/Oauth Oauthv1] authorization protocol. The OAuth library (and the Twitter and plurk libraries using that) uses the Synapse network units for easy communication, but can easily be adapted for other network layers. It supports OAuthv1 secure authentication and SSL/TLS encryption. The library uses modified fpJSON units to allow getting UTF8 data out of the JSON data with Tweets returned from Twitter (for FPC trunk, the FPC units are used as Michael Van Canneyt added support for UTF8 in trunk).
 
  
Functionality includes: getting tweets using the Search API, tweeting, getting username info, authenticating using PIN/OOB or preset credentials (consumerkey+secret,authtoken+secret). The twitter console demo, fpctwit, also demonstrates the Streaming API to process and show Tweets and deletion messages. There is a plurk console demo that demonstrates the functionality in the plurk library.
+
[[fpctwit]] is a Plurk, Twitter and OAuthv1 library with example programs (console and GUI). It's a framework that implements the [http://en.wikipedia.org/wiki/Oauth Oauthv1] authorization protocol. The OAuth library (and the Twitter and plurk libraries using that) uses the Synapse network units for easy communication, but can easily be adapted for other network layers. It supports OAuthv1 secure authentication and SSL/TLS encryption. The library uses modified fpJSON units to allow getting UTF8 data out of the JSON data with Tweets returned from Twitter (for FPC trunk, the FPC units are used as Michael Van Canneyt added support for UTF8 in trunk).
 +
 
 +
== Greyhound ==
  
=== Greyhound ===
 
 
[https://github.com/mdbs99/Greyhound Greyhound] is a tiny ORM-ish for Free Pascal. It is fast, clean and simple to use.
 
[https://github.com/mdbs99/Greyhound Greyhound] is a tiny ORM-ish for Free Pascal. It is fast, clean and simple to use.
  
=== GTK2forpascal ===
+
== GTK2forpascal ==
 +
 
 
Mattias Gaertner's [http://sourceforge.net/projects/gtk2forpascal/ gtk2forpascal project] is developing the bindings for pascal to use the gtk2 libraries (gimp tool kit). Supported Languages are [[Free Pascal]] and Kylix and the bindings are intended to work under Linux, FreeBSD and Win32. These bindings are now also part of the packages supplied with fpc.
 
Mattias Gaertner's [http://sourceforge.net/projects/gtk2forpascal/ gtk2forpascal project] is developing the bindings for pascal to use the gtk2 libraries (gimp tool kit). Supported Languages are [[Free Pascal]] and Kylix and the bindings are intended to work under Linux, FreeBSD and Win32. These bindings are now also part of the packages supplied with fpc.
  
=== Habari ActiveMQ Client / Habari OpenMQ Client ===
+
== Habari ActiveMQ Client / Habari OpenMQ Client ==
 +
 
 
[https://www.habarisoft.com/ Habari ActiveMQ Client] is a library (and components) for Delphi(tm) 6 to 2009 and Free Pascal which provides easy access to [http://activemq.apache.org/ Apache ActiveMQ], the most popular and powerful open source Message Broker.
 
[https://www.habarisoft.com/ Habari ActiveMQ Client] is a library (and components) for Delphi(tm) 6 to 2009 and Free Pascal which provides easy access to [http://activemq.apache.org/ Apache ActiveMQ], the most popular and powerful open source Message Broker.
 
With Habari ActiveMQ Client, applications can connect to Apache ActiveMQ servers, subscribe to queues and topics, send and receive messages and objects, and work with transactions. The library follows the specification of the [http://en.wikipedia.org/wiki/Java_Message_Service JMS API] for Message Oriented Middleware. The communication layer supports Synapse and Internet Direct (Indy) for Lazarus.
 
With Habari ActiveMQ Client, applications can connect to Apache ActiveMQ servers, subscribe to queues and topics, send and receive messages and objects, and work with transactions. The library follows the specification of the [http://en.wikipedia.org/wiki/Java_Message_Service JMS API] for Message Oriented Middleware. The communication layer supports Synapse and Internet Direct (Indy) for Lazarus.
Line 71: Line 95:
 
[https://www.habarisoft.com/ Habari OpenMQ Client] is a library for Delphi(tm) 6 to 2009 and Free Pascal which provides easy access to the [https://mq.dev.java.net/about.html Open Message Queue (OpenMQ)] Message Broker, a very compact, fast and easy to use message queue system. OpenMQ is part of the GlassFish(tm) application server for the Java(tm) platform. The library follows the specification of the [http://en.wikipedia.org/wiki/Java_Message_Service JMS] API for Message Oriented Middleware. The communication layer supports Synapse and Internet Direct (Indy) for Lazarus.
 
[https://www.habarisoft.com/ Habari OpenMQ Client] is a library for Delphi(tm) 6 to 2009 and Free Pascal which provides easy access to the [https://mq.dev.java.net/about.html Open Message Queue (OpenMQ)] Message Broker, a very compact, fast and easy to use message queue system. OpenMQ is part of the GlassFish(tm) application server for the Java(tm) platform. The library follows the specification of the [http://en.wikipedia.org/wiki/Java_Message_Service JMS] API for Message Oriented Middleware. The communication layer supports Synapse and Internet Direct (Indy) for Lazarus.
  
=== Internet Tools ===
+
== Internet Tools ==
 +
 
 
The [http://www.benibela.de/sources_en.html#internettools Internet Tools] are a set of units, which should contain everything you need to interact with the www. Includes html parsers with a sax and dom-like interfaces, an XPath 2 / XQuery interpreter, CSS 3 selectors, pattern-matching xml templates, and a http/s connection wrapper around synapse/wininet. Compare the [[Internet Tools | examples here]].
 
The [http://www.benibela.de/sources_en.html#internettools Internet Tools] are a set of units, which should contain everything you need to interact with the www. Includes html parsers with a sax and dom-like interfaces, an XPath 2 / XQuery interpreter, CSS 3 selectors, pattern-matching xml templates, and a http/s connection wrapper around synapse/wininet. Compare the [[Internet Tools | examples here]].
  
=== KControls ===
+
== KControls ==
 +
 
 
[[KControls]] is a set of powerful components for Delphi and Lazarus. Main components are: KGrid/KDbGrid - grid components, KMemo - rich edit component, KHexEditor - hexadecimal editor. Freeware with source.
 
[[KControls]] is a set of powerful components for Delphi and Lazarus. Main components are: KGrid/KDbGrid - grid components, KMemo - rich edit component, KHexEditor - hexadecimal editor. Freeware with source.
  
=== LazAutoUpdater ===
+
== LazAutoUpdater ==
 +
 
 
[[LazAutoUpdater|Laz Auto Updater]] is a visual drop-in component for the Lazarus/FPC IDE to make updating your application easier and simpler. It is aimed at Lazarus Windows developers who host their project in SourceForge.
 
[[LazAutoUpdater|Laz Auto Updater]] is a visual drop-in component for the Lazarus/FPC IDE to make updating your application easier and simpler. It is aimed at Lazarus Windows developers who host their project in SourceForge.
 
*Drop-in the component, set one property (your sourceforge project name) and call these simple methods:
 
*Drop-in the component, set one property (your sourceforge project name) and call these simple methods:
Line 88: Line 115:
 
*End-users see the updating process as simple and transparent
 
*End-users see the updating process as simple and transparent
  
=== PasLibVLC (old) ===
+
== Lazbro ==
 +
 
 +
[[Lazbro]] is an HTML viewer component which is 100% Lazarus based.
 +
 
 +
[[File:lazbro1.png|320px]]
 +
 
 +
== LazTermUtils ==
  
[https://bitbucket.org/matthieugiroux/paslibvlc Here is old PasLibVLC].
+
[[LazTermUtils]] is a small library contains a few classes for managing terminal I/O using ANSI escape sequences. The goal of this unit is provide the functionality provided by the CRT unit (and some more), but optimized for only the most prevalent systems, by only using escape sequences. It was tested under Windows 10 and Linux and allows for writing portable, pretty console applications on both systems.
 +
 
 +
== PasLibVLC (old) ==
 +
 
 +
[https://bitbucket.org/matthieugiroux/paslibvlc Here is the old PasLibVLC].
 +
 
 +
== priyatna.org ==
 +
 
 +
[[priyatna.org]] is a set of cool Delphi components ported to Lazarus. Components: ButtonBar, NiceChart, NiceGallery,    NiceGrid, NicePreview, NiceSideBar and SortListView.
 +
 
 +
== PUMA Repository ==
  
=== PUMA Repository ===
 
 
The [[PUMA Repository]] (Pascal Units for Medical Applications) is a collection of Pascal units for health informatics. It is compatible with a range of Pascal dialects including Lazarus / Free Pascal, Delphi and winsoft Pocket Studio.
 
The [[PUMA Repository]] (Pascal Units for Medical Applications) is a collection of Pascal units for health informatics. It is compatible with a range of Pascal dialects including Lazarus / Free Pascal, Delphi and winsoft Pocket Studio.
  
=== Synapse ===
+
== QRCodeGenLib4Pascal ==
 +
 
 +
[[QRCodeGenLib4Pascal]] is a Delphi/FPC compatible library that provides an easy to use interface for generating QR Codes, from text strings and byte arrays.
 +
 
 +
== ScroogeXHTML ==
 +
 
 +
[https://www.scroogexhtml.com/scroogexhtml_delphi.html ScroogeXHTML] is a library which can convert a subset of the RTF standard to HTML5 and XHTML, and some other XHTML and HTML standards. It is compatible with Delphi 2009+ and Free Pascal 3.1.0.
 +
 
 +
== Synapse ==
 +
 
 
The [http://www.ararat.cz/synapse/ Synapse Project] by Lukas Gebauer provides a serial port and synchronous TCP/IP Library.
 
The [http://www.ararat.cz/synapse/ Synapse Project] by Lukas Gebauer provides a serial port and synchronous TCP/IP Library.
  
=== Synaser ===
+
== Synaser ==
Library for serial communication (Linux, Windows) from the author of Synapse.
+
 
homepage: http://www.ararat.cz/synapse/ (same as Synapse)
+
Library for serial communication (Linux, Windows) from the author of Synapse. [http://www.ararat.cz/synapse/ Homepage] (same as Synapse)
 +
 
 +
== TbcParser ==
 +
 
 +
[http://www.gobestcode.com/html/math_parser_for_delphi.html TbcParser] is a component for Lazarus and Delphi to parse and evaluate mathematical expressions given as strings at runtime.
 +
 
 +
== The Icebox ==
  
=== The Icebox ===
 
 
A lot of useful Lazarus/FPC related information and components can be found on Tony Maro's [https://web.archive.org/web/20070717061637/http://tony.maro.net/ Icebox site] (archived link). His TMPack [https://web.archive.org/web/20031122081638/http://tony.maro.net/files/tmpack.tgz (archived download link)], Checkbook Tracker and RDP Frontend application [https://web.archive.org/web/20040110040003/http://tony.maro.net:80/files/rdp.tgz (archived download link)] are all excellent examples of the quality components and applications that Lazarus is capable of producing.
 
A lot of useful Lazarus/FPC related information and components can be found on Tony Maro's [https://web.archive.org/web/20070717061637/http://tony.maro.net/ Icebox site] (archived link). His TMPack [https://web.archive.org/web/20031122081638/http://tony.maro.net/files/tmpack.tgz (archived download link)], Checkbook Tracker and RDP Frontend application [https://web.archive.org/web/20040110040003/http://tony.maro.net:80/files/rdp.tgz (archived download link)] are all excellent examples of the quality components and applications that Lazarus is capable of producing.
  
=== The Light Pascal Toolkit (LPTK) ===
+
== The Light Pascal Toolkit (LPTK) ==
 +
 
 
The goal of the [http://lptk.sourceforge.net/ Light Pascal Toolkit] Project is to create a free object pascal toolkit for linux and windows GUI development. It looks pretty interesting... check out the [http://lptk.sourceforge.net/screenshots.php screenshots]!
 
The goal of the [http://lptk.sourceforge.net/ Light Pascal Toolkit] Project is to create a free object pascal toolkit for linux and windows GUI development. It looks pretty interesting... check out the [http://lptk.sourceforge.net/screenshots.php screenshots]!
  
=== TRURL RPN Engine ===
+
== TML Messaging Suite ==
The RPN Engine of the [http://trurl.sf.net TRURL project] is a free library that may be used as a foundation for virtual calculators with Reversed Polish Notation (RPN). Precompiled demo applications are available.
+
 
 +
[[TML Messaging Suite]] allows you to implement asynchronous message exchange on top of the IETF standard protocol BEEP (Blocks Extensible Exchange Protocol) without the need to fiddle around with the basics of message processing. All your work can be put into the features of the application instead of taming a TCP/IP socket. Available as binary packages for Windows 32/64, FreeBSD, macOS and Linux.
 +
 
 +
== TRURL RPN Engine ==
 +
 
 +
The RPN Engine of the [[TRURL]] project is a free library that may be used as a foundation for virtual calculators with Reversed Polish Notation (RPN). Precompiled demo applications are available.
 +
 
 +
== TRURL Segmitator ==
 +
 
 +
[[TRURL]]'s Segmitator is a class library that supports the creation of virtual seven-segment displays.
 +
 
 +
== TTreeListView ==
  
=== TTreeListView ===
 
 
The [http://www.benibela.de/components_en.html#treelistview tree list view] is the combination of a TTreeView and a TListView, i.e. a tree with columns. It is custom drawn and therefore completely platform independent. (Windows, Linux gtk2, 32/64bit. Didn't test mac/qt through)
 
The [http://www.benibela.de/components_en.html#treelistview tree list view] is the combination of a TTreeView and a TListView, i.e. a tree with columns. It is custom drawn and therefore completely platform independent. (Windows, Linux gtk2, 32/64bit. Didn't test mac/qt through)
  
=== VirtualDBTreeEx ===
+
== VirtualDBTreeEx ==
 +
 
 
[https://sourceforge.net/p/virtualdbtreeex/code/ci/default/tree/ VirtualDbTreeEx] is a selection interface entirely made with data.
 
[https://sourceforge.net/p/virtualdbtreeex/code/ci/default/tree/ VirtualDbTreeEx] is a selection interface entirely made with data.
  
=== ZenGL ===
+
== Win32TaskbarProgress ==
 +
 
 +
[[Win32TaskbarProgress]] is a component to control the progressbar over a Windows 7+ taskbar button.
 +
 
 +
== ZenGL ==
 +
 
 
[http://www.zengl.org ZenGL] is an open source library with tools, which helps to develop games and interactive application for different platforms.
 
[http://www.zengl.org ZenGL] is an open source library with tools, which helps to develop games and interactive application for different platforms.
  

Latest revision as of 20:59, 10 June 2023

Projects using
Free Pascal
Business Software
Communications software
Components and Libraries
Databases and Tools
Developer utilities
Editors and IDEs
Educational software
Games
Hobby software
Medical and Scientific software
Multimedia
User utilities
Web

5dpo

5dpo Component Library is a set of components developed by the 5dpo Robotic Soccer Team. It provides a visual serial port (TSdpoSerial) implementation of Synaser, an IEEE1394 camera (TSdpoVideo1394) component, an UVC video driver component (TSdpoVideo4L2) for webcams, a Gtk fast painting form (TSdpoFastForm) and a Joystick (TSdpoJoystick) component.

ACBr

Project ACBr Suite Components facing Commercial Automation. Working with ECF, TEF, NF-e, CT-e, MDF-e, SPED, NFS-e targeted to Brazilian Software. Fórum ACBr. GNU Library or Lesser General Public License version 2.0 (LGPLv2).

Alcinoe

Alcinoe is a set of components written in assembly language x86. Here is Alcinoe for Lazarus.

Area Calculations Library

Area Calculations Library is a set of Pascal functions for calculating the area of squares, rectangles, triangles, rhombus, trapezoids, circles and circle segments. It also includes some additional measurement calculations functions.

Audorra

Audorra is a digital audio library for Delphi and Free Pascal. Using a flexible plugin architecture, it allows you to exchange the audio backend (e.g. WaveOut, OpenAL), add protocol classes (e.g. file, http) and decoders.

BrasLib

BrasLib is a new report component for Lazarus under development by Brazilian programmers.

Brook Framework

Brook for Free Pascal is the Free Pascal framework for web applications. 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 etc...

Carik Bot

Carik is lightweight bot engine, simple, fast and open source. NLP has been provided in Indonesian as an example. Can run on microservice environments like Amazon Lambda also. Currently, Carik works on several messenger platforms such as Telegram, Facebook Messenger, Line, Direct Message, and Whatsapp. Carik is very easy to integrate with other systems, such as finance, staffing, iot and so forth.

COMTAY

Project homepage COMTAY is a shared library for creating asymmetric stackful coroutines and co-methods. It is applicable to both procedural and class-based programming to implement cooperative multitasking.

COMTAY currently supports the calling conventions of Free Pascal, Delphi, MS Visual C++, and GNU C++. It runs on 32- and 64-bit platforms on Windows and Linux.

CyberUnits

CyberUnits is a cross-platform class library for computer simulations in life sciences and systems research.

Extended Man/XML Frames

Extended Components are a set of data and ini customized components. It contains relationships management components to use with your data software and for VirtualDbTreeEx. There are also invisible components for pictures' translation, extracting and copying. There is also an update component with its ini creating project. With Extended you can create reports quickly from data, Virtual Trees or tdbgrids. Extended uses GPL license. Source

Man Frames are management components for tables. Some data or property forms can manage some kinds of Datasets. It contains an old asynchronous data pull on customform and groupview. A prepared software with user management and functions management lets you quickly create a management software with an engine, without creating source. It depends on Extended components.

XML Frames, a VRAD Framework, lets you create a management software from BPMN 2 XML files. On Windows, Linux and macOS. Free components are now with GPL license.

Windows Demo and Other OSes Demos. MDA Extension.

2010-10 extended.png2010-10 xmlframes.png

See also ATExtendedDialogs for a form which mimics the good features from the GTK2/Win32 font dialogs.

ExtPascal

Old ExtPascal is an Ext JS wrapper that lets you use the Ext JS from Object Pascal commands issued by the server using FastCGI or FastCGI thru CGI gateway. That brings the structure and strict syntax of the Object Pascal for programming the web browser. It can be found here, here (Community).

Eye-Candy Controls

Eye-Candy Controls - set of visual controls written for Lazarus. More than twenty advanced controls.

FastPlaz

FastPlaz is a lightweight web framework that builds with Free Pascal. Have a wizard to build a Rich Web Application or Rest JSON API. FastPlaz working on Linux, Windows, and Mac. FastPlaz have internal ORM so that will makes it easy to access the database.
FastPlaz can run on shared hosting or even in microservice environments like Amazon Lambda.

Fortes Report

View report at design time. Available for Lazarus from here.

fpctwit

fpctwit is a Plurk, Twitter and OAuthv1 library with example programs (console and GUI). It's a framework that implements the Oauthv1 authorization protocol. The OAuth library (and the Twitter and plurk libraries using that) uses the Synapse network units for easy communication, but can easily be adapted for other network layers. It supports OAuthv1 secure authentication and SSL/TLS encryption. The library uses modified fpJSON units to allow getting UTF8 data out of the JSON data with Tweets returned from Twitter (for FPC trunk, the FPC units are used as Michael Van Canneyt added support for UTF8 in trunk).

Greyhound

Greyhound is a tiny ORM-ish for Free Pascal. It is fast, clean and simple to use.

GTK2forpascal

Mattias Gaertner's gtk2forpascal project is developing the bindings for pascal to use the gtk2 libraries (gimp tool kit). Supported Languages are Free Pascal and Kylix and the bindings are intended to work under Linux, FreeBSD and Win32. These bindings are now also part of the packages supplied with fpc.

Habari ActiveMQ Client / Habari OpenMQ Client

Habari ActiveMQ Client is a library (and components) for Delphi(tm) 6 to 2009 and Free Pascal which provides easy access to Apache ActiveMQ, the most popular and powerful open source Message Broker. With Habari ActiveMQ Client, applications can connect to Apache ActiveMQ servers, subscribe to queues and topics, send and receive messages and objects, and work with transactions. The library follows the specification of the JMS API for Message Oriented Middleware. The communication layer supports Synapse and Internet Direct (Indy) for Lazarus.

Habari OpenMQ Client is a library for Delphi(tm) 6 to 2009 and Free Pascal which provides easy access to the Open Message Queue (OpenMQ) Message Broker, a very compact, fast and easy to use message queue system. OpenMQ is part of the GlassFish(tm) application server for the Java(tm) platform. The library follows the specification of the JMS API for Message Oriented Middleware. The communication layer supports Synapse and Internet Direct (Indy) for Lazarus.

Internet Tools

The Internet Tools are a set of units, which should contain everything you need to interact with the www. Includes html parsers with a sax and dom-like interfaces, an XPath 2 / XQuery interpreter, CSS 3 selectors, pattern-matching xml templates, and a http/s connection wrapper around synapse/wininet. Compare the examples here.

KControls

KControls is a set of powerful components for Delphi and Lazarus. Main components are: KGrid/KDbGrid - grid components, KMemo - rich edit component, KHexEditor - hexadecimal editor. Freeware with source.

LazAutoUpdater

Laz Auto Updater is a visual drop-in component for the Lazarus/FPC IDE to make updating your application easier and simpler. It is aimed at Lazarus Windows developers who host their project in SourceForge.

  • Drop-in the component, set one property (your sourceforge project name) and call these simple methods:
If LazAutoUpdate.NewVersionAvailable then...
LazAutoUpdate.DownloadNewVersion
LazAutoUpdate.UpdateToNewVersion
  • ..and in your form.activate code:
LazAutoUpdate.ShowWhatsNewIfAvailable
  • You (the developer) have plenty of control over how the component behaves, yet it is simple to use.
  • End-users see the updating process as simple and transparent

Lazbro

Lazbro is an HTML viewer component which is 100% Lazarus based.

lazbro1.png

LazTermUtils

LazTermUtils is a small library contains a few classes for managing terminal I/O using ANSI escape sequences. The goal of this unit is provide the functionality provided by the CRT unit (and some more), but optimized for only the most prevalent systems, by only using escape sequences. It was tested under Windows 10 and Linux and allows for writing portable, pretty console applications on both systems.

PasLibVLC (old)

Here is the old PasLibVLC.

priyatna.org

priyatna.org is a set of cool Delphi components ported to Lazarus. Components: ButtonBar, NiceChart, NiceGallery, NiceGrid, NicePreview, NiceSideBar and SortListView.

PUMA Repository

The PUMA Repository (Pascal Units for Medical Applications) is a collection of Pascal units for health informatics. It is compatible with a range of Pascal dialects including Lazarus / Free Pascal, Delphi and winsoft Pocket Studio.

QRCodeGenLib4Pascal

QRCodeGenLib4Pascal is a Delphi/FPC compatible library that provides an easy to use interface for generating QR Codes, from text strings and byte arrays.

ScroogeXHTML

ScroogeXHTML is a library which can convert a subset of the RTF standard to HTML5 and XHTML, and some other XHTML and HTML standards. It is compatible with Delphi 2009+ and Free Pascal 3.1.0.

Synapse

The Synapse Project by Lukas Gebauer provides a serial port and synchronous TCP/IP Library.

Synaser

Library for serial communication (Linux, Windows) from the author of Synapse. Homepage (same as Synapse)

TbcParser

TbcParser is a component for Lazarus and Delphi to parse and evaluate mathematical expressions given as strings at runtime.

The Icebox

A lot of useful Lazarus/FPC related information and components can be found on Tony Maro's Icebox site (archived link). His TMPack (archived download link), Checkbook Tracker and RDP Frontend application (archived download link) are all excellent examples of the quality components and applications that Lazarus is capable of producing.

The Light Pascal Toolkit (LPTK)

The goal of the Light Pascal Toolkit Project is to create a free object pascal toolkit for linux and windows GUI development. It looks pretty interesting... check out the screenshots!

TML Messaging Suite

TML Messaging Suite allows you to implement asynchronous message exchange on top of the IETF standard protocol BEEP (Blocks Extensible Exchange Protocol) without the need to fiddle around with the basics of message processing. All your work can be put into the features of the application instead of taming a TCP/IP socket. Available as binary packages for Windows 32/64, FreeBSD, macOS and Linux.

TRURL RPN Engine

The RPN Engine of the TRURL project is a free library that may be used as a foundation for virtual calculators with Reversed Polish Notation (RPN). Precompiled demo applications are available.

TRURL Segmitator

TRURL's Segmitator is a class library that supports the creation of virtual seven-segment displays.

TTreeListView

The tree list view is the combination of a TTreeView and a TListView, i.e. a tree with columns. It is custom drawn and therefore completely platform independent. (Windows, Linux gtk2, 32/64bit. Didn't test mac/qt through)

VirtualDBTreeEx

VirtualDbTreeEx is a selection interface entirely made with data.

Win32TaskbarProgress

Win32TaskbarProgress is a component to control the progressbar over a Windows 7+ taskbar button.

ZenGL

ZenGL is an open source library with tools, which helps to develop games and interactive application for different platforms.