# Gizlang documentation

Each page has one kind, and each fact has one page. Other pages link to it. Every page states what a test checks
today.

| Kind | You want to | Pages |
| --- | --- | --- |
| Start | See what Gizlang can do, install it and run a first program | [Tour](tour.md), [Start](start.md) |
| Guides | Do a task, from an empty folder to a result | [Guides](#guides) |
| Operations | Run a server on your own machines | [Operations](#operations) |
| Reference | Find an exact fact: a declaration, a command, a rule | [Reference](reference/README.md) |
| Internals | Change Gizlang itself | [Internals](#internals) |

## Start

| Page | What it gives |
| --- | --- |
| [Tour](tour.md) | Each part of Gizlang in one short program that runs |
| [Start](start.md) | Install, then make, run, test and build a first program |

## Guides

| Guide | What you do |
| --- | --- |
| [The language](guides/language.md) | Learn Gizlang if you know TypeScript, JavaScript or Go |
| [The command line](guides/command-line.md) | Make a project, then run, check, test and build it |
| [Packages](guides/packages.md) | Use the manifest, pins, dependencies and npm packages, and publish a package |
| [Web apps](guides/web.md) | Build a server-rendered web app with GizWeb |
| [Model your data](guides/model.md) | Give one record type its table, typed queries, forms and views |
| [GizDB](guides/data.md) | Use the database in a program or as a server |
| [Vector search](guides/vector.md) | Index embeddings and find the nearest rows with SQL |
| [Machine learning in SQL](guides/sql-ml.md) | Train, deploy and use models with SQL in GizDB |
| [Compute](guides/compute.md) | Compute with tensors on the CPU and GPU, write kernels, take gradients |
| [AI models](guides/ai.md) | Chat, make images and serve the OpenAI API by model name |
| [Storage](guides/storage.md) | Manage buckets, objects, keys and volumes |
| [JavaScript and Python](guides/javascript-python.md) | Run JavaScript, TypeScript and Python programs on the VM |
| [Your Giz account](guides/giz-account.md) | Use models, Drive, tables, Computers, Apps and Agents from the `giz` command |
| [Migrate](guides/migrate.md) | Map Node.js, Next.js, PostgreSQL, Redis and S3 to their Gizlang equivalents |

## Operations

| Page | What you do |
| --- | --- |
| [The GizDB server](operations/gizdb-server.md) | Install, configure, back up and monitor the server on one Linux machine |
| [A storage range](operations/storage-range.md) | Run storage on your own disks and machines |

## Reference

[The reference index](reference/README.md) lists the language specification, the differences from TypeScript, GHTML,
the settings, the error codes, the command line, and each module of the standard library and of the libraries.

## Internals

| Page | How it works |
| --- | --- |
| [Compiler](internals/compiler.md) | Modules, the bootstrap from the seed, golden cases and the build cache |
| [Runtime](internals/runtime.md) | The C platform layer that every program links |
| [Memory](internals/memory.md) | Values, references, the collector of `Ref` objects and the memory limit |
| [System](internals/system.md) | Files, processes, sockets, JavaScript and Python, and effects |
| [Tools](internals/tools.md) | `bin/giz`, the command line and their caches |
| [VM](internals/vm.md) | The interpreter, the JIT, Node and the CPython bridge |
| [Web](internals/web.md) | GizWeb: the request path, pages, models, actions and live views |
| [Localization](internals/localization.md) | Messages, catalogs and the language of a request |
| [Database](internals/database.md) | GizDB: storage, transactions, SQL, analytics, search and the server |
| [Storage](internals/storage.md) | GizFS: chunks, consensus, the file, block, object and S3 profiles |
| [ML in SQL](internals/sql-ml.md) | The PostgresML interface of GizDB |
| [Compute](internals/compute.md) | SIMD, tensors, GPU kernels and models on each device class |
| [Performance](internals/performance.md) | The rules of measurement, the suites and their published results |

## Results and changes

| Page | What it gives |
| --- | --- |
| [Benchmarks](benchmarks.md) | The measured results, each with its date, machine and method |
| [Changelog](changelog.md) | The changes that users see, newest first |
