A comprehensive, production-ready Software as a Service (SAAS) platform for managing Evolution API instances with a modern, animated UI and full API functionality.
- Instance Management: Create, manage, and monitor multiple WhatsApp instances
- Message Management: Send text messages, media files, and template messages
- Webhook Management: Configure and manage webhooks for real-time events
- User Authentication: Secure user registration, login, and profile management
- Subscription Management: Multiple pricing tiers with usage tracking
- Real-time Updates: Socket.IO integration for live updates
- Modern Design: Clean, responsive interface with Tailwind CSS
- Smooth Animations: Framer Motion animations throughout the application
- Interactive Components: Custom UI components with hover effects and transitions
- Mobile Responsive: Optimized for all device sizes
- Dark/Light Mode Ready: Prepared for theme switching
- TypeScript: Full type safety across frontend and backend
- API Integration: Complete Evolution API integration
- Real-time Communication: Socket.IO for live updates
- Form Validation: Zod schema validation
- Error Handling: Comprehensive error handling and user feedback
- Security: JWT authentication, rate limiting, and input validation
- Next.js 14: React framework with App Router
- TypeScript: Type-safe development
- Tailwind CSS: Utility-first CSS framework
- Framer Motion: Animation library
- React Hook Form: Form management
- Zod: Schema validation
- Axios: HTTP client
- Lucide React: Icon library
- Node.js: JavaScript runtime
- Express.js: Web framework
- TypeScript: Type-safe development
- MongoDB: Database with Mongoose ODM
- Socket.IO: Real-time communication
- JWT: Authentication
- bcryptjs: Password hashing
- Express Rate Limit: Rate limiting
- Helmet: Security headers
- Node.js 18+
- MongoDB
- Evolution API server running (https://evo.wcpilot.me/)
-
Clone the repository
git clone <repository-url> cd evolution-api-saas
-
Install dependencies
npm run install:all
-
Set up environment variables
# Backend cp backend/.env.example backend/.env # Edit backend/.env with your configuration # Frontend cp frontend/.env.local.example frontend/.env.local # Edit frontend/.env.local with your configuration
-
Start the development servers
npm run dev
This will start both frontend (http://localhost:3000) and backend (http://localhost:5000) servers.
# Server Configuration
PORT=5000
NODE_ENV=development
# Database
MONGODB_URI=mongodb://localhost:27017/evolution-api-saas
# JWT
JWT_SECRET=your-super-secret-jwt-key
JWT_EXPIRE=7d
# Evolution API
EVOLUTION_API_URL=https://evo.wcpilot.me
EVOLUTION_API_KEY=your-evolution-api-key
# Frontend URL
FRONTEND_URL=http://localhost:3000NEXT_PUBLIC_API_URL=http://localhost:5000/api
NEXT_PUBLIC_APP_NAME=Evolution API SAAS
NEXT_PUBLIC_APP_URL=http://localhost:3000- Register a new account at
/auth/register - Sign in at
/auth/login - Access the dashboard at
/dashboard
- Create new WhatsApp instances
- Connect instances using QR codes
- Monitor instance status
- Update instance settings
- Send text messages to phone numbers
- Send media files (images, videos, documents)
- Send template messages
- View message history
- Configure webhook endpoints
- Select events to monitor
- Test webhook connections
- View current plan and usage
- Upgrade/downgrade plans
- Manage payment methods
- View billing history
evolution-api-saas/
โโโ frontend/ # Next.js frontend application
โ โโโ src/
โ โ โโโ app/ # App Router pages
โ โ โโโ components/ # Reusable UI components
โ โ โโโ contexts/ # React contexts
โ โ โโโ lib/ # Utilities and API client
โ โ โโโ types/ # TypeScript type definitions
โ โโโ package.json
โโโ backend/ # Node.js backend application
โ โโโ src/
โ โ โโโ controllers/ # Route controllers
โ โ โโโ middleware/ # Express middleware
โ โ โโโ models/ # MongoDB models
โ โ โโโ routes/ # API routes
โ โ โโโ services/ # Business logic services
โ โ โโโ utils/ # Utility functions
โ โโโ package.json
โโโ package.json # Root package.json with scripts
POST /api/auth/register- User registrationPOST /api/auth/login- User loginGET /api/auth/me- Get current userPOST /api/auth/forgot-password- Password reset requestPUT /api/auth/reset-password- Password reset
POST /api/instances- Create new instanceGET /api/instances- Get all instancesGET /api/instances/:name- Get specific instanceGET /api/instances/:name/qr- Get QR codePUT /api/instances/:name- Update instanceDELETE /api/instances/:name- Delete instance
POST /api/messages/send-text- Send text messagePOST /api/messages/send-media- Send media messagePOST /api/messages/send-template- Send template messageGET /api/messages/:instance/chats- Get chatsGET /api/messages/:instance/chat/:jid- Get messages
POST /api/webhooks/:instance- Set webhookGET /api/webhooks/:instance- Get webhookDELETE /api/webhooks/:instance- Delete webhook
GET /api/billing/plans- Get available plansGET /api/billing/subscription- Get current subscriptionPUT /api/billing/subscription- Update subscriptionPOST /api/billing/create-checkout-session- Create checkout session
npm run build
npm start# Build and run with Docker Compose
docker-compose up -d- Set
NODE_ENV=production - Use a production MongoDB instance
- Configure proper JWT secrets
- Set up SSL certificates
- Configure production Evolution API URL
- JWT Authentication: Secure token-based authentication
- Password Hashing: bcryptjs for password security
- Rate Limiting: Prevent API abuse
- Input Validation: Comprehensive input validation
- CORS Configuration: Proper cross-origin resource sharing
- Helmet Security: Security headers
- Environment Variables: Sensitive data protection
- 1 WhatsApp instance
- 100 messages/month
- Basic support
- Standard templates
- 3 WhatsApp instances
- 1,000 messages/month
- Priority support
- Custom templates
- Webhooks
- 10 WhatsApp instances
- 10,000 messages/month
- 24/7 support
- Advanced templates
- Advanced analytics
- 50 WhatsApp instances
- 100,000 messages/month
- Dedicated support
- Custom integrations
- Custom branding
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
This project is licensed under the MIT License.
For support and questions:
- Check the documentation
- Create an issue on GitHub
- Contact the development team
- Advanced analytics dashboard
- Template message builder
- Bulk message sending
- Contact management
- Group management
- Multi-language support
- Mobile app
- API rate limiting per user
- Advanced webhook filtering
- Message scheduling
- Automated responses
- Integration marketplace
Built with โค๏ธ using modern web technologies for professional WhatsApp API management.