You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs: all 5 @ignitionai/* packages live on npm — remove callouts
All three remaining backend packages published at v0.1.0:
- @ignitionai/backend-onnx
- @ignitionai/storage
- @ignitionai/environments
Docs updated post-publish:
- Quickstart: replaced the inlined 60-line CartPoleEnv with a clean
import from @ignitionai/environments. Back to the original
7-line promise in the page title.
- Landing hero + components/quickstart.tsx: install command now
lists all three published install-time packages (core,
backend-tfjs, environments).
- index.mdx intro: updated install section to explain the three
packages and note that environments is optional if you want to
write your own TrainingEnv from scratch.
- how-it-works/{index,backend-onnx,storage}.mdx: import lines go
back to '@ignitionai/environments' instead of the './cartpole-env'
workaround. Added a note about the fifth package on the monorepo
map page.
- how-it-works/backend-onnx.mdx + storage.mdx + tutorials/onnx-unity.mdx:
removed the "publish pending" <Callout> blocks. ONNX tutorial
prereq updated to `npm install @ignitionai/backend-onnx`.
- research.md R3 + roadmap Phase 1.4: marked all 5 packages as ✓
published, noted the post-publish doc cleanup.
package.json autocorrect: `npm pkg fix` normalized the repository.url
on @ignitionai/environments during publish. Kept the normalized form.
Build: 23 routes, 0 errors.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: packages/web/content/how-it-works/backend-onnx.mdx
+2-8Lines changed: 2 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,12 +9,6 @@ description: The ONNX bridge — train in the browser with TF.js, export to ONNX
9
9
10
10
**Source**: [`packages/backend-onnx/src/`](https://github.com/IgnitionAI/ignition/tree/main/packages/backend-onnx/src) on GitHub.
11
11
12
-
import { Callout } from'nextra/components'
13
-
14
-
<Callouttype="warning">
15
-
**Publish status**: `@ignitionai/backend-onnx` ships with the monorepo but is not yet on the public npm registry. Build it from source with `pnpm --filter @ignitionai/backend-onnx build`. A public release is tracked in the roadmap.
16
-
</Callout>
17
-
18
12
## What "Train → Deploy" means in practice
19
13
20
14
The pipeline has four stages:
@@ -47,7 +41,7 @@ Nothing new here — you're using `@ignitionai/backend-tfjs` exactly as describe
(The `CartPoleEnv` class comes from your own project — see the [Quickstart](/docs/quickstart) for a complete copy-paste definition.)
34
-
35
33
Here's what happens across the packages:
36
34
37
-
1.**`@ignitionai/core`** provides the `TrainingEnv` interface contract and the `IgnitionEnv` base class with the generic training loop.
38
-
2.**`@ignitionai/backend-tfjs`** provides `IgnitionEnvTFJS`, which extends `IgnitionEnv` and registers the TF.js-backed `DQNAgent`, `PPOAgent`, and `QTableAgent` as the available algorithm factories.
35
+
1.**`@ignitionai/environments`** ships `CartPoleEnv` as a built-in `TrainingEnv` (also `GridWorldEnv` and `MountainCarEnv`).
36
+
2.**`@ignitionai/core`** provides the `TrainingEnv` interface contract and the `IgnitionEnv` base class with the generic training loop.
37
+
3.**`@ignitionai/backend-tfjs`** provides `IgnitionEnvTFJS`, which extends `IgnitionEnv` and registers the TF.js-backed `DQNAgent`, `PPOAgent`, and `QTableAgent` as the available algorithm factories.
39
38
3. When you call `env.train('dqn')`, `core`'s `IgnitionEnv.train()` method is invoked. It looks up the `'dqn'` factory (registered by the TFJS backend), deduces `inputSize` from `observe()` and `actionSize` from `actions`, calls the factory, and starts the training loop.
40
39
4. The training loop lives entirely in `core`. It doesn't know anything about TensorFlow.js — it just calls the generic `AgentInterface` methods (`getAction`, `remember`, `train`) on whatever agent the backend registered.
41
40
@@ -50,6 +49,8 @@ Each subsequent page in this section does an annotated walkthrough of one packag
50
49
3.**[backend-onnx](/docs/how-it-works/backend-onnx)** — the deploy pipeline.
51
50
4.**[storage](/docs/how-it-works/storage)** — persistence and HF Hub integration.
52
51
52
+
(There's a fifth package, [`@ignitionai/environments`](https://www.npmjs.com/package/@ignitionai/environments), that ships the built-in envs used in the docs. It's a thin wrapper around the `TrainingEnv` interface and doesn't need its own page — read [any env's source](https://github.com/IgnitionAI/ignition/tree/main/packages/environments/src) to see how the interface is actually implemented.)
Copy file name to clipboardExpand all lines: packages/web/content/how-it-works/storage.mdx
+1-7Lines changed: 1 addition & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,12 +9,6 @@ description: Persistent model storage for IgnitionAI agents — save and load tr
9
9
10
10
**Source**: [`packages/storage/src/`](https://github.com/IgnitionAI/ignition/tree/main/packages/storage/src) on GitHub.
11
11
12
-
import { Callout } from'nextra/components'
13
-
14
-
<Callouttype="warning">
15
-
**Publish status**: `@ignitionai/storage` ships with the monorepo but is not yet on the public npm registry. Build it from source with `pnpm --filter @ignitionai/storage build`. A public release is tracked in the roadmap.
Two packages. `core` contains the training loop and interfaces; `backend-tfjs` provides the TensorFlow.js agents (DQN, PPO, Q-Table).
51
+
Three packages to get started. `core` contains the training loop and the `TrainingEnv` interface. `backend-tfjs` provides the TensorFlow.js agents (DQN, PPO, Q-Table). `environments` ships ready-made envs (`CartPoleEnv`, `GridWorldEnv`, `MountainCarEnv`) so you can train something in 30 seconds. Drop `environments` from the list if you'd rather write your own env from scratch — the [tutorials](/docs/tutorials) walk through that exact flow.
Copy file name to clipboardExpand all lines: packages/web/content/quickstart.mdx
+10-82Lines changed: 10 additions & 82 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,99 +5,25 @@ description: Train your first RL agent in the browser in under 10 lines of code.
5
5
6
6
# Quickstart
7
7
8
-
By the end of this page, you will have trained a reinforcement-learning agent to balance a pole in the browser. The entire setup is 9 lines of code. You will not configure a neural network, pick hyperparameters, or write a training loop.
8
+
By the end of this page, you will have trained a reinforcement-learning agent to balance a pole in the browser. The entire setup is 7 lines of code. You will not configure a neural network, pick hyperparameters, or write a training loop.
- A bundler that can serve ES modules (Vite, Next.js, Webpack 5, etc.)
19
19
20
-
## Step 1 — Define the environment
21
-
22
-
IgnitionAI doesn't ship built-in envs on npm yet — you write yours, and the framework learns to play it. Here's a complete cart-pole env. Copy it into `src/cartpole-env.ts`:
This is roughly 60 lines, most of which is physics. The RL-relevant surface area is the six `TrainingEnv` methods at the top — that's your contract with the framework.
@@ -106,10 +32,12 @@ env.train('dqn') // Zero config. It just works.
106
32
// env.setSpeed(50) // Turbo training — 50× faster.
107
33
```
108
34
109
-
**Five lines.** That's the entire training setup. No neural network code, no hyperparameter tuning, no config files.
35
+
**Seven lines.** That's the entire training setup. No neural network code, no hyperparameter tuning, no config files.
110
36
111
37
Open the page in your browser, pop the devtools console, and you'll see reward logs scrolling as the agent learns. Within a few dozen seconds on most machines, the pole will start staying up.
112
38
39
+
That's it. If you want to understand *how* to write your own `TrainingEnv` from scratch (instead of using the built-in `CartPoleEnv`), jump to the [GridWorld tutorial](/docs/tutorials/grid-world) — it walks through the full 5-method interface.
40
+
113
41
## What just happened
114
42
115
43
Let's map each line of the example to a concept you'll see explained in more depth elsewhere in the docs.
@@ -118,9 +46,9 @@ Let's map each line of the example to a concept you'll see explained in more dep
118
46
119
47
`IgnitionEnvTFJS` is the **training environment** that runs on TensorFlow.js. It owns the training loop, the agent instance, and the TF.js backend selection. You'll see its internals in [How it works → backend-tfjs](/docs/how-it-works/backend-tfjs).
120
48
121
-
### Line 2 — `import { CartPoleEnv } from './cartpole-env'`
49
+
### Line 2 — `import { CartPoleEnv } from '@ignitionai/environments'`
122
50
123
-
`CartPoleEnv` is the `TrainingEnv`you just wrote. It describes the classic cart-pole world: a cart that can move left or right, a pole balanced on top, Euler-integrated physics, and a done condition when the pole tips past 12° or the cart leaves the track. The `TrainingEnv` interface is what you'll implement for your own worlds. See [How it works → core](/docs/how-it-works/core) for the full interface.
51
+
`CartPoleEnv` is a built-in `TrainingEnv`that describes the classic cart-pole world: a cart that can move left or right, a pole balanced on top, Euler-integrated physics, and a done condition when the pole tips past 12° or the cart leaves the track. The `@ignitionai/environments` package also ships `GridWorldEnv` and `MountainCarEnv`. The `TrainingEnv` interface is what you'll implement for your own worlds — see [How it works → core](/docs/how-it-works/core).
124
52
125
53
### Line 4 — `new IgnitionEnvTFJS(new CartPoleEnv())`
Copy file name to clipboardExpand all lines: packages/web/content/tutorials/onnx-unity.mdx
+1-7Lines changed: 1 addition & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,18 +9,12 @@ This tutorial is the entire IgnitionAI deploy story in one page. You'll train a
9
9
10
10
Estimated time: **50–75 minutes**. Most of it is installing Python and Unity if you don't already have them.
11
11
12
-
import { Callout } from'nextra/components'
13
-
14
-
<Callouttype="warning">
15
-
**Publish status**: `@ignitionai/backend-onnx` ships with the monorepo but is not yet on the public npm registry. For now, clone the [IgnitionAI repo](https://github.com/IgnitionAI/ignition) and run `pnpm --filter @ignitionai/backend-onnx build`, then link it into your project with `pnpm pack` + `npm install ./ignitionai-backend-onnx-0.1.0.tgz`. A public release is tracked in the roadmap.
16
-
</Callout>
17
-
18
12
## Prerequisites
19
13
20
14
- You've done the [Quickstart](/docs/quickstart) and trained a CartPole policy. You have `src/cartpole-env.ts` + `src/main.ts` working.
21
15
-**Python 3.9+** with `pip`. Check with `python --version`.
22
16
-**Unity 2022.3 LTS or newer** with the **Sentis** package. If you don't have Unity, this tutorial doubles as a reason to install it.
23
-
-Built `@ignitionai/backend-onnx`locally (per the callout above).
Copy file name to clipboardExpand all lines: roadmap.md
+6-5Lines changed: 6 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -53,13 +53,14 @@
53
53
-[ ] Social card image for Twitter/OG (not yet done)
54
54
-[ ] Hero GIF of Car Circuit demo in README (README currently text-only)
55
55
56
-
### 1.4 npm publish v0.1.0
56
+
### 1.4 npm publish v0.1.0 ✅
57
57
-[x]`@ignitionai/core` published at 0.1.0
58
58
-[x]`@ignitionai/backend-tfjs` published at 0.1.0
59
-
-[ ]`@ignitionai/backend-onnx` — built locally, not yet on npm (docs carry "publish pending" callout)
60
-
-[ ]`@ignitionai/storage` — built locally, not yet on npm (docs carry "publish pending" callout)
61
-
-[ ]`@ignitionai/environments` — CartPoleEnv / GridWorldEnv / MountainCarEnv not yet on npm. Quickstart inlines CartPoleEnv to avoid depending on an unpublished package.
62
-
-[ ] Tag v0.1.0 in git after all four @ignitionai/* backend packages are live
59
+
-[x]`@ignitionai/backend-onnx` published at 0.1.0
60
+
-[x]`@ignitionai/storage` published at 0.1.0
61
+
-[x]`@ignitionai/environments` published at 0.1.0 (ships `CartPoleEnv`, `GridWorldEnv`, `MountainCarEnv`)
-[ ] Tag v0.1.0 in git once the post-publish commit is merged
63
64
64
65
**Known framework bug surfaced during docs**: `backend-tfjs/src/defaults.ts:3-13` disagrees with `agents/dqn.ts:43` on `targetUpdateFrequency` (100 vs 1000). Docs cite the runtime value (1000). Needs a cleanup commit in the framework after merge.
0 commit comments