Skip to content

Latest commit

 

History

History
40 lines (25 loc) · 2.23 KB

File metadata and controls

40 lines (25 loc) · 2.23 KB

Architecture

LocalStudio.dev is a browser-only React workspace with a landing app, an editor app, and shared brand tokens.

Workspace

  • apps/landing serves the public product page at /.
  • apps/editor serves the editor at /editor/.
  • packages/brand contains shared CSS and design tokens.
  • dist/ is generated by npm run build and is not committed.

Runtime Boundaries

The editor keeps product state in serializable domain objects under apps/editor/src/domain. React UI and view-model orchestration live under apps/editor/src/ui. Browser integrations live under apps/editor/src/services.

PowerPoint (.pptx) Import

PowerPoint (.pptx) import is an editor service flow. The browser reads the selected package, parses supported slide content, maps it into the same serializable project document used by generated and hand-edited decks, and then returns the user to the normal editor surface. Google Slides and Keynote decks should be exported as .pptx before import.

Local-First Storage

Projects are saved through the browser File System Access API. The app writes project metadata and assets to a user-selected folder. Model weights and browser AI caches stay in browser-managed storage, not in the project folder.

S3-Compatible Project Mirrors

LocalStudio can mirror local projects to S3-compatible storage so assets and public-share payloads are reachable outside the local folder. MinIO is the development and self-hosted example, while the same endpoint, bucket, region, public base URL, and prefix settings can point at AWS S3, Cloudflare R2, or another compatible service. The editable source of truth still starts as the local project folder; the mirror carries project JSON, assets, history, config, and share payloads needed for public links and remote reimport.

Browser AI

LocalStudio.dev uses Chrome built-in AI APIs when available and WebGPU/Hugging Face model paths for local browser execution. Some flows require Chrome experimental features, WebGPU support, and enough local disk space for model caches.

Build Output

The production build places the landing app at the site root and the editor under /editor/. GitHub Pages builds can set LOCALSTUDIO_BASE_PATH so assets work from a project Pages subpath.