Skip to content
SumOfficeSumOfficeSumOffice

Installing SumSheet

Exactly what gets installed, how to download the build, verify the checksum, the signature, and notarization, and where to find the processor.

SumSheet is a spreadsheet editor. Inside the installed application is the Rust processor compute_contract_cli. It accepts JSON requests, holds the open workbook in the current process’s memory, and returns JSON responses.

Item Role Boundary
SumSheet.app The spreadsheet editor’s user interface A person opening and editing workbooks
compute_contract_cli The operations contract in the Rust core Open, read, edit, history, computation, and save
subsetId The identifier of an open workbook session Lives only inside a single command-line program process
sheetKey A stable sheet key Taken from activeSheet.path; never substitute the sheet’s name
viewport The viewport: only the visible part of the sheet goes outward The workbook never unfolds entirely into memory
result.xlsx The physical OOXML package The result of save_workbook_subset

The same core serves both the desktop app and an external integration process. The shell never has to implement its own semantics for formulas, history, or saving.

This is a process API, not an HTTP API. A browser can’t run a local binary directly. For a server or a web UI on top of it, you need a controlled service host; the scheme is on the Integrating into an application page.

  1. Open the release directory. In the browser, open dl.layers.md. The directory is laid out by system: the folders macos/, windows/, linux/, webhost/ (the web host image archive with INSTALL.mdthe server path) and sdk/ (the mobile viewer kit for Android and iOS with checksums, once it is released under this brand — Phone and tablet); the root holds only manifest.json with the version number and release notes.

  2. Choose the package for your system.

In the macos/ folder: a file like SumSheet-…-mac-arm64.zip for Apple Silicon computers and SumSheet-…-mac-x64.zip for Intel Macs.

  1. Download the checksum list. The folder you took the package from also holds SHA256SUMS — sha256 sums of all its files. The latest-*.yml files next to it serve the application auto-update and are not needed for manual verification.
Terminal window
mkdir -p ~/Downloads/f1-first-run
cd ~/Downloads/f1-first-run
base=https://dl.layers.md/sumoffice/sumsheet/release/latest/macos
curl -fsSLO $base/SHA256SUMS
# take the filename with the version number from the same list
curl -fLO $base/$(awk '/mac-arm64.zip$/ {print $2; exit}' SHA256SUMS)
Terminal window
cd ~/Downloads/f1-first-run
# SHA256SUMS was downloaded in the previous step from the macos/ folder
shasum -a 256 -c SHA256SUMS --ignore-missing

Expect the line SumSheet-…-mac-arm64.zip: OK.

Terminal window
cd ~/Downloads/f1-first-run
mkdir -p unpacked
ditto -x -k SumSheet-*-mac-*.zip unpacked
ditto unpacked/SumSheet.app ~/Applications/SumSheet.app
Terminal window
APP="$HOME/Applications/SumSheet.app"
codesign --verify --deep --strict --verbose=2 "$APP"
spctl -a -vv "$APP"

Expect a successful codesign check and the line accepted with Notarized Developer ID from spctl.

Expect a successful codesign check and the line accepted / Notarized Developer ID from spctl.

Terminal window
open ~/Applications/SumSheet.app

Open any XLSX workbook and confirm the grid is visible. After that, you can close SumSheet: the next section uses the built-in Rust processor directly.

Terminal window
F1_CLI="$HOME/Applications/SumSheet.app/Contents/Resources/runtime/native/compute_contract_cli"
file "$F1_CLI"
test -x "$F1_CLI" && echo "processor ready"

The processor is installed — from here there are four paths:

  • Confirm the API responds. Quick start: open a workbook, write a value and a formula, save the result.
  • Understand how the session works. How the API session works: transport, response contents, and handling refusals.
  • See the calls broken down. Requests from the example — exactly what’s sent at each step.
  • See finished code. Examples — twenty-three small projects, each shown in full.

If something won’t start — diagnostics.

Documentation assistant

Answers are assembled from the documentation and may be inaccurate — check the sources.