← All templates

Presentation Builder

Creative Tools · React + Node (Express) · 20 @molecule/* packages

Google Slides-like presentation tool with slides, themes, animations, and export — with built-in Stripe-backed subscription tiers

Open in Molecule

What is inside

  • auth
  • slides
  • themes
  • animations
  • collaboration
  • export
  • subscriptions

Screens (13)

  • Landing /
  • Login /login
  • Signup /signup
  • ForgotPassword /forgot-password
  • ResetPassword /reset-password
  • Decks /decks (signed in)
  • Editor /decks/:id/edit (signed in)
  • Present /decks/:id/present (signed in)
  • Templates /templates (signed in)
  • Settings /settings (signed in)
  • Analytics /analytics (signed in)
  • Shared /shared (signed in)
  • Notifications /notifications (signed in)

Data model (9 tables)

  • devices — id, createdAt, updatedAt, userId, name, pushPlatform, pushSubscription, hasPushSubscription
  • presentation_exports — id, presentation_id, requested_by, format, status, download_url, error, created_at, …
  • presentation_shares — id, presentation_id, shared_with_user_id, email, role, accepted_at, created_at
  • presentation_themes — id, owner_id, name, colors, fonts, background_image, is_system, created_at
  • presentation_views — id, presentation_id, viewer_user_id, viewer_ip_hash, viewer_country, viewed_at
  • presentations — id, owner_id, title, description, theme_id, is_public, public_slug, slide_count, …
  • resource_tags — id, tagId, resourceType, resourceId, createdAt
  • slides — id, presentation_id, layout, content, speaker_notes, background, transition, position, …
  • tags — id, name, slug, color, description, createdAt, updatedAt

API (4 handlers)

  • exports api/src/handlers/exports.ts
  • presentations api/src/handlers/presentations.ts
  • slides api/src/handlers/slides.ts
  • themes api/src/handlers/themes.ts

Subscription tiers

free / pro / team — gated by: maxExports, maxPresentations, maxSlides, maxThemes, advancedFeatures, canExport, retentionDays

Built from 20 @molecule/* packages

Browse all @molecule/* packages →

Required secrets

  • DATABASE_URL PostgreSQL connection string
  • S3_BUCKET S3 bucket for asset storage

The @molecule/* packages are Apache-2.0. The app you build from this template is yours to export and self-host. Licensing