From concept to pilot
The minimal architectural pilot and the path to a production delivery, including the delivery plan for the embedding kit.
The path from concept to delivery has several forks, and it’s best to walk through each before the work starts. They’re collected below as a table: the question, the possible answers, and what the choice changes.
| Question | Options | What the decision affects |
|---|---|---|
| Where does the core run? | WebAssembly on the user’s side, a desktop app, or a process on the server. | This determines the deployment scheme. |
| Who owns the file? | A document management system, a local file, or object storage. | This determines the open and save sequence and how versions are handled. |
| Which objects are needed? | Cells, formulas, tables, charts, shapes, imported data. | This makes up the pilot’s capability matrix. |
| Which interface? | The ready-made surface, either under your brand or as a fully custom interface. | This determines what goes into the public call set and how deeply you can customize the look. |
| How are permissions passed? | View-only or editing, sheet protection, separation by tenant, permissions on data sources. | This makes up the session contract and the access checks. |
| How does the session live? | One tab, a desktop app process, a job on the server, returning to the app on a phone. | This determines timeouts, cancellation, and recovery. |
| Who operates it? | You yourselves, jointly, or us turnkey. | This determines availability commitments, monitoring, updates, and support. |
The minimal architectural pilot
Section titled “The minimal architectural pilot”-
One real, anonymized XLSX, and one business route.
-
One chosen scheme: browser with WebAssembly, or a desktop app. Don’t mix the server and mobile variants into the first prototype.
-
Your application starts an integration session and passes the file’s content and permissions; SumSheet returns the saved result and events.
-
Reopening, behavior under concurrent edits, a refusal with no partial write, memory use, and response time are all verified.
-
The outcome locks in the first version of the public interface, the capability matrix, what’s delivered, availability commitments, and the plan for reaching a production product.
A ready-made statement and the API delivery plan
Section titled “A ready-made statement and the API delivery plan”What’s already available
Section titled “What’s already available”What goes into the first embedding kit
Section titled “What goes into the first embedding kit”| Package | Minimal contents |
|---|---|
@sumsheet/embed |
Creation, open and close, embedding in the page, session state, choosing the runtime. |
@sumsheet/document |
Workbook contents, selection, cell details, a range of values, an object inventory. |
@sumsheet/events |
Selection, activation, double-click, object selection, menu-opening, and workbook-change events. |
@sumsheet/commands |
Running operations, undo and redo, revision checking, typed results and refusals. |
@sumsheet/ui-extensions |
Context menu item providers, registering your own commands, panels, and actions within the allotted boundaries. |
What needs to be finished before production handoff
Section titled “What needs to be finished before production handoff”-
Separate the public types and names from the large internal operations contract.
-
Lock in the event delivery order, whether they can be canceled, timeouts, and resource-release rules.
-
Compile the list of object kinds under the pointer, and the selection rules based on permissions and available capabilities.
-
Add versioning, a compatibility period, examples, test scaffolding, and a migration guide between versions.
-
Run a pilot on your real scenarios with cells, tables, charts, and shapes, in the chosen environment.