Getting-started guides

Short, task-oriented guides, each built around a complete program you can compile and run. The programs are in programs/examples/guides/; every one was compiled and run, and the output printed in a guide is what it printed. If you have not yet written a first program, start with the Quick Start, then the 32 numbered examples in programs/deploy that ship with every release.

GuideLibrariesWhat you learn
What is new in v2026.10.3what to do when you upgrade, and what changed for users
Query.Structuredquery and friendstables, SQL, joins, prepared statements, saving to disk
HTTP client and web servernet, net_servera server, a client, connection reuse
JSON, XML and regular expressionsjson, xml, regexparsing, and what happens on bad input
Collectionsnonethe five collections you reach for most
Game AI with System.AIaiminimax and Monte Carlo tree search
Editor setup and the language serverVS Code and the other editors, debugging

The programs

ProgramCompile with -lib
query_start.obsquery,misc,net,json,regex,xml,csv,cipher
query_join.obsquery,misc,net,json,regex,xml,csv,cipher
query_otab.obsquery,misc,net,json,regex,xml,csv,cipher
http_keepalive.obsnet,net_server,json,cipher
data_basics.obsjson,xml,regex
data_bad_input.obsjson,xml,regex
collections_tour.obsnone
ai_tictactoe.obsai

The seven readme_*.obs programs are the short examples shown in the project README: readme_tour, readme_query, readme_json, readme_regex, readme_collections, readme_http and readme_ai.

Each file opens with a comment giving its exact compile and run lines. To build one:

cd programs/examples/guides
obc -src collections_tour.obs
obr collections_tour.obe

obc does not pull in a library's own dependencies, which is why a -lib list can name libraries the program never uses directly.

More

Keeping the site in step

The site pages guides.html and guide_*.html in docs/web are rendered from the Markdown in this folder, so edit the Markdown and run

python tools/docs/guides_to_html.py          write the pages
python tools/docs/guides_to_html.py --check  fail if a page is out of date

When you change a program, run it again and paste its new output into the guide that shows it.