Developer Guide
Never written a line of code? That's fine. Describe the app you want in plain words — an AI assistant does the technical steps and builds it, right inside engineX. This guide walks you through it, word by word.
Part 1 · Understand it
engineX is built on one idea: a shared shell + independent apps. The shell handles everything apps need, without exception — login, menus, a unified layout. You never rebuild that each time; you build only your app — HR, Marketing, Inspections — and it snaps onto the shell as an independent add-on, added or changed without affecting anything around it.
Building an app means three things: (1) create the app's folder, (2) plug it into the shell so its pages open, and (3) register it so it appears in the sidebar. Miss one and it won't show up. This guide does all three.
Part 2 · Before you start
You install these five things one time. Take it slowly — each is a normal installer.
npm install -g pnpm
Claude Code is an AI assistant that works inside the project and writes code for you. You type what you want in plain English or Arabic; it does the technical steps. To make it reliable, we've packaged the exact recipe as a “skill”.
Paste any of these into Claude Code and change the details to fit your app.
Create a new engineX product app. Slug: "library", name "Library" (Arabic "المكتبة"), category operations, icon BookOpen. It lets staff track books and who borrowed them. Do the full install flow: scaffold with create-app.sh, fill the bilingual manifest, wire it with install-app.js, register it in the database, add force-dynamic to the re-exports, and confirm it runs at http://localhost:3000/library and shows in the sidebar.
Add a page to my "library" app at /library/overdue that lists overdue books. Make it bilingual (Arabic + English), use PageHeader and Card from @platform/ui, and wire the client-shell re-export with force-dynamic.
Give my "library" app a database model and API so books are saved: fields title, author, borrowedBy, dueDate. Make it org-scoped with requireOrgContext, add an additive migration, and give me a simple form to add a book.
I ran the app and got this error: <paste the full error here>. Explain in simple terms what's wrong and fix it.
Check my "library" app: make sure every visible text has an Arabic translation and the layout looks correct in Arabic (right-to-left). Fix anything that's English-only or uses left/right instead of start/end.
Walk me through deploying my "library" app to the stage environment, step by step, and tell me how to check it worked.
Want to understand each command? Here's the same result, done yourself.
bash scripts/create-app.sh
node scripts/install-app.js <your-slug>
pnpm --filter @platform/db exec tsx prisma/install-all-apps.ts
pnpm --filter @platform/client dev # then open http://localhost:3000/<your-slug>
Part 4 · Going further
Glossary
Download the skill, open Claude Code, and describe your idea. You'll have a working app in minutes.
Download the skill