Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Catalog

30,057 projects in the catalog.

Free Pascal, Lazarus and Delphi components, libraries and programs from GitHub, SourceForge, Codeberg, GitLab and more. Rate them, mark what looks interesting, and talk about them on their benches.

ibase

You can use Free Pascal to access an Interbase or Firebird database server from Linux and Windows.

  • Library
  • Lazarus

Database

TParadoxDataSet

file:tparadoxdataset_150.png TParadoxDataSet is a TDataSet that can read ( but not write! ) Paradox files up to Version 7.

  • Library
  • Lazarus

Database

UniqueInstance

UniqueInstance provides an easy way to force only one instance per application running at same time. To install this component on your component palette, the easiest way is to use the Lazarus Online Package Manager . Supports Windows and Linux (macOS prevents multiple instances by default).

  • Library
  • Lazarus

System

5dpo

The 5dpo Component Library (Sdpo) is a set of components released by the [http://www.fe.up.pt/~robosoc 5dpo Robotic Soccer Team] when we ported our robots' software from Kylix to Lazarus. It also includes units that are not components like the SdpoDynmatrix unit that implements a general propose matrix with the standard operations overloaded.

  • Library
  • Lazarus

Other

ACS

ACS ( Audio Components Suite ) is a freeware cross-platform set of components designed to perform different sound-processing tasks. It supports reading the audio data from CD, different file formats, for example wav,mp3,wma,ogg,mac and others, output to soundcard and files is also possible. Between input and output you can work with the data, different converters, mixers and processors are available.

  • Library
  • Lazarus

Multimedia

amunits

The Amigalib package provides pascal units and includes for interfacing with the Classic Amiga Operating System (version 2.04 or later).

  • Library
  • Lazarus

Bindings

ascii85

Ascii85, also called Base85, is a form of binary-to-text encoding developed by Paul E. Rutter for the “btoa” utility. By using five ASCII characters to represent four bytes of binary data (making the encoded size ¹⁄₄ larger than the original, assuming eight bits per ASCII character), it is more efficient than uuencode or Base64, which use four characters to represent three bytes of data (¹⁄₃ increase, assuming eight bits per ASCII character).

  • Library
  • Lazarus

Other

ATBinHex

ATBinHex is a control that implements the quick file (stream) viewer. Only visible part of file (or stream) is loaded into viewer, so it's suitable to show files of unlimited size.

  • Library
  • Lazarus

Files and Drives

ATButton

ATButton is OS-independant button component, flat look. Button as usual has Caption, OnClick.

  • Library
  • Lazarus and Delphi

Other

ATExtendedDialogs

ATExtendedDialogs is a package of units with extended dialogs. Currently only font dialog in the ATFontDialog unit.

  • Library
  • Lazarus

Dialogs

ATFileNotif

ATFileNotif is simple component which detects file change. It uses timer, timer checks are file props (file exists; file size; file age) changed or not. It calls OnChanged.

  • Library
  • Lazarus

Files and Drives

ATFlatControls

ATFlatControls is a package of several Lazarus visual components, they are used in the CudaText project UI. These components have separate Wiki pages:

  • Library
  • Lazarus

Other

ATFlatToolbar

ATFlatToolbar is component which creates row of ATButton 's on it, this looks like toolbar.

  • Library
  • Lazarus

GUI containers

ATGauge

ATGauge is OS-independant progress indicator component. It's like Delphi TGauge. The same properties (with some additions) but totally new code (it's smaller than Delphi 7 code). It has class name and properties compatible with the Delphi 7 version, but different unit name.

  • Library
  • Lazarus and Delphi

Indicators and Gauges

ATImageBox

This is TScrollBox with embedded TImage. Control can auto position image inside, using options:

  • Library
  • Lazarus

Graphics

ATListbox

ATListbox is OS-independant listbox control. It's made for dialog like Sublime Text's command list. If OnDrawItem is set, listbox is fully owner-drawn: you must not set items, just set ItemCount, ItemIndex.

  • Library
  • Lazarus

List and Combo Boxes

ATScrollBar

ATScrollBar is a scrollbar component for Delphi and Lazarus. It's not replacement for standard control, but is alternative one, it has different API. It paints itself OS-indenendant, using custom drawing on canvas.

  • Library
  • Lazarus and Delphi

Sizers and Scrollers

ATShapeLine

ATShapeLine is a component which paints line (directions: left-right, up-down, diagonals), with or without arrows at both sides. Options: line width, line color, arrow size, arrow color, show arrows. It is Lazarus port of Delphi component TLine (renamed since TLine id is busy with TAChart).

  • Library
  • Lazarus

Shapes

