System Requirements
Hardware, software, and network requirements for running MegaVault in different environments.
Table of Contents
Overview
MegaVault is designed to be lightweight and efficient, but specific requirements depend on your usage patterns, number of users, and storage needs. This guide outlines minimum and recommended specifications for different deployment scenarios.
Small Team
Up to 10 users, light usage
- 2 CPU cores
- 4 GB RAM
- 20 GB storage
- 100 Mbps bandwidth
Medium Business
Up to 50 users, moderate usage
- 4 CPU cores
- 8 GB RAM
- 50 GB storage
- 500 Mbps bandwidth
Enterprise
100+ users, heavy usage
- 8+ CPU cores
- 16+ GB RAM
- 100+ GB storage
- 1+ Gbps bandwidth
Hardware Requirements
Minimum Requirements
Processor
- CPU: 2 cores minimum
- Architecture: x86_64 (AMD64)
- Clock Speed: 2.0 GHz or higher
- Support: ARM64 supported
Memory
- RAM: 4 GB minimum
- Recommended: 8 GB or more
- Swap: 2 GB recommended
- Type: DDR3/DDR4/DDR5
Storage Requirements
Local Storage
- OS & Application: 20 GB minimum
- Logs & Cache: 10 GB recommended
- Temporary Files: 5 GB
- Total: 35 GB minimum
External Storage
- S3-Compatible: Required
- Capacity: Based on usage
- Performance: Standard tier sufficient
- Backup: Versioning recommended
💡
Performance Scaling
MegaVault automatically scales based on available resources. More CPU cores and RAM will improve performance for concurrent users and large file operations.
Software Requirements
Operating System Support
| Operating System | Minimum Version | Recommended | Notes |
|---|---|---|---|
| Ubuntu Linux | 20.04 LTS | 22.04 LTS | Most tested platform |
| Debian | 11 (Bullseye) | 12 (Bookworm) | Excellent stability |
| CentOS/RHEL | 8 | 9 | Enterprise environments |
| Windows Server | 2019 | 2022 | Docker Desktop required |
| macOS | 10.15 Catalina | 13.0 Ventura | Development only |
Runtime Dependencies
Node.js Environment
- Node.js: 18.0+ (LTS recommended)
- npm: 9.0+ or Yarn 1.22+
- Architecture: x64, ARM64
- TLS: 1.2+ support required
Container Runtime
- Docker: 20.10+ recommended
- Docker Compose: 2.0+
- Alternative: Podman supported
- Registry: Docker Hub access
Database & Storage Services
- Redis: 6.0+ (Upstash Redis recommended)
- S3 Storage: AWS S3, Cloudflare R2, MinIO, or compatible
- SSL/TLS: Required for production deployments
Network Requirements
Bandwidth Requirements
Light Usage
- Users: 1-10
- Minimum: 50 Mbps
- Recommended: 100 Mbps
- Latency: <100ms
Medium Usage
- Users: 10-50
- Minimum: 200 Mbps
- Recommended: 500 Mbps
- Latency: <50ms
Heavy Usage
- Users: 50+
- Minimum: 500 Mbps
- Recommended: 1+ Gbps
- Latency: <20ms
Network Ports
| Port | Protocol | Purpose | Access |
|---|---|---|---|
| 3001 | HTTP/HTTPS | Web interface and API | Public |
| 6379 | TCP | Redis database (if local) | Internal |
| 443 | HTTPS | S3 storage connections | Outbound |
⚠️
Firewall Configuration
Ensure port 3001 is accessible for web traffic. Configure your firewall to allow inbound connections on this port. For production, use a reverse proxy with HTTPS.
Browser Support
MegaVault web interface supports modern browsers with ES2020+ JavaScript support.
Supported Browsers
Desktop Browsers
- ✅ Chrome 90+ (recommended)
- ✅ Firefox 88+
- ✅ Safari 14+
- ✅ Edge 90+
- ❌ Internet Explorer (not supported)
Mobile Browsers
- ✅ Chrome Mobile 90+
- ✅ Safari iOS 14+
- ✅ Firefox Mobile 88+
- ✅ Samsung Internet 14+
- ✅ Opera Mobile 64+
Required Browser Features
- JavaScript: ES2020+ support required
- WebSockets: For real-time updates
- File API: For drag-and-drop uploads
- LocalStorage: For client-side caching
- Fetch API: For modern HTTP requests
Mobile Requirements
The MegaVault Flutter mobile app has specific requirements for iOS and Android devices.
iOS Requirements
- iOS Version: 12.0+
- Architecture: arm64
- Storage: 100 MB free space
- RAM: 2 GB minimum
- Network: Wi-Fi or cellular
Android Requirements
- Android Version: 6.0+ (API 23)
- Architecture: arm64-v8a, armeabi-v7a
- Storage: 100 MB free space
- RAM: 2 GB minimum
- Network: Wi-Fi or mobile data
Mobile Features & Permissions
- Storage Access: Required for file uploads
- Camera Access: For photo/video uploads
- Network Access: For API communication
- Background Processing: For upload continuity
- Push Notifications: For upload status (optional)
Deployment Platforms
MegaVault can be deployed on various cloud and on-premises platforms.
Recommended Cloud Platforms
DigitalOcean
- ✅ Docker droplets
- ✅ Managed databases
- ✅ Spaces object storage
- ✅ Load balancers
AWS
- ✅ EC2 instances
- ✅ ElastiCache Redis
- ✅ S3 storage
- ✅ Application Load Balancer
Google Cloud
- ✅ Compute Engine
- ✅ Cloud Memorystore
- ✅ Cloud Storage
- ✅ Cloud Load Balancing
Hetzner
- ✅ Cloud servers
- ✅ Cost-effective
- ✅ European data centers
- ✅ Good performance
Linode
- ✅ Virtual machines
- ✅ Object storage
- ✅ Load balancers
- ✅ Developer-friendly
Self-Hosted
- ✅ Complete control
- ✅ Cost-effective
- ✅ Data sovereignty
- ⚠️ Requires expertise
💡
Platform Selection
Choose your deployment platform based on your geographic location, compliance requirements, budget, and technical expertise. All platforms support Docker deployment.