Active Foundation
The developer basis of the Active packages. What it offers, how far this version goes, and where to begin.
Active Foundation is where the reusable Active packages are documented, demonstrated and handed to the projects that use them. This site explains what each package does, when you use it, how you configure it and what it does when something is missing, with working examples next to the code that runs them.
You do not need to know the repositories the packages come from. Everything a package expects from your application is described on its pages.
What Foundation offers#
- Packages you add to your own repository: formatting, a UI kit, translation, state, data grid, charts and maps. See the package catalogue for what each one is and how far it is.
- One supported way to receive them: a managed source transfer that copies the package source into your repository, with a record of where it came from. See Receiving packages.
- Guides, working examples and an API reference for every documented package.
- A shared development basis: lint and TypeScript presets, the Prettier configuration and the development standards, so code in every repository looks, checks and reads the same. See Development basis.
What this version contains#
This version documents the functional packages Foundation maintains:
@workspace/active-format: formatting and parsing of dates, numbers, currency amounts, percentages and byte counts.@workspace/active-ui: the component library this site is built with. Every public module has a page with a working example and an API reference generated from its source.@workspace/active-stateand@workspace/active-virtual: client state with owned async work, and layout-stable virtualization.@workspace/active-i18n: translations, language choice and reading direction, with a server example.@workspace/active-grid,@workspace/active-chartsand@workspace/active-geo: the data grid, with client, simulated and real server examples; every chart family; and maps.@workspace/active-helpers: the small helpers the grid, the charts and the maps share.
It also documents the two configuration packages of the development basis,
@workspace/eslint-config and
@workspace/typescript-config.
Every package is maintained here and still in development; none is released from Foundation yet. That covers each package, not that every page is finished: the content is still being reviewed, and a page names the limits it knows of.
How to read the labels#
Every package page shows the version this site documents, read from the package itself, and its release status, read from the release register of Foundation, which maintains the package. A version number alone is not a release:
- Released: the release register records this version, with exactly this content.
- Development: maintained and tested here, and not recorded as a release. Its contract can still change.
- Status unknown: the site has no reliable record of a release, for example for content that differs from the release recorded under its version. Treat it as unreleased.
Every example says what it proves:
- Client: runs entirely in your browser.
- Simulation: a server imitated in your browser. It shows the interaction, never a working server integration.
- Server: calls a real route of this site, which does the work on the server.
Where to begin#
- Read the catalogue to find the package you need.
- Follow Receiving packages to bring it into your repository.
- Start with the package's Getting started page, then the guides for what you build.