Interior Design Platform & CMS
A full-stack platform for interior design studios
Overview
DesignO is a comprehensive platform built for interior design studios to manage their entire workflow — from showcasing their portfolio to managing client projects, appointments, and content. The platform serves both as a public-facing marketing site and a powerful internal tool for studio operations.
The marketing website is fully bilingual (German and English) and includes a portfolio showcase, blog, product marketplace, appointment booking system, pricing pages, and more. All content is CMS-driven, allowing studio owners to update their site directly from the admin panel without touching code.
The admin dashboard provides a complete suite of tools: project management with task tracking, a visual moodboard designer, product catalog management, client database, appointment scheduling with availability rules, visitor analytics with bot detection, a full blog CMS, and a media library. The platform also integrates AI-powered features using the Anthropic SDK for automated product data extraction.
Key Features
Marketing Website
- Bilingual support (German & English) with locale-based routing
- Dynamic portfolio showcase with featured projects and moodboards
- Blog with CMS-managed posts
- Product marketplace for furniture and design items
- Online appointment booking with calendar integration
- Pricing plans and FAQ pages
- All content editable from the admin panel
Admin Dashboard
- Project management with phases, tasks, status tracking, and priorities
- Visual moodboard designer for room designs, style concepts, and product collections
- Product catalog with images, pricing, specifications, and availability
- Client management database
- Appointment scheduling with configurable availability rules
- Visitor analytics with event tracking and bot detection
- Blog post editor with rich text (Tiptap)
- Media library with folder organization
- Website CMS editor for live content updates
API & Backend
- RESTful API built with NestJS, organized into modular feature domains
- JWT-based authentication with OTP support
- AI-powered product extraction using the Anthropic SDK
- Transactional email notifications via Resend
- Image processing with Sharp
- Scheduled background tasks via cron jobs
- GDPR-compliant data handling
Tech Stack
Frontend
Backend
Database
DevOps
Architecture
The project is organized as a Turborepo monorepo with three applications and shared packages. The marketing website and admin dashboard are separate Next.js apps, while the backend is a unified NestJS API. A shared database package contains the Prisma schema and generated client, ensuring type-safe database access across the stack.
In production, all three services run as Docker containers orchestrated by Docker Compose on a Hetzner VPS. Caddy serves as the reverse proxy, handling automatic SSL certificates, security headers, and CORS. The CI/CD pipeline uses GitHub Actions to build Docker images, push them to GitHub Container Registry, and deploy via SSH — including automatic database migrations on each release.