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
| MPSolver API | ✅ | Linear and mixed-integer programming wrapper; this package includes GLOP LP, CLP LP, GLPK LP/MIP, SCIP MIP, CBC MIP, BOP MIP, Knapsack MIP, and SAT MIP backends. |
123
-
| MathOpt API | ✅ | Unified modeling and solve API; this package includes GLOP, GLPK, GSCIP, CP-SAT, and PDLP backends. |
108
+
| MathOpt API | ✅ | Unified modeling and solve API with incremental solving and callback support; this package includes GLOP, GLPK, GSCIP, CP-SAT, and PDLP backends. |
| Linear Solver ModelBuilder || Python-like `linear_solver.model_builder` API for ergonomic LP/MIP modeling, import/export helpers, and backend solve helpers. |
138
-
| MathOpt incremental/callback APIs | ✅ | Incremental solving is exposed for MathOpt models with tracked updates for common LP/MIP model edits, rejected-update fallback, repeated LP updates, and GSCIP incremental message logging. Indicator constraints, message callbacks, solve interrupters, common solve parameters, typed model solve parameters with solve filters, Python-style solve-result accessors including ray/basis helpers for real solve results, `removeNames` duplicate-name solving, and typed backend parameters for GSCIP, GLOP, CP-SAT, PDLP, and GLPK are exposed. Python-only context managers and constructed result parser/proto-object helpers are outside the current TypeScript contract. |
122
+
| Linear Solver ModelBuilder || Ergonomic LP/MIP modeling API with import/export helpers and backend solve helpers. |
139
123
140
124
Unchecked rows are planned OR-Tools targets that are not exposed by this package
141
125
yet. Commercial and large third-party native backends such as Gurobi, CPLEX,
142
126
XPRESS, HiGHS, OSQP, ECOS, and SCS are not planned.
143
127
144
-
The TypeScript API mirrors the public OR-Tools API shape where it maps cleanly
145
-
to WebAssembly. CP-SAT exposes both a Python-like high-level builder and the
128
+
The TypeScript API mirrors the public OR-Tools Python API shape where it maps
129
+
cleanly to WebAssembly, and the fixture suite tracks Python API behavior for
130
+
the exposed solver surfaces. CP-SAT exposes both a high-level builder and the
146
131
proto-first `CpSat` API, routing exposes the familiar `RoutingIndexManager` and
147
132
`RoutingModel` APIs, MPSolver exposes the `pywraplp`-style solver API, and
148
133
MathOpt exposes a TypeScript model builder.
@@ -152,78 +137,43 @@ imports, with no manual copying into `public/` or `static/` required.
152
137
153
138
## Fixture test matrix
154
139
155
-
`npm --prefix package run test:fixtures` is the full fixture matrix. It runs the shared solver
156
-
cases through Vite, Webpack, Rollup, Deno, Node, and Bun. Browser fixtures cover
157
-
dev and static serving where the bundler supports both, Chromium and Firefox,
158
-
direct runtime execution, the browser worker bridge, and solver thread settings
159
-
where the solver supports them.
140
+
Run the full fixture matrix:
160
141
161
-
For focused iteration, use `npm --prefix package run test:fixtures:browser`,
162
-
`npm --prefix package run test:fixtures:runtime`, or an individual fixture script such as
163
-
`npm --prefix package run test:fixture:node`. The full matrix is the comprehensive check before
164
-
landing solver API, worker bridge, threading, or packaging changes.
142
+
```sh
143
+
npm --prefix package run test:fixtures
144
+
```
165
145
166
-
## API reference
146
+
This runs the shared solver cases through Vite, Webpack, Rollup, Deno, Node,
147
+
and Bun. Browser fixtures cover dev and static serving where the bundler
148
+
supports both, Chromium and Firefox, direct runtime execution, the browser
149
+
worker bridge, and solver thread settings where supported.
150
+
151
+
For focused iteration:
152
+
153
+
```sh
154
+
npm --prefix package run test:fixtures:browser
155
+
npm --prefix package run test:fixtures:runtime
156
+
npm --prefix package run test:fixture:node
157
+
```
167
158
168
-
See [docs/api.md](docs/api.md) for the full TypeScript API reference covering
Copy file name to clipboardExpand all lines: package/package.json
+41-2Lines changed: 41 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -1,7 +1,7 @@
1
1
{
2
2
"name": "or-tools-wasm",
3
3
"private": false,
4
-
"version": "0.9.0",
4
+
"version": "0.9.1",
5
5
"license": "Apache-2.0",
6
6
"repository": {
7
7
"type": "git",
@@ -169,5 +169,44 @@
169
169
"vite-plugin-dts": "^4.5.4",
170
170
"vite-plugin-top-level-await": "^1.6.0",
171
171
"vite-plugin-wasm": "^3.5.0"
172
-
}
172
+
},
173
+
"keywords": [
174
+
"or-tools",
175
+
"ortools",
176
+
"google-or-tools",
177
+
"optimization",
178
+
"operations-research",
179
+
"constraint-programming",
180
+
"constraint-solver",
181
+
"cp-sat",
182
+
"sat",
183
+
"linear-programming",
184
+
"integer-programming",
185
+
"mixed-integer-programming",
186
+
"mip",
187
+
"milp",
188
+
"mathopt",
189
+
"vehicle-routing",
190
+
"vrp",
191
+
"tsp",
192
+
"route-optimization",
193
+
"scheduling",
194
+
"timetabling",
195
+
"assignment",
196
+
"bin-packing",
197
+
"knapsack",
198
+
"network-flow",
199
+
"wasm",
200
+
"webassembly",
201
+
"typescript",
202
+
"javascript",
203
+
"browser",
204
+
"solver",
205
+
"combinatorial-optimization",
206
+
"mathematical-optimization",
207
+
"job-shop-scheduling",
208
+
"delivery-routing",
209
+
"client-side"
210
+
],
211
+
"description": "Google OR-Tools compiled to WebAssembly for TypeScript, JavaScript, browser and Node. Supports CP-SAT, Routing, MIP, MathOpt, vehicle routing, scheduling, linear programming and constraint optimization."
0 commit comments