Avoraiser is a framework for creating modern user interfaces for the Polish programming language Avocado.
Avoraiser to ultra-lekki framework UI zbudowany od podstaw w oparciu o czyste, natywne WinAPI. Został zaprojektowany dla deweloperów, którzy stawiają na maksymalną wydajność, minimalny rozmiar pliku .exe oraz brak zewnętrznych zależności (Zero-Runtime).
- Ponad 400 natywnych funkcji systemowych – pełna kontrola nad interfejsem.
- Natywna wydajność – bezpośrednie wywołania systemowe bez zbędnych, ociężałych warstw abstrakcji (VCL/LCL)..
- Czyste WinAPI & GDI+ – sprzętowe renderowanie interfejsu, antyaliasing, przezroczystości (Alpha Channel) i zaokrąglone rogi kontrolek.
- Optymalizacja pod Avocado – idealnie dopasowany do składni i filozofii polskiego języka programowania.
- Modern Look & Feel – wbudowana obsługa Dark Mode, trybu Frameless (okna bez nagłówka) i płynnego skalowania.
- Natywny system PDF – wbudowany moduł generowania profesjonalnych dokumentów i raportów bezpośrednio do plików PDF z zachowaniem idealnych proporcji (Aspect Ratio).
- Pełny Unicode – bezproblemowa obsługa polskich znaków.
Porównanie wagi czystej aplikacji: Avoraiser (Avocado) vs. LCL (Lazarus).
| Tryb kompilacji | LCL (Lazarus) | Avoraiser (Avocado) | Wynik |
|---|---|---|---|
| Debug | 26.8 MB | 1.1 MB | ~24× mniejszy |
| Release | 2628 KB | 68 KB | ~38,7 mniejszy |
Werdykt: Avoraiser nie obciąża aplikacji balastem widgetsetów i stylów. To czysta moc WinAPI, co skutkuje błyskawicznym startem i idealną charakterystyką dla aplikacji typu portable.
Framework oferuje kompletny zestaw narzędzi do budowy profesjonalnego oprogramowania:
- avoraiser.core – Pętla komunikatów okna (odświeżanie UI bez zawieszeń) i podstawowe struktury.
- avoraiser.window – Zaawansowane zarządzanie oknami (systemowe, Frameless, blokady maksymalizacji).
- avoraiser.events – Przechwytywanie sygnałów WinAPI i konwersja na zdarzenia (callbacks).
- avoraiser.layout – Responsywne skalowanie i zarządzanie pozycjami (X, Y).
- avoraiser.utils – Szybkie konwersje, obliczanie proporcji grafiki i przeliczanie czcionek.
- avoraiser.gdi – Niskopoziomowe rysowanie kształtów, grafiki z pamięci RAM i wygładzanie krawędzi.
- avoraiser.system – Zestaw funkcji WinAPI, obsługa Drag & Drop oraz trybu Dark Mode.
- avoraiser.dialogs – Systemowe komunikaty i okna dialogowe (Open/Save, Drukarka).
- avoraiser.clipboard – Szybki dostęp do pamięci schowka Windows.
- avoraiser.button – Przyciski tekstowe i graficzne z obsługą stanów Hover/Pressed.
- avoraiser.edit / avoraiser.memo – Wydajna obsługa jedno i wieloliniowych pól tekstowych.
- avoraiser.richedit – Formatowany tekst z obsługą standardów systemowych.
- avoraiser.labels – Lekkie etykiety tekstowe z przezroczystym tłem.
- avoraiser.shape – Geometryczne dekoracje interfejsu (linie, koła, prostokąty).
- avoraiser.combobox / avoraiser.listbox – Szybka obsługa rozwijanych i otwartych list danych.
- avoraiser.checkbox / avoraiser.radiobutton / avoraiser.groupbutton – Przełączniki systemowe i autorskie z logicznym grupowaniem.
- avoraiser.progressbar – Paski postępu wspierające nowoczesny design (tryb tekstowy i graficzny).
- avoraiser.trackbar – Precyzyjne suwaki systemowe.
- avoraiser.spinedit – Numeryczne pola wyboru.
- avoraiser.timepicker – Natywny wybór daty i czasu.
- avoraiser.menu – Klasyczne paski nawigacyjne oraz menu kontekstowe.
- avoraiser.webview - Komponent oparty na Chromium, umożliwiający integrację silnika przeglądarki (renderowanie HTML/CSS/JS) wewnątrz aplikacji.
program_ui okno
import avoraiser.window
hwnd my_window
main
my_win
run_app
end.
procedure my_win
start
ui_parameters ui
ui = Default(TAvocadoWindowParams)
ui.title = 'Okno w Avoraiser - Avocado'
ui.width = 400
ui.height = 600
ui.x = 200
ui.y = 200
ui.visible = True
//Tworzenie Okna Main
my_window = create_window(ui)
if my_window <> 0 then
begin
//Kod aplikacji
end
end
{$codepage cp1252}
{$mode objfpc}
{$H+}
{$APPTYPE GUI}
program okno;
uses
Windows, avoraiser.window;
var
my_window: HWND;
procedure my_win;
var
ui: TAvocadoWindowParams;
begin
ui := Default(TAvocadoWindowParams);
ui.title := 'Okno w Avoraiser - Avocado';
ui.width := 400;
ui.height := 600;
ui.x := 200;
ui.y := 200;
ui.visible := True;
//Tworzenie Okna Main
my_window := create_window(ui);
if my_window <> 0 then
begin;
//Kod aplikacji
end;
end;
begin
my_win;
run_app;
end.
Dokumentacja wygenerowana za pomocą narzędzia PasDoc na podstawie komentarzy w kodzie. Przeznaczona dla programistów korzystających ze środowiska Lazarus (Free Pascal).
Oficjalna dokumentacja dla Avocado - nowopowstającego, polskiego języka programowania (projekt w trakcie budowy).
| ListBox | ProgressBar | ComboBox |
|---|---|---|
![]() |
![]() |
![]() |
| Edit | TrackBar |
|---|---|
![]() |
![]() |
| Komunikaty | Input |
|---|---|
![]() |
![]() |
| Grafika GDI | Notatnik |
|---|---|
![]() |
![]() |
| Responsywne przyciski | Memo |
|---|---|
![]() |
![]() |
| Modern UI | Okna dialogowe |
|---|---|
![]() |
![]() |
| Aktywne Okno | Przyciski |
|---|---|
![]() |
![]() |
| Zdarzenia nad nagłówkiem | Drag and drop |
|---|---|
![]() |
![]() |
| Wykrywa Pendrive / Dysk | Scroll w memo |
|---|---|
![]() |
![]() |
| Czas | RichText |
|---|---|
![]() |
![]() |
Avoraiser jest udostępniany w modelu Source-Available do celów edukacyjnych i ewaluacyjnych.
- Użytek Niekomercyjny: Darmowy (zgodnie z warunkami LICENSE.md).
- Użytek Komercyjny: Wymaga wykupienia płatnej licencji per-developer. Wykorzystanie zarobkowe bez licencji skutkuje karami umownymi (50 000 PLN).
Source code is visible for evaluation purposes only.
- Non-commercial use: Free under specific terms.
- Commercial use: Requires a paid per-developer license.
See
LICENSE.mdfor full legal details.
Dymitr Wygowski (Programista Art) Projekt zapoczątkowany: 23.12.2025
- Facebook: Programista Art
- E-Mail: programista.art@gmail.com
- WWW: avocado-code.com
Created with passion for lightweight and efficient software.





















