⚠️ Work in progress. Frappe Suite is the consolidation of seven standalone Frappe apps into a single installable app with one unified frontend. The merge is functional but still being verified and hardened — expect rough edges, and don't treat it as production-ready yet.
Frappe Suite merges what used to be seven separate apps — Drive, Slides, Writer, Sheets, Meet, Mail, and Calendar — into one Frappe app with:
- One backend app (
suite) — each former app now lives as a module undersuite/<module>/, with a single consolidatedhooks.py,modules.txt,patches.txt, andpyproject.toml. - One frontend SPA — a single Vite + Vue 3 + frappe-ui
app (
frontend/) that serves every product under its own route prefix (/drive,/slides,/writer,/sheets,/meet,/mail,/calendar), with a launcher at/suite. Each app's UI lives underfrontend/src/apps/<app>/. - Preserved history — every original app's git history is grafted in, so
git log --follow/git blameon a file underfrontend/src/apps/<app>/(orsuite/<module>/) still reaches its original authors.
The migration is tracked phase-by-phase in monorepo.md:
- Phases 0–5 (backend relocation → site cutover → frontend unification): done.
- Phase 6 (cutover verification): in progress — most apps verified at runtime;
remaining items and known issues are listed in
monorepo.md. - Phase 7 (CI / docs consolidation, release): not started.
# Backend lives in this app; the frontend is a single SPA under frontend/.
cd frontend
yarn install
yarn build # build the whole suite SPA (gate: exits 0)
# or, via bench, from the bench root:
bench build --app suiteWorking on a specific app's UI? Start with
frontend/src/apps/README.md (unified-SPA
architecture + conventions) and the per-app frontend/src/apps/<app>/PORT-NOTES.md
(what changed, known issues, verify checklist).
To be finalized as part of the consolidation. The merged apps shipped under their own licenses — refer to each upstream app in the meantime.