ATShellTreeview

ATShellTreeview is Lazarus component, descendant of TreeView, which provides treeview somewhat similar to VS Code editor. It gives "Folder" property which loads the folder to the root of treeview. Only first level of folder is read initially. All sub-folders are read on demand, on unfolding tree nodes. It gives event OnShellItemClick which allows to detect click and double-click on nodes (giving full file path).

  • Library
  • Lazarus

ListViews and TreeViews

ATStatusBar

ATStatusBar is a statusbar component for Delphi and Lazarus. It's not replacement for standard control, but is alternative one, it has different API. It paints itself OS-indenendant, using custom drawing on canvas.

  • Library
  • Lazarus and Delphi

Panels

BeepFp

BeepFp is a Free Pascal componentset to allow development of custom protocols using BEEP in native Object Pascal.

  • Library
  • Lazarus

Networking

BGRABitmap

BGRABitmap is a set of units designed to modify and create images with transparency (alpha channel). Direct pixel access allows fast image processing. The library has been tested on Windows, Ubuntu and macOS, with widgetsets win32, gtk1, gtk2, Carbon (32 bit) and Cocoa (64 bit).

  • Library
  • Lazarus

Graphics

BGRABitmap XYZ

XYZ is a colorspace that stores the actual stimulation of the average eye, relative to a max luminance (Y=1) considered as white. Fluorescent colors or light sources may have greater values for X/Y/Z so in this case you would rather use TXYZABitmap floating-point format to avoid saturation. Otherwise, for most use cases, when the image represents an object reflecting daylight, TWordXYZABitmap is sufficient.

  • Library
  • Lazarus

Graphics

BGRAControls

Use the Online Package Manager to get BGRABitmap and BGRAControls.

  • Library
  • Lazarus

Graphics

BGRASpriteAnimation

BGRASpriteAnimation is a graphic control developed with the BGRABitmap library. It is part of the BGRAControls package. This control is usefull to create animations from bitmaps.

  • Library
  • Lazarus

Graphics

BigInteger

There are several Pascal libraries for BigInteger (and Big Decimals, like 1.23) functionality. The C-based GMP library can also be used in Free Pascal, it's not listed here.

  • Library
  • Lazarus

Science

Bluetooth

The bluetoothlaz package provides bindings and functions to access bluetooth devices under various platforms.

  • Library
  • Lazarus

System

Brook Framework

