DPSSupported App Types

Supported App Types

DPS provisions, orchestrates, and tracks five distinct app types. Each has its own wizard, deployment pipeline, dashboard tabs, and Docker compose template.

Overview

App TypeAliasesDashboardServerDeployOverall
parse-server98%98%Docker + SSH + GitHub98%
sellub95%90%Docker92%
react-webweb, react-app75%70%Netlify / Vercel70%
react-nativemobile60%70%GitHub Actions / EAS65%
n8n10%90%SSH + Docker40%

parse-server (98%)

The flagship app type — an isolated Parse Server instance with its own MongoDB database.

  • 12 dashboard tabs: Overview, Platform, Releases, Credentials, Environment, Database, Cloud Functions, Browser, Metrics, Logs, Domain, Settings.
  • 30+ cloud functions for create / start / stop / restart / deploy / redeploy / credentials.
  • Full Docker pipeline: build → push → SSH deploy → Nginx → SSL.
  • GitHub OAuth: connect repo, trigger builds, webhooks.
  • Real Docker stats (dps_getAppMetrics), real mongodump/pg_dump backups.
  • Cloud Functions tab can list and run user functions via Docker exec + HTTP proxy.
  • Template: dps-templates-parse-server.
  • Remaining: LiveQuery-based real-time log streaming (today uses 3-second polling).

sellub (92%)

Vendure-based e-commerce server. Shares ~80% of its lifecycle code with parse-server via the consolidated createServerActions() / isServerApp patterns.

  • 10 dashboard tabs: Overview, Platform, Releases, Environment, Database, Browser, Metrics, Logs, Domain, Settings.
  • Standalone managers: SellubDashboardManager (737 lines), SellubStorefrontManager (1061 lines).
  • Server cloud functions: dps_deploySellubServer, dps_deploySellubDashboard, dps_deploySellubStorefront, plus start/stop/restart/getStatus.
  • Docker compose matches production template (env_file, postgres, redis, vendure-server, vendure-worker).
  • SECTION_OVERRIDES in ModularAppManager swap in SellubCredentialsSection and SellubDatabaseSection.
  • Remaining: no scaffold template repo yet, dashboard/storefront managers not yet integrated into ModularAppManager, order-webhook UI pending.
  • See Sellub on DPS for the full integration story.

react-web (70%)

Static / SSR frontend deployed to Netlify or Vercel. Aliases: web, react-app.

  • 8 dashboard tabs: Overview, Platform, Releases, Environment, Build, Logs, Domain, Settings.
  • 11 cloud functions for Netlify + Vercel deployments.
  • App-specific sections: DesignerSection, DataConnectorSection (conditional).
  • Templates: dps-templates-react-landing (full Next.js project) and dps-templates-react-nextjs (skeleton — only Dockerfile + README today).
  • Remaining: no instanceData prop passed to tabs, metrics still mock.

react-native (65%)

Expo-based mobile app published to TestFlight / Google Play / Firebase Distribution. Alias: mobile.

  • 6 dashboard tabs: Overview, Build, Releases, Publish, Logs, Settings.
  • 6 app-specific sections: MobileBuildSection, MobilePublishSection, TestFlightSection, GooglePlaySection, FirebaseDistributionSection, MobilePlatformSection.
  • 7 server files: AES-256-GCM credential encryption, EAS builds, GitHub Actions workflows, OTA updates, crash reporting.
  • Template: dps-templates-react-native (full Expo project with android/ and ios/).
  • Critical gap: tab-index mismatch — reactNativeSectionMap has 7 entries (0–6) but tab headers only define 6 tabs. settings: 6 may point to a non-existent tab.
  • No instanceData prop passed to tabs; missing from release registry.

n8n (40%)

Self-hosted n8n automation instance. Backend is fully wired; dashboard surface is missing.

  • Server backend: full cloud functions (create, start, stop, restart, list, details).
  • SSH-based Docker compose deployment with Nginx + SSL via Certbot.
  • Tier-based pricing (free / starter / professional / enterprise).
  • Docker compose: n8n + optional postgres + optional redis (env_file).
  • N8nInstanceManager component exists (1033 lines, standalone).
  • Critical gaps: no rendering path in page.tsx, no n8nSectionMap, no tab headers, missing from AppType union, N8nInstanceManager never imported.

Type aliases

These are functional aliases, not separate types:

AliasMaps toUsage
webreact-webDefault app type in createApp (40+ refs)
mobilereact-nativeMobile build pipeline, template mapping (30+ refs)
react-appreact-webUI rendering fallback

Removed ghost types

These were defined but had zero implementation; cleaned up Feb 2026:

TypeWas inStatus
wordpressnever in codealready clean
strapinever in codealready clean
custom (as AppType)domain.ts, app.ts schemaremoved
backenddomain.ts, template categoriesremoved from AppType (kept as template category)
infrastructuredomain.ts, seed dataremoved