На этой странице собраны ссылки на различные компоненты, позволяющие расширить возможности Lazarus и ускорить разработку программ. Ведь как известно, программисты — народ ленивый, и они (мы) предпочитают не изобретать велосипед, по возможности используя уже готовые решения.

Мультимедиа

Audio Component Suite — коллекция компонентов для разработки приложений, работающих с аудио-данными (воспроизведение/запись/обработка). Может воспроизводить wav, ogg, mp3, mp2, wma и другие форматы, записывать звук с любого источника, «грабить» и много другое.
PortAudio — проект кросс-платформенного Audio API, доступный для Windows, Mac OS X, Unix (OSS/ALSA), SGI и BeOS. Содержит врапперы, позволяющие работать с C-библиотеками, а также примеры использования PortAudio DLL в Lazarus LCL под Windows. Враппер для portaudio.dll взят из Sourceforge-проекта UltraStar.
UltraStar Deluxe — заголовочные файлы к различным библиотекам для Windows, Linux и Mac OS X (с некоторыми сокращениями): portaudio, BASS, ffmpeg, SDL, libpng, FreeImage, freetype, JEDI-SDL, Lua, midi, pcre, portmixer, projectM, samplerate, SQLite, zlib, fft.
RackCtls — коллекция компонентов для работы с «Hi-fi-системами».
mpg123.dll — кросс-платформенный декодер форматов MPEG layers 1, 2 и 3 (MP3 протестирован плохо); прилагаемый пример содержит два враппера, протестированных только под Win32.

Графика и игры

Graphics32 — набор компонент для работы с графикой. Включает более функциональную реализацию TImage (TImage32).
Kambi VRML game engine — движок 3D-игры, ориентированный прежде всего на форматы VRML/X3D.
GLScene — полноценная библиотека 3D-графики, использующая для рендеринга OpenGL. Позволяет редактировать 3D-сцены непосредственно из IDE (официальный сайт).
TOpenGLBox — каркасный OpenGL-компонент для Lazarus, реализующий область рендеринга OpenGL.
LazRGBGraphics — пакет для быстрой обработки изображений и манипуляции пикселями (такими как scan line) в памяти.
TMetafile/TMetafileCanvas — реализация EnhMetafile API для Windows.
FreeImage — открытая библиотека, обеспечивающая поддержку популярных графических форматов, таких как PNG, BMP, JPEG, TIFF и других (работает в Windows, Linux и Mac OS X). Включает PicViewer — пример приложения (только для Windows), показывающего изображения с использованием данной библиотеки (DLL).

Инструменты

FpSystools — адаптация Kylix-пакета TurboPower Systools для Lazarus/FPC.
DCPcrypt — библиотека криптографических компонентов DCPcrypt.
RXfpc — некоторые из компонентов RXlib, конвертированные на Lazarus.
MultiLog — система ведения логов, разработанная для FPC-Lazarus.
OnGuard — порт Turbo Power OnGuard
UniqueInstance — компонент, блокирующий запуск более чем одной копии приложения (см. также пример использования и файловый архив).
XDev Toolkit — кросс-платформенный пакет инструментов для разработчиков.
MouseAndKeyInput — юнит для платформо-независимого управления вводом посредством мыши и клавиш.
PascalSane — бинд API для сканера (libsane) с примером использования.
log4delphi — система ведения логов, основанная на log4j.
fppkggui — простой gui для fppkg.
SymScan — интерфейс сканера штрих-кодов для устройств серий Symbol/Motorolla MC.
Theodp — инструменты для работы с UTF-8.

Архивация

Zlibar — объекты для создания и распаковки архивов zlib, содержащих несколько файлов.
Lazarus Zlib — класс-обёртка для удобной работы с zlib-архивами.
FreePascalArchivePackage — адаптация библиотеки TurboPower Software Abbrevia для Free Pascal Compiler.
ZipFile — компонент для инкапсуляции zip-файлов (с архивом можно работать как с обычной файловой системой).
libtar — класс для работы с .TAR-архивами от Stefan Heymann; может использоваться совместно с zstream для создания файлов .tar.gz.
bzip2lib — потоковые классы для сжатия и распаковки bzip2.

Редактирование и просмотр

PowerPDF — порт визуальных компонентов PowerPDF для Lazarus.
RichView — порт freeware-редакции компонента TRichView для Lazarus.
RichMemo — кросс-платформенная реализация редактора и просмотрщика Rich Text.
SynEdit — компоненты типа TMemo с подсветкой синтаксиса и другими функциями (используются IDE).
THtmlPort — порт компонентов HTML Components (THtmlViewer, TFrameViewer, TFrameBrowser) от Dave Baldwin для Lazarus.
GeckoPort — порт Gecko SDK for Delphi от Takanori Ito для Lazarus, включающий TGeckoBrowser.
Fshcomp — набор специализированных компонентов типа TEdit (в частности, для ввода чисел в валютном формате).

Сети

BeepFp — framework для протокола BEEP.
Sockets — компоненты для работы с сокетами TCP/IP.
lNet — набор компонентов, обеспечивающих простую, однопотоковую управляемую событиями реализацию протоколов, начиная с TCP и UDP, и заканчивая SMTP и HTTP. lNet не использует никаких внешних библиотек и очень легко портируется на новые платформы.
FPC and Apache Modules — заголовочные файлы для создания модулей к Apache на FPC.
Web Services Toolkit — пакет для работы с веб-сервисами.
Internet Tools — класс для получения и парсинга html-страниц, а также автообновления.
Brain Patchwork DX, LLC. — порт визуальной и невизуальной реализации клиента и сервера TCP/UDP для Lazarus 0.9.22/FPC 2.0.4.
Synapse — библиотека для работы с протоколом TCP/IP.
Indy for Lazarus project — 119 компонентов Indy для for FPC/Lazarus (проект заморожен).
Indy with Lazarus — адаптация Indy9 и Indy10 для Lazarus (ещё одна попытка).

