[End User]

Install AXIS, compose source/stream/engine/storage recipes, and run research workflows without a proprietary chart host.

End User

AXIS is an installable charting PWA: load history, stream the present, evaluate Pine Script™ through a pluggable engine, and keep a script library on disk, IndexedDB, cloud, or git. This track is for operators and researchers who use the AXIS—not for plugin authors or Worker deployers.

Language fidelity (grammar, builtins, runtime semantics) lives in PYNE. AXIS never reimplements the language; it hosts evaluation via engine plugins.

Abstract

You compose four axes:

AxisQuestion it answers
SourceWhere do historical OHLCV bars come from?
StreamHow does the live bar advance?
EngineWho evaluates the script?
StorageWhere do saved scripts live?

Any lawful combination is valid. Offline lab, desk research against Binance + Flask, AXIS at the edge through a Cloudflare Worker, and a git-backed library are all first-class recipes—see Compose recipes.

Conceptual model

The shell (topbar, chart, editor, results, manager) is AXIS. Calculation is always engine.run({ script, bars, config }). Persistence of scripts is always a storage plugin.

Interface surface

SurfaceRole
TopbarSymbol, interval, source/stream/engine pickers, Load, Run, Live
WatchlistQuick symbol switch + quote poll
Chartlightweight-charts panes, drawings, trade markers
EditorCodeMirror 6 Pine document (docked / popout)
ResultsEvents, Strategy, Plots, Metrics, Raw + export
ManagerPlugin catalog, URL install, Script Library
SettingsEndpoint, engine, storage, interval defaults

Getting started

  1. Installation — Vite dev, static dist/, or hosted PWA
  2. Quick start — first load + first Run
  3. Compose recipes — offline, desk, multi-venue, CSV, edge, git

Guides

Reference

Invariants (operator-facing)

  1. AXIS ≠ engine — switching engine does not change the chart library; switching source does not change the language runtime.
  2. Active set is four-tuple — source, stream, engine, storage are selected independently (with sensible defaults when source implies stream).
  3. API keys stay in the browser — cloud storage and Pro keys are not uploaded by the shell except as request headers you configure.
  4. OHLCV bars are not persisted — reload re-fetches history; layout, script draft, and drawings survive in pynescript.axis.v1.

See also