Your Big Tech exit kit.
My Own Suite packages proven self-hosted apps into one setup with a guided first-run flow, a shared dashboard, and deployment paths that let people start simple and move toward more independence over time.
Today the repository is centered on a documented Docker Compose stack, a maintained VPS/local path, and a Railway template path for the easiest hosted start.
- A private cloud you control instead of a consumer SaaS ecosystem that controls you
- A guided Suite Manager onboarding flow instead of a pile of disconnected containers
- A Homepage dashboard that makes the suite feel like one product
- Curated open-source apps for files, office work, photos, passwords, calendars, and PDFs
- Multiple deployment paths so you can start with convenience and move toward more ownership later
Most people stay inside Google, Apple, and Microsoft because those tools are convenient, connected, and available everywhere. My Own Suite is built for people who want that same kind of everyday usefulness without handing over the app layer, the ecosystem, and the long-term ownership boundary.
This project is for:
- individuals and families who want a more private cloud setup
- freelancers and creators who do not want their work folded into platform lock-in
- people who want open-source alternatives without assembling the whole stack by hand
- technical users who want a cleaner starting point for a self-hosted personal cloud
The public docs are organized around three ways to get started:
- Deploy on Railway: the easiest hosted starting point
- Deploy on a VPS: the current maintained self-managed path in this repo
- Deploy on your own hardware: the most independent path, still earlier in maturity
If you are new to the project and want the smoothest first experience, start with How to get started.
If you want to run the current repo-managed Docker Compose stack locally or on a VPS:
git clone https://github.com/rpuls/my-own-suite.git
cd my-own-suite
npm run vps:initvps:init now auto-generates required secrets from template expressions in *.env.template.
You can still customize values in deploy/vps/**/*.env before startup.
Then validate and start:
npm run vps:doctor
npm run vps:upIf you need a full destructive reset (removes volumes and data):
npm run vps:rebuildAfter startup, open http://suite-manager.localhost/setup/ and continue through the guided onboarding flow.
For the exact operational details, use deploy/vps/README.md as the canonical technical guide for the VPS/local stack.
The repo includes black-box Playwright coverage that boots the real stack, walks the live onboarding flow, and verifies app reachability through Homepage.
Common commands:
npm run e2e:installnpm run e2e:onboardingnpm run e2e:appsnpm run e2e:full
The repo includes real black-box Playwright tests that boot an isolated Docker stack, exercise the live browser flows, and tear the stack down again after the run.
npm run e2e:installInstall the Playwright test dependencies and Chromium browser once on your machine.
Command overview:
npm run e2e:onboardingverifies the first-run onboarding flow itself.npm run e2e:appsverifies the suite after onboarding, focusing on Homepage-driven app access and app reachability.npm run e2e:fullruns both in one E2E stack lifecycle: onboarding first, then app verification.npm run e2e:onboarding:manualcompletes onboarding and then leaves the browser open on Homepage for manual testing.
npm run e2e:full
npm run e2e:full:headedRun the full E2E suite. This starts the isolated test stack once, runs the onboarding spec, then runs the app verification spec against that same stack. Use e2e:full for headless CI-style verification or e2e:full:headed when you want to watch the whole flow in the browser.
npm run e2e:onboarding
npm run e2e:onboarding:headed
npm run e2e:onboarding:manualRun just the onboarding flow. Use :headed when you want to watch the browser step through account creation, credential import, and Homepage handoff. Use :manual when you want the flow to finish and then leave the browser open on Homepage for hands-on testing.
npm run e2e:apps
npm run e2e:apps:headedRun the post-onboarding app verification flow. This focuses on Homepage-driven app checks for Suite Manager, Vaultwarden, Seafile, Stirling PDF, Immich, and Radicale. When needed, the helper will first bring the suite into a usable post-onboarding state before asserting the app surfaces.
For the more detailed harness notes, see tests/e2e/README.md.
| Need | Go here |
|---|---|
| Product story + public docs | myownsuite.org |
| Getting started guide | Docs home |
| Deployment overview | site/src/content/docs/getting-started.mdx |
| Canonical VPS architecture + app onboarding steps | deploy/vps/README.md |
| App code + app-level technical READMEs | apps/ |
| Deployment stacks | deploy/ |
| Homepage service details | apps/homepage/README.md |
| Suite Manager service details | apps/suite-manager/README.md |
| Seafile service details | apps/seafile/README.md |
| ONLYOFFICE service details | apps/onlyoffice/README.md |
| Immich service details | apps/immich/README.md |
| Radicale service details | apps/radicale/README.md |
| Stirling PDF service details | apps/stirling-pdf/README.md |
| Vaultwarden service details | apps/vaultwarden/README.md |
For app integration work (especially "add a new app"), treat deploy/vps/README.md as the canonical step-by-step architecture guide.
For day-to-day prototyping, use staging as the integration branch and reserve main for stable release-ready batches.