Базы данных

fb embedded2 Laz — использование встраиваемой (embedded) версии FireBird 3 в Lazarus.
TPSQL — компоненты для подключения к базам данных PostgreSQL.
tiOPF — TechInsite Object Persistent Framework (версия 2).
TParadoxDataSet — реализация TDataSet, позволяющая читать файлы Paradox до версии 7 (возможно и выше).
ZeosDBO — набор компонентов для работы с различными базами данных (Firebird, PostgreSQL, MySQL, Oracle, SQLite и другие).
SQLitePass — компоненты для подключения к базам SQLite.
MS Access — работа с использованием TODBCConnection через FILEDSN.
TSubForm — Data-Aware компоненты SubForm, основанные на записях и датасетах (dataset).
FIBL — порт пакета FreeIBComponents для Lazarus.

Разное

StringHashMap — контейнер String -> Pointer. Быстрый и расходующий минимум памяти.
Runge-Kutta — научный компонент для интеграции дифференциальных уравнений с использованием событий.
CsvDocument — работа с CSV файлами с использованием парсера или «клеточного» интерфейса наподобие того, что используется в компоненте StringGrid.

Система

EpikTimer — точный таймер, написанный специально для Lazarus.
Manager Worker Threads System — менеджер потоков, позволяющий обрабатывать многочисленные объекты и данные в реальном времени.
TrayIcon — кросс-платформенный компонент для создания значка приложения в системном трее.
TPopupNotifier — компонент, показывающий подсказки в виде облака (balloon).
MultiDoc — компонент для написания псевдо-MDI приложений в Lazarus.
MDButtonsBar — ButtonsBar для компонента MultiDoc.
MPICH — биндинги для MPI (Message Passing Interface).

Визуальные компоненты и интерфейс

VirtualTreeview — порт быстрого компонента Virtual Treeview от SoftGems.
ColorBox — «пипетка» (сolor-picker) с предварительным просмотром.
Spook’s Panel Components — коллекция компонентов-панелей.
HistoryFiles — компонент для хранения списка «последних файлов» в .ini-файле и отображения его в меню.
ColorPalette — цветовая палитра, позволяющая использовать произвольные наборы цветов.
OrphPort — реализация контролов TurboPower Orpheus для Lazarus.
Lui Controls — набор визуальных компонентов (TToggleLabel, TMenuButton).
JvXPBar — порт контрола TJvXPBar из состава JVCL, отображающего иконку, заголовок и ноль или более кликабельных объектов в своей клиентской области.
CmdLine — строка запроса команды.
Wile64 — набор компонентов для Lazarus (TGifAnim, TColorProgress, TLabelCut и другие).
TGradButton — кнопка с улучшенным внешним видом.
TMyRollOut and ExpandPanel — сворачивающиеся блоки (аналог TJvRollOut); могут быть размещены на скрывающейся панели.
FileMenuHandler — сохранение списка «последних файлов» и реализация команд «Открыть», «Сохранить», «Сохранить как» и «Выход».
ZVDateTimeControls Package — пакет, включающий TZVDateTimePicker (клон TDateTimePicker из Delphi) и TDBZVDatePicker (data-aware версия TZVDateTimePicker).
SMNetGradient — градиентная заливка для Lazarus.
HTML Viewer Components — ещё одна попытка реанимировать HTMLView от Dave Baldwin. Заявлена совместимость с Delphi и Lazarus, но поддержка Lazarus находится в стадии alfa-тестирования.
TTreeListView — комбинация TTreeView и TListView, отображающая ветви дерева с дополнительными колонками.
ExcelInterfaces — компонент для работы с таблицами Excel из программ на FPC и Lazarus. Он также демонстрирует использование интерфейсов COM на платформе Windows.

Диаграммы и графики

TAChart — удобные и функциональные диаграммы для Lazarus.
PlotPanel — компоненты для отрисовки диаграмм и графиков.
Turbopower Visual PlanIt — порт компонентов для планирования Visual PlanIt для Lazarus.
RingChart and AnalogWatch — ещё одна эллиптическая диаграмма, а также аналоговые часы для Lazarus и FPC.
Diagram — модуль для отрисовки диаграмм с использованием системы моделей/просмотров.
DrawObjectsExtended — графический компонент для отрисовки структурных диаграмм, портированный из Delphi.

Доступ к «железу»

NIDAQmxBase — модуль для использования устройств National Instruments с помощью библиотеки NI DAQmx Base (не больше библиотеки NI DAQmx).
PascalSCADA — набор компонентов для упрощения разработки приложений HMI/SCADA, взаимодействующих с PLC или другими промышленными устройствами.
CUPS for Lazarus project — реализация Common UNIX Printing System для FPC/Lazarus.
Bluetooth — доступ к Bluetooth-устройствам (например, Wiimote).

Расширения Lazarus IDE

Manual Docker — расширение, позволяющее «приклеить» окно с сообщениями компилятора к редактору кода.