π¬ Mac-based YouTube Faceless Video Generator
A comprehensive AI-powered video creation platform that enables content creators to generate professional-quality faceless YouTube videos using artificial intelligence for scripts, voiceovers, and visual content.
- Native OS Integration: Menu bar, system tray, keyboard shortcuts
- File System Operations: Drag & drop, native dialogs, local file management
- Offline Mode: Complete local project management and asset storage
- Responsive Design: Adaptive UI with light/dark/system themes
- Window Management: Native controls, fullscreen support, multi-window
- Performance Optimized: Lazy loading, efficient state management
- Advanced AI Providers: OpenAI DALL-E, Stability AI, Midjourney, Runway ML
- AI Transformations: Face swap, deepfake, object removal, upscaling
- Voice Synthesis: ElevenLabs, HeyGen integration with voice cloning
- Image Generation: Multiple AI providers with automatic selection
- Video Enhancement: Super-resolution, frame interpolation, style transfer
- Real-time Processing: WebSocket updates with queue management
- Multi-Input Support: YouTube-to-Video, Text-to-Video, Audio-to-Video
- AI Images-to-Video: Convert AI-generated images to video sequences
- Video-to-Video: Transform existing videos with AI effects
- Processing Pipeline: Orchestrated generation with cost tracking
- Queue System: BullMQ-based high-volume processing
- Export Options: Multiple formats and quality settings
- Payment System: Stripe integration with subscription management
- Licensing: Usage tracking and license validation
- Template System: Pre-built templates with customization
- User Management: Authentication, profiles, and permissions
- Admin Portal: Complete administrative interface
- Profile Management: Complete user profile with preferences and settings
- Cloud Synchronization: Real-time sync across all devices using Cloudflare R2
- Device Management: Multi-device registration and sync status tracking
- Project Sync: Automatic project synchronization with conflict resolution
- Settings Sync: User preferences synchronized across all platforms
- Storage Management: Usage monitoring, cleanup, and storage optimization
- Data Export/Import: Complete user data backup and restore capabilities
- Offline Support: Local storage with seamless online/offline transitions
- Timeline Editor: Professional multi-track timeline with drag-and-drop
- Clip Operations: Split, move, delete, duplicate, and trim clips with precision
- Effects Library: 20+ professional effects across visual, motion, audio, and text
- Transitions: Smooth transitions between clips with customizable parameters
- Real-time Preview: Live preview of all edits and effects
- Export System: Multiple format support with progress tracking
- Effect Categories:
- Visual Effects: Blur, Color Grading, Sharpen, Vignette, Film Grain, Glitch, Chromatic Aberration
- Motion Effects: Video Stabilization, Speed Ramping, Motion Blur
- Audio Effects: Volume Control, EQ, Reverb, Noise Reduction, Compressor
- Text Effects: Animations, Custom Styling, Font Management
WindowControls - Native window management
- macOS-style minimize, maximize, close buttons
- Proper event handling and window state management
- Cross-platform compatibility (macOS, Windows, Linux)
MenuBar - Application menu integration
- File, Edit, View, Help menus with keyboard shortcuts
- Recent files management and project operations
- Theme switching and view controls
- User account management
FileSystemIntegration - File operations
- Drag & drop file upload with validation
- Native file dialogs for import/export
- Progress tracking and error handling
- Support for multiple file types (video, audio, image)
GlobalShortcuts - Keyboard shortcuts
- Comprehensive shortcut system for productivity
- Timeline controls (play/pause, seek, split)
- File operations (new, open, save, export)
- Edit operations (undo, redo, copy, paste)
SystemTray - System tray integration
- Context menu with quick actions
- Real-time render progress updates
- Application show/hide functionality
- Status notifications and alerts
OfflineMode - Local storage capabilities
- SQLite-based project and asset storage
- Intelligent caching system for AI results
- Storage usage monitoring and cleanup
- Project import/export for backup
macOS Specific:
- Native menu bar integration
- System notifications with actions
- Spotlight integration
- Touch Bar support (when available)
Windows Specific:
- System tray with Windows notifications
- Jump list integration
- Windows Explorer integration
- Native file associations
Linux Specific:
- System tray (where supported)
- Native file dialogs with GTK
- Desktop file integration
- Package manager distribution
Performance Optimizations:
- Lazy loading of components and routes
- Efficient state management with context providers
- Background processing for AI operations
- Memory management and cleanup
Security Features:
- Sandboxed file system access
- Strict Content Security Policy (CSP)
- API allowlist for external communications
- Secure storage for user credentials
Hot Reload Development:
npm run tauri dev # Start development with hot reloadCross-Platform Building:
npm run tauri build # Build for current platformTesting:
npm test # Run component and integration testsEzVideoAI/
βββ apps/
β βββ creator/ # Tauri desktop application (React + TypeScript)
βββ services/
β βββ api/ # NestJS backend API
βββ packages/
β βββ shared/ # Shared types and utilities
βββ docker-compose.yml # Development environment
βββ nginx.conf # Production reverse proxy
Frontend (Desktop App)
- Framework: Tauri + React 19
- Styling: TailwindCSS + Radix UI
- State Management: Zustand
- Forms: React Hook Form + Zod validation
- TypeScript: Full type safety
Backend (API)
- Framework: NestJS (Node.js)
- Database: PostgreSQL with Prisma ORM
- Cache: Redis
- Authentication: JWT with Passport
- File Storage: Local/Cloud storage support
- Background Jobs: Bull Queue
External Services
- AI: OpenAI GPT-4 for script generation
- Voice: ElevenLabs for voice synthesis
- Media: Pexels, Pixabay, Unsplash APIs
- Payments: Stripe for subscriptions
- Video Processing: FFmpeg integration
- Node.js 18.0.0 or higher
- pnpm 9.0.0 or higher
- PostgreSQL 15+ (for database)
- Redis 7+ (for caching)
- Rust (for Tauri development)
-
Clone the repository
git clone https://github.com/your-username/ezvideo-ai.git cd ezvideo-ai -
Install dependencies
pnpm install
-
Set up environment variables
cp .env.example .env # Edit .env with your API keys and database credentials -
Set up the database
# Start PostgreSQL and Redis (using Docker) docker-compose up postgres redis -d # Run database migrations cd services/api pnpm prisma:migrate pnpm prisma:generate
-
Start development servers
# Start all services pnpm dev # Or start individual services pnpm dev:api # Backend API pnpm dev:creator # Desktop app
-
Build all services
pnpm build
-
Build desktop application
pnpm build:creator
-
Deploy with Docker
docker-compose up -d
The API documentation is automatically generated using Swagger/OpenAPI and is available at:
- Development:
http://localhost:3001/api/docs - Production:
https://your-domain.com/api/docs
Authentication
POST /api/auth/login- User loginPOST /api/auth/register- User registrationPOST /api/auth/refresh- Token refresh
AI Image Generation
POST /api/ai-image/generate- Generate AI imagesGET /api/ai-image/jobs/:jobId- Get generation job statusPOST /api/ai-image/upscale- Upscale existing images
Video Generation
POST /api/video-generation/youtube-to-video- Convert YouTube to videoPOST /api/video-generation/text-to-video- Generate video from textPOST /api/video-generation/audio-to-video- Create video from audioPOST /api/video-generation/ai-images-to-video- Convert AI images to videoGET /api/video-generation/jobs/:jobId- Get generation job status
AI Transformations
POST /api/transformations/face-swap- AI face swapPOST /api/transformations/deepfake- Deepfake video generationPOST /api/transformations/object-removal- Remove objects from videoPOST /api/transformations/background-replacement- Replace video background
Music & Audio
POST /api/music/generate- Generate AI musicPOST /api/music/voice-synthesis- Synthesize voicePOST /api/music/voice-clone- Clone voice from sample
Payments & Licensing
POST /api/payments/create-subscription- Create Stripe subscriptionGET /api/payments/billing-history- Get billing historyPOST /api/licensing/validate- Validate usage licenseGET /api/licensing/usage-stats- Get usage statistics
User Profile & Cloud Sync
GET /api/user-profile- Get user profile informationPUT /api/user-profile- Update user profilePOST /api/user-profile/preferences- Update user preferencesGET /api/user-profile/sync-status- Get cloud sync statusPOST /api/user-profile/sync- Trigger manual syncPOST /api/user-profile/devices- Register new deviceGET /api/user-profile/stats- Get user statisticsPOST /api/user-profile/export- Export user data
Advanced Video Editor
POST /api/video-editor/projects- Create new video projectGET /api/video-editor/projects/:id- Get video projectPUT /api/video-editor/projects/:id- Update video projectDELETE /api/video-editor/projects/:id- Delete video projectPOST /api/video-editor/projects/:id/clips- Add clip to timelinePUT /api/video-editor/clips/:id/move- Move clip on timelinePOST /api/video-editor/clips/:id/split- Split clipDELETE /api/video-editor/clips/:id- Delete clipPOST /api/video-editor/effects/apply- Apply effect to clipPOST /api/video-editor/transitions/add- Add transition between clipsGET /api/video-editor/effects- Get available effectsPOST /api/video-editor/export- Export video project
# Run all tests
pnpm test
# Run API tests
pnpm --filter @ezvideo/api test
# Run frontend tests
pnpm --filter @ezvideo/creator test
# Run tests with coverage
pnpm test:cov- Unit Tests: Component and service level tests
- Integration Tests: API endpoint testing
- E2E Tests: Full user workflow testing
-
Production build
docker-compose -f docker-compose.prod.yml up -d
-
Environment configuration
- Copy
.env.exampleto.env.prod - Configure production database and Redis URLs
- Set up SSL certificates in
./ssl/directory
- Copy
-
Server requirements
- Ubuntu 20.04+ or similar
- Node.js 18+, PostgreSQL 15+, Redis 7+
- Nginx (for reverse proxy)
-
Build and deploy
pnpm build # Copy built files to server # Configure systemd services
See .env.example for all available configuration options:
Required
DATABASE_URL- PostgreSQL connection stringREDIS_URL- Redis connection stringJWT_SECRET- JWT signing secretOPENAI_API_KEY- OpenAI API keyELEVENLABS_API_KEY- ElevenLabs API key
Optional
STRIPE_SECRET_KEY- Stripe paymentsPEXELS_API_KEY- Stock photosPIXABAY_API_KEY- Stock mediaUNSPLASH_ACCESS_KEY- Stock photos
Toggle features via environment variables:
ENABLE_SWAGGER- API documentationENABLE_RATE_LIMITING- Request rate limitingENABLE_ANALYTICS- Usage analytics
We welcome contributions! Please follow these steps:
- Fork the repository
- Create a feature branch
git checkout -b feature/amazing-feature
- Make your changes
- Follow the code style guidelines
- Add tests for new functionality
- Update documentation as needed
- Commit your changes
git commit -m 'Add some amazing feature' - Push to your branch
git push origin feature/amazing-feature
- Open a Pull Request
- TypeScript: Strict mode enabled
- Formatting: Prettier with 2-space indentation
- Linting: ESLint with recommended rules
- Commits: Conventional commit format
This project is licensed under the MIT License - see the LICENSE file for details.
- Documentation: Wiki
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Email: support@ezvideo.ai
- β Desktop Application Frontend - Complete native desktop UI with Tauri
- β Advanced AI Features - Multi-provider AI integration with transformations
- β Payment & Licensing System - Stripe integration with subscription management
- β Template & Preset System - Pre-built templates with customization
- β Admin Portal Frontend - Complete administrative interface
- β Video Generation Pipeline - Multi-input video generation with AI enhancement
- β Real-time Processing - WebSocket integration with queue management
- β Offline Mode - Local storage and project management capabilities
- β User Profile & Cloud Sync - 100% complete (JUST COMPLETED)
- β Advanced Video Editing Features - 100% complete (JUST COMPLETED)
- π Additional Integrations - Social media and third-party services
- π Mobile Application - iOS/Android companion app
- π Team Collaboration - Multi-user workspace management
- π Advanced Analytics Dashboard - Performance tracking and insights
- π Plugin System - Third-party plugin architecture
- π Marketplace Integration - Template and asset marketplace
- π Multi-language Support - Internationalization
- π Enterprise Features - SSO, audit logs, compliance
- π API Marketplace - Public API for third-party integrations
- Frontend: 100% complete (Desktop Application)
- Backend Services: 100% complete (Core AI features)
- Infrastructure: 100% complete (Database, queues, WebSocket)
- Documentation: 100% complete (Technical and user guides)
- Testing: Ready for integration testing
- Deployment: Ready for production deployment
- OpenAI for GPT models
- ElevenLabs for voice synthesis
- Tauri for desktop app framework
- NestJS for backend framework
- All contributors who help improve this project
Made with β€οΈ for content creators worldwide