Getting Started with Mirroment

Learn how to set up and start building with the Mirroment SaaS framework

Getting Started with Mirroment

Welcome to Mirroment! This guide will help you get up and running with the Mirroment SaaS framework in just a few minutes.

Prerequisites

Before you begin, make sure you have the following installed:

  • Node.js 22.x or later
  • pnpm 9.x or later
  • PostgreSQL 14.x or later
  • Docker (optional, for containerized development)

Installation

1. Clone the Repository

git clone https://github.com/yourusername/mirroment.git
cd mirroment

2. Install Dependencies

pnpm install

3. Set Up Environment Variables

Copy the example environment files and configure them:

# Copy environment files
cp apps/api/.env.example apps/api/.env
cp apps/web/.env.example apps/web/.env
cp apps/website/.env.example apps/website/.env

Edit the .env files with your database credentials and other configuration.

4. Set Up the Database

# Run database migrations
pnpm --filter @mirroment/api db:migrate
 
# (Optional) Seed the database
pnpm --filter @mirroment/api db:seed

5. Start Development Servers

# Start all services
pnpm dev
 
# Or start individual services
pnpm dev:api      # API server (port 3000)
pnpm dev:web      # Web app (port 5173)
pnpm dev:website  # Marketing site (port 3001)

Project Structure

Mirroment is organized as a monorepo with the following structure:

mirroment/
├── apps/
│   ├── api/        # NestJS backend API
│   ├── web/        # React frontend application
│   └── website/    # Next.js marketing website
├── packages/
│   ├── design-system/  # Shared UI components
│   └── types/          # Shared TypeScript types
└── infrastructure/     # Deployment configs

What's Included

Mirroment comes with everything you need to build a production-ready SaaS:

  • Authentication & Authorization - JWT-based auth with role-based access control
  • Database & ORM - PostgreSQL with Prisma ORM
  • API Documentation - Swagger/OpenAPI integration
  • UI Components - Production-ready design system
  • Type Safety - End-to-end TypeScript
  • Testing - Jest and Testing Library setup
  • CI/CD - GitHub Actions workflows
  • Docker - Production-ready containerization

Next Steps

Now that you have Mirroment running locally, here are some suggested next steps:

  1. Explore the API - Visit http://localhost:3000/api/docs to see the Swagger documentation
  2. Customize the Design - Check out the design system in packages/design-system
  3. Add Features - Start building your unique features on top of the foundation
  4. Deploy - Follow our deployment guide when you're ready to go to production

Getting Help

  • Documentation - Browse our full documentation
  • Issues - Report bugs on GitHub Issues
  • Discussions - Ask questions in GitHub Discussions

Happy building! 🚀