A comprehensive platform for Magic PDX combining e-commerce, event ticketing, POS, CRM, email marketing, and content management.
# Install dependencies npm install # Set up environment variables cp apps/api/.env.example apps/api/.env cp apps/web/.env.example apps/web/.env # Set up database (requires PostgreSQL) cd packages/database npx prisma generate npx prisma db push # Run development servers npm run devmagic-pdx/ ├── apps/ │ ├── web/ # Next.js frontend (port 3000) │ └── api/ # Express backend (port 3001) ├── packages/ │ ├── ui/ # Shared UI components │ ├── database/ # Prisma schema and client │ ├── types/ # Shared TypeScript types │ └── utils/ # Shared utilities - Frontend: Next.js 14, React, Tailwind CSS, shadcn/ui
- Backend: Express.js, TypeScript
- Database: PostgreSQL, Prisma ORM
- Authentication: NextAuth.js
- Payment: Stripe
- Email: AWS SES
- File Storage: AWS S3
# Run all apps in development npm run dev # Build all apps npm run build # Run type checking npm run typecheck # Run linting npm run lint # Format code npm run formatcd packages/database # Generate Prisma client npm run db:generate # Push schema to database npm run db:push # Run migrations npm run db:migrate # Open Prisma Studio npm run db:studio- E-Commerce: Product management, shopping cart, order processing
- Event Ticketing: Event creation, ticket sales, QR validation
- Summer Camps: Registration, waivers, capacity management
- POS System: Mobile-first design, offline capability
- CRM: Customer profiles, loyalty points, analytics
- Email Marketing: Campaign builder, AWS SES integration
- Content Management: Drag-and-drop page builder
- Inventory: Stock tracking, Murphy's Magic integration
- Social Media: Multi-platform posting, engagement tracking
DATABASE_URL: PostgreSQL connection stringJWT_SECRET: JWT signing secretSTRIPE_SECRET_KEY: Stripe API keyAWS_ACCESS_KEY_ID: AWS credentialsAWS_SECRET_ACCESS_KEY: AWS credentialsMURPHYS_USERNAME: Murphy's Magic API usernameMURPHYS_PASSWORD: Murphy's Magic API password
NEXTAUTH_URL: Authentication callback URLNEXTAUTH_SECRET: NextAuth encryption secretNEXT_PUBLIC_API_URL: Backend API URL
Private - All rights reserved
For support, contact the Magic PDX development team.