#!/usr/bin/env node // Development startup script for PayloadCMS Mailing Plugin // This ensures proper environment setup and provides helpful information console.log('šŸš€ PayloadCMS Mailing Plugin - Development Mode') console.log('=' .repeat(50)) // Set development environment process.env.NODE_ENV = process.env.NODE_ENV || 'development' // Enable in-memory MongoDB by default for development if (!process.env.DATABASE_URI) { process.env.USE_MEMORY_DB = 'true' console.log('šŸ“¦ Using in-memory MongoDB (no installation required)') } else { console.log(`šŸ”— Using external MongoDB: ${process.env.DATABASE_URI}`) } console.log('') console.log('šŸ”§ Starting development server...') console.log('šŸ“§ Mailing plugin configured with test transport') console.log('šŸŽÆ Test interface will be available at: /mailing-test') console.log('') // Import and start Next.js import('next/dist/cli/next-dev.js') .then(({ nextDev }) => { nextDev([]) }) .catch((error) => { console.error('āŒ Failed to start development server:', error) process.exit(1) }) // Handle graceful shutdown process.on('SIGTERM', () => { console.log('\nšŸ›‘ Shutting down development server...') process.exit(0) }) process.on('SIGINT', () => { console.log('\nšŸ›‘ Shutting down development server...') process.exit(0) })