This repository has been archived on 2026-10-29. You can view files and clone it, but you cannot make any changes to its state, such as pushing and creating new issues, pull requests or comments.
EveElectron/README.md

44 lines
2.1 KiB
Markdown
Raw Permalink Normal View History

# EveElectron
EveElectron is the generic Electron lowering runtime for Eve/CultUI surfaces.
It owns secure window construction, the narrow provider preload bridge, shell
projection, command-intent emission, runtime packaging, and capture evidence.
Providers supply advertisements, surface and embedded-document reads, command
submission, asset resolution, and any product daemon lifecycle. EveElectron
does not import provider state or plugin semantic implementations.
2026-07-10 12:38:47 +01:00
`EveCultMeshProviderClient` takes an Odin-resolved peer target and advertisement
record reference, then follows only provider-published references for surfaces,
commands, receipts, and embedded documents. CultMesh and MessagePack are
constructor dependencies supplied from the application's installed CultLib
packages; the runtime owns protocol flow without pinning a sibling checkout.
Electron hosts that use the standard Eve IPC channels can point their
`BrowserWindow` preload directly at `src/eve-provider-preload-entry.cjs`. The
entry exposes only `window.eveProvider`; provider-specific APIs do not share the
renderer boundary.
2026-07-10 13:47:42 +01:00
`startEveElectronProviderHost` owns the main-process runtime lifecycle: secure
window construction, generic provider client creation, Eve IPC registration,
receipt reconciliation, provider readiness, renderer loading, and cleanup.
Provider repos supply a resolved target, dependencies, renderer path, and any
provider-owned daemon development or asset hooks.
2026-07-10 13:55:06 +01:00
CultMesh-native asset references lower through the runtime-owned
`eve-asset://` protocol. The generic provider client reads
`gamecult.cultmesh.cdn.asset_blob.v1` records; provider repos publish bytes and
retain asset truth without implementing an Electron protocol.
```powershell
npm install
npm test
npm run pack:check
npm run capture:conformance
```
The capture runner uses EveElectron's development Electron dependency and emits
native offscreen-painted PNGs plus `gamecult.eve.runtime_witness.v1` documents.
The generic control comes from Eve; the Aetheria case comes from Aetheria's
provider-owned conformance pack. Provider state remains input data; the runtime
owns the window, projection, pixels, and evidence.