Brook Framework is a cross-platform microframework which helps to develop web Pascal applications built by Delphi or Lazarus IDE and Free Pascal. Its core has been developed using [https://risoflora.github.io/libsagui libsagui], a cross-platform C library incorporating GNU libmicrohttpd, uthash, PCRE2, ZLib and GnuTLS.

  • Library
  • Lazarus

Networking

bzip2lib

bzip2lib provides stream classes for bzip2 compression and decompression. It uses external bzip2 libraries.

  • Library
  • Lazarus

Files and Drives

C to Pascal

One of the weaknesses of Pascal compared to the C language, is a lower number of existing libraries. The reason for that is the much greater popularity of the C language compared to Pascal. Rather than rewrite the existing C libraries in Pascal, an easier alternative is to use the C libraries from Pascal.

  • Other
  • Lazarus

Learning and Examples

CDDB

CDDB is a simple unit for accessing CD track information from CDDB/FreeDB. There is little documentation but sample code is provided below.

  • Library
  • Lazarus

Multimedia

cdrom

The cdrom package contains some routines to read the table of contents (TOC) of a CD-ROM. From this TOC a DISC ID can be computed which can be used to query a CDDB server such as the one on freecddb.org. This unit is compatible with Linux (only tested on x86) and Windows (only tested on 32-bit)

  • Library
  • Lazarus

System

ChemText

right|ChemText demo TChemText is a TCustomLabel descendant which can display chemical formulas and reaction equations with automatically placed subscripts and superscripts.

  • Library
  • Lazarus

Labels

chm

The FPC CHM package is a set of units distributed with FPC 2.2.2+ that allow to read/write .chm compressed HTML help files on multiple platforms.

  • Library
  • Lazarus

Files and Drives

CmdLine

CmdLine is a prompt component, which has a few extra features to fit better into a VCL environment.

  • Library
  • Lazarus

Other

CmdLineCfg

CmdLineCfg is a component that allows to create describe of a command-line parameters for any console application. As a product of the description, it's capable of generating graphic user-interface for it.

  • Library
  • Lazarus

Other

cocoaint

The Cocoa Interfaces. The Widgetset class API (winApi-style) is implemented here.

  • Library
  • Lazarus

Bindings

Codetools

Codetools is a Lazarus package providing tools to parse, explore, edit and refactor Pascal sources. The codetools have been packaged in their own module and are licensed under GPL. Many examples showing how to use the codetools in your own programs can be found under components/codetools/examples.

  • Library
  • Lazarus

Language Tools

ColorBox

ColorBox is a component that lets you select any predefined color with preview. There are two predefined palettes available:

  • Library
  • Lazarus

List and Combo Boxes

ColorPalette

right|ColorPalette ColorPalette is a cross-platform color palette grid with ability to select a color from a palette. The OnMouseColorPick event is fired when the user clicks onto a color.

  • Library
  • Lazarus

Grids

CryptINI

* Screenshot of Test/Demo app File:latest_testcryptini.jpg

  • Library
  • Lazarus

Cryptography

CsvDocument

CsvDocument library is a unit contaning set of classes for [http://en.wikipedia.org/wiki/Comma-separated_values CSV files] handling. The library was created to exchange data with OpenOffice Calc / MS Office Excel using CSV as intermediate format.

  • Library
  • Lazarus

Files and Drives

DCPcrypt

DCPcrypt is a collection of cryptographic components for the Lazarus.

  • Library
  • Lazarus

Cryptography

DebugServer

Official documentation: doc:fcl/dbugintf

  • Library
  • Lazarus

System

Delphi form to HTML converter

Delphi Form to HTML Converter component (F2H) is a Lazarus version of a new component, originally developed for Delphi 3.

  • Library
  • Lazarus

Other

DelphiWebScript

DWScript is an object-oriented scripting engine for Delphi based on the Delphi language, with extensions borrowed from other Pascal languages (FreePascal, Prism, etc.). It introduces a few Pascal language extensions of its own as well. DWScript is licensed under Mozilla Public License v 1.1 .

  • Library
  • Delphi

Language Tools

DMath

DMath is a mathematical library for Delphi and Free Pascal, written natively in Pascal.

  • Library
  • Lazarus and Delphi

Science

DomExt

DomExt unit extends FPC implementation of XML DOM API with set of functions to simplify XML node manipulation. Its functionality is inspired by [http://www.torry.ru/authorsmore.php?id=4012 SimpleXML Library by Michael Vlasov]

  • Library
  • Lazarus

Other

DxGetText

Lazarus dxGetText is a conversion of the dxGetText project (http://dybdahl.dk/dxgettext/). From the dxGetTest website: "Initially, this project used a Windows port of the GNU gettext library, but has made it much further and today it is a complete reimplementation of the GNU gettext library with many enhancements".

  • Library
  • Lazarus

Other

Emmet-Pascal

Emmet is mostly used by web-developers to simplify and speed up editing. Emmet can take an abbreviation and expand it into a structured code block. Standard Emmet is written in JavaScript and available in many text editors or web development tools. Emmet for Delphi and Free Pascal is written from scratch in Delphi and is used in RJ TextEd and CudaText .

  • Library
  • Lazarus

Edit and Memos

EncConv

EncConv is a package which gives unit EncConv, to convert text to/from UTF8. It was based on LazUtils' unit LConvEncoding , but API was changed and simplified. The list of supported encodings is the same as in LConvEncoding.

  • Library
  • Lazarus

Other

EpikTimer

EpikTimer is a programmer's stopwatch that is capable of measuring very short events with traceably high precision over long periods of time. It's simple to use, consumes virtually no CPU and requires only 25 bytes of ram to implement a timer instance. The component provides a single internal timer... but unlimited numbers can be declared externally and linked to a single EpikTimer component on the form.

  • Library
  • Lazarus

Date and Time

EverettRandom

The Everett interpretation of quantum mechanics ("Many Worlds") is that when an interaction is made with an elementary wave function (such as an electron or photon etc) the universe bifurcates. ref: [https://en.wikipedia.org/wiki/Many-worlds_interpretation Wikipedia Many Worlds page]

  • Library
  • Lazarus

Science

Extended Components

The Extended Components are part of a Very Rapid Applications Development framework . Management components to manipulate a lot of libraries on Delphi 2006, XE3, XE5 and Lazarus. Every control has special colors while focusing and editing. There are also a lot of buttons in two versions with centralized glyphs.

  • Library
  • Lazarus

Data controls

FasmOnDelphi

FasmOnDelphi is a Free Pascal/Delphi library for using Flat Assembler in any OS (can use FASM.DLL on Windows). It is a cross platform (Flat Assembler can work only on i386 compatible platforms) library for using FASM in runtime. In contrast to Fasm4Delphi, it does not depend on operating system and bit type.

  • Library
  • Lazarus and Delphi

Language Tools