> Plan9Basic_

Library & Language Reference Documentation
122
Libraries
600+
Core Functions
6
Platforms

Language

📖
Language Reference
Complete syntax, control flow, data types, operators, and variable scoping rules.

Core

StdLib
Standard functions: print, type conversion, math basics, clipboard, and error handling.
🔤
StrLib
75 string functions: manipulation, search, formatting, encoding, and locale support.
🔢
NumLib
34 numeric functions: math, trigonometry, rounding, random, and bitwise operations.
📅
DateTimeLib
66 date/time functions: creation, formatting, arithmetic, and component extraction.
📦
ArrayLib
Array creation, access, manipulation, sorting, and conversion.
📋
DictLib
Dictionary (key-value) creation, access, iteration, and serialization.
📝
StrListLib
66 string list functions: collections, file I/O, CSV parsing, key-value pairs, sorting, events.
🖥️
SysLib
43 system functions: files, directories, environment, processes, and shell commands.

Data

📄
JsonLib
57 JSON functions: parse, create, modify, path navigation, and serialization.
⚙️
ConfigLib
31 INI-based config functions: persistent settings, sections, enumeration.
🔍
RegexLib
28 regex functions: match, find, replace, split, capture groups.
🗄️
SQLiteLib
55+ SQLite database functions: CRUD, JSON integration, transactions, introspection.
🔐
Base64Lib
Base64 encoding/decoding for strings and files.
📦
GzipLib
Gzip compression/decompression for strings and files.
🗜️
ZipLib
15 ZIP archive functions: create, read, add, extract, browse, and quick compress.

Network

🌐
HttpLib
~92 HTTP client functions: REST, forms, auth, async, cookies, file transfer.

System

📁
IOUtilsLib
64 file/directory I/O functions with cross-platform support.
💻
PlatformInfoLib
Platform detection: OS, architecture, screen, and device information.
Extended Libraries

Beyond the core libraries, Plan9Basic includes an extensive set of GUI, animation, and visual effects libraries — enabling applets to build rich interfaces, animate elements, and apply visual transformations to controls. Documentation for these libraries is being developed progressively.

GUI — Forms & Controls

🪟
FormLib
Window/form creation, sizing, positioning, events, and modal dialogs.
🔘
ButtonLib
Push buttons with text, styling, click events, and state management.
🏷️
LabelLib
Text labels with font, color, alignment, and auto-sizing support.
✏️
EditLib
Single-line text input with validation, placeholder, and events.
📝
MemoLib
Multi-line text editor with scrollbars, word wrap, and line access.
☑️
CheckBoxLib
Checkbox controls with checked/unchecked state and change events.
🔵
RadioButtonLib
Radio buttons with mutual exclusion groups and selection events.
📋
ComboBoxLib
Drop-down combo boxes with item lists and selection handling.
📜
ListBoxLib
Scrollable list boxes with item management and selection modes.
🖼️
ImageLib
Image display from file/URL, scaling, rotation, and bitmap operations.
📊
StringGridLib
Tabular data grid with rows, columns, cell editing, and scrolling.
🔲
PanelLib
Container panels for grouping and organizing controls.
📐
LayoutLib
Layout management for automatic control arrangement and flow.
📜
ScrollBoxLib
Vertically-scrolling container with full alignment support, scroll bar control, and content size queries.
🔀
SwitchLib
Toggle switch controls with on/off state and events.
📶
ProgressBarLib
Progress indicators with min/max, value, and orientation control.
🎚️
TrackBarLib
Slider/trackbar controls for numeric range selection.
SpeedButtonLib
Toolbar-style speed buttons with glyph support and toggle state.
💬
CalloutRectangleLib
Callout/tooltip shapes with configurable arrow position.
⏱️
TimerLib
Timer controls with interval, enable/disable, and tick callbacks.
🎬
MediaPlayerLib
Audio/video playback with transport controls and media events.

GUI — Shapes & Drawing

RectangleLib
Rectangle shapes with fill, stroke, corners, and opacity.
RoundRectLib
Rounded rectangles with configurable corner radius.
CircleLib
Circle shapes with fill, stroke, and positioning.
EllipseLib
Ellipse shapes with independent width/height radii.
ArcLib
Arc shapes with configurable start and end angles.
LineLib
Line drawing between two points with stroke styling.
〰️
PathLib
Vector paths with move, line, curve, and close commands.
PieLib
Pie/sector shapes with start and end angles, fill, and stroke.

Animations

Property Animations 6 libraries
🔄
FloatAnimationLib
Animate numeric properties (position, size, opacity) over time.
🔢
IntAnimationLib
Animate integer properties with step-based transitions.
🎨
ColorAnimationLib
Animate color transitions with smooth interpolation.
📐
RectAnimationLib
Animate rectangle bounds (position + size combined).
🛤️
PathAnimationLib
Animate objects along vector paths with easing.
🎞️
BitmapListAnimationLib
Frame-by-frame sprite animation from bitmap sequences.

Visual Effects

Image & Filter Effects 41 libraries
AffineTransform BandedSwirl Bands Bevel Bloom Blur BoxBlur ColorKeyAlpha Contrast Crop DirectionalBlur Emboss Fill FillRGB GaussianBlur Gloom Glow HueAdjust InnerGlow Invert Magnify MaskToAlpha Monochrome NormalBlend PaperSketch PencilStroke PerspectiveTransform Pinch Pixelate RadialBlur Reflection Ripple Sepia Shadow Sharpen SmoothMagnify Swirl Tiler Toon Wave Wrap
Transition Effects 23 libraries
BandedSwirl Blind Blood Blur Bright Circle Crumple Dissolve Drop Fade Line Magnify Pixelate Ripple RotateCrumple Saturate Shape Slide Swipe Swirl Water Wave Wiggle

Artificial Intelligence

🤖
AILib
45 LLM functions: provider-agnostic client, chat, streaming, conversation history, token tracking, and multi-provider support (Claude, GPT, Gemini, Ollama, and more).
📚
RAGLib
13 RAG functions: knowledge base indexing, semantic retrieval, budget-aware search, and document lookup for AI-assisted applets.