Avery.Software — Native Execution Runtime
RuntimeUse casesPricingHelpBlog
← Back to helpconcept · apps

What gets translated when you scaffold from a spreadsheet

3 min

Six spreadsheet-aware generators auto-inject. Here's what each one does + what shows up in the app.

When you attach a workbook, six generators auto-inject alongside the standard CRUD / dashboard / admin set:

1. spreadsheet-formula-generator (Phase 4b.3) Translates every cell formula into a TypeScript function. =SUM, =AVERAGE, =VLOOKUP, =IF, date arithmetic, string concatenation — all ported. Each sheet's formulas land in `lib/xl/<sheet>.ts`. The xl.* runtime is a small library that gives you the Excel function surface in TypeScript so the generated code reads naturally.

2. spreadsheet-chart-generator (Phase 4c.1 + 4c.2) Embedded charts (bar / line / pie / scatter) become DataChart React components. Each entity's route page (`app/(entity)/page.tsx`) renders the source workbook's chart for that sheet. The DataChart wrapper supports the same chart kinds the workbook had.

3. spreadsheet-validation-generator (Phase 4c.4) Excel's data-validation rules — dropdown lists, number ranges (">= 0", "< 100"), text length limits, date ranges — translate to Zod validators on the entity's create/update schemas. Form fields render with the right input type (select for dropdowns, number for ranges, etc.).

4. spreadsheet-sync-push-generator (Phase 4b.4.5) Adds an `app/api/sync/push/route.ts` endpoint that writes the app's current state back to the source .xlsx via exceljs. Called from the Database → Sync tab, but you can wire it to a button in the app too.

5. spreadsheet-sync-pull-generator (Phase 4b.4.6) Adds an `app/api/sync/pull/route.ts` endpoint that reads the source .xlsx + applies the diff to Prisma per a configured conflict policy (overwrite / keep-app / prompt). Same surface as push, opposite direction.

6. spreadsheet-vba-generator (Phase 4c.5) For each VBA module in the workbook, emits a TypeScript placeholder under `lib/vba/<module>.ts` with the original VBA as a header comment, scaffolded function signatures, and a per-feature translation guide pointing at the relevant TS / Next.js APIs.

These six are AUTOMATIC — you don't pick them. The wizard sees an attached .xlsx and includes them in the plan.


Live recipes need the desktop

This article is a static preview. The in-app Help sidecar inside Avery NXR can fire each step against your live project — install the desktop to use it interactively.

Download desktop →