Quick Start Guide
Get MegaVault up and running in minutes. This guide will take you from zero to uploading your first file.
Table of Contents
Quick Start Overview
This quick start guide will get you up and running with MegaVault in under 10 minutes. We'll cover the essential setup steps and get you uploading files right away.
🐳 Docker Support Coming Soon
Docker and Docker Compose support is currently being designed and will be available in a future release. For now, please use the manual installation method below.
⏱️ 5 Minutes
Basic setup and configuration
- ✅ Download and install
- ✅ Configure environment
- ✅ Start the application
- ✅ Create your account
📱 Mobile Ready
Get the mobile app working
- ✅ Download mobile app
- ✅ Connect to your instance
- ✅ Sync your first files
- ✅ Enable background uploads
🚀 Production Ready
Scale when you're ready
- ✅ HTTPS configuration
- ✅ Database optimization
- ✅ Performance tuning
- ✅ Backup strategies
What You'll Need
- A computer with Docker installed (recommended) or Node.js 18+
- A Cloudflare R2 account or other S3-compatible storage
- A Redis database (Upstash offers a free tier)
- About 10 minutes of your time
Prerequisites
Before diving into the setup, let's ensure you have everything needed for a smooth installation.
Required Services
Cloud Storage (S3-Compatible)
- Cloudflare R2: Recommended, cost-effective
- AWS S3: Enterprise-grade, widely supported
- DigitalOcean Spaces: Developer-friendly
- MinIO: Self-hosted option
Redis Database
- Upstash: Serverless Redis, free tier available
- Redis Cloud: Managed Redis service
- Local Redis: Self-hosted for development
- AWS ElastiCache: AWS managed Redis
Development Environment
| Requirement | Minimum Version | Recommended | Installation |
|---|---|---|---|
| Docker | 20.10 | 24.0+ | Get Docker |
| Node.js | 18.0 | 20.0+ LTS | Get Node.js |
| Git | 2.0 | Latest | Get Git |
Account Setup
- Cloudflare Account: Sign up at cloudflare.com
- Create R2 Bucket: Go to R2 Object Storage and create a new bucket
- Generate API Tokens: Create API tokens with R2 permissions
- Redis Database: Set up a Redis instance (Upstash recommended for beginners)
5-Minute Setup
Follow these steps to get MegaVault running quickly. This setup will get you a working instance that you can start using immediately.
Download MegaVault
Get MegaVault from the official repository.
git clone https://github.com/iotserver24/S3-MegaVault.git
cd S3-MegaVault
npm installConfigure Environment
Set up your environment variables for cloud storage and Redis.
# Copy the environment template
cp .env.example .env.local
# Edit the configuration file (use your preferred editor)
nano .env.local
# Required settings:
NEXTAUTH_SECRET=your-secret-key-here
REDIS_URL=your-redis-connection-string
R2_ACCOUNT_ID=your-cloudflare-account-id
R2_ACCESS_KEY_ID=your-access-key
R2_SECRET_ACCESS_KEY=your-secret-key
R2_BUCKET_NAME=your-bucket-nameConfigure CORS (Required for Large Files)
Set up CORS on your storage bucket to enable multipart uploads for files >10MB.
# For S3-compatible services (S3, R2, DigitalOcean, etc.)
aws s3api put-bucket-cors \
--bucket YOUR_BUCKET_NAME \
--cors-configuration file://cors.json \
--endpoint-url YOUR_ENDPOINT_URL
# For Google Cloud Storage
gsutil cors set cors.json gs://YOUR_BUCKET_NAME
# See detailed instructions at:
# /docs/getting-started/cors-setupStart MegaVault
Launch the application and access the web interface.
# If using Docker
docker-compose up -d
# If using manual setup
npm run dev
# Access MegaVault at:
http://localhost:3001Create Your Account
Sign up for your MegaVault account and verify email.
# Navigate to the signup page
http://localhost:3001/auth/signup
# Fill in your details:
- Full Name
- Email Address
- Strong Password
- Confirm Password
# Check your email for verification linkSetup Complete!
http://localhost:3001You can now log in with the account you created and start uploading files.
Verification Steps
- Access the Web Interface: Open
http://localhost:3001in your browser - Login: Use the credentials you created during setup
- Dashboard Check: Verify the dashboard loads without errors
- Upload Test: Try uploading a small test file
Common Setup Issues
Connection Issues
- Port Already in Use: Change port in docker-compose.yml
- Permission Errors: Check Docker permissions
- Network Issues: Verify firewall settings
- DNS Problems: Try using 127.0.0.1 instead of localhost
Configuration Issues
- Environment Variables: Check .env file formatting
- Redis Connection: Verify Redis URL is correct
- S3 Credentials: Double-check bucket name and keys
- Permissions: Ensure S3 permissions are properly set
Your First Upload
Now that MegaVault is running, let's upload your first file and explore the basic features.
Web Upload
- Navigate to Dashboard: Go to the main dashboard after logging in
- Upload Area: Look for the drag-and-drop upload area
- Choose Files: Drag files to the upload area or click to select
- Monitor Progress: Watch the upload progress indicator
- Verify Upload: Check that files appear in your file list
Upload Methods
Drag & Drop
- Drag files from desktop
- Drop onto upload area
- Multiple files supported
- Folder uploads available
File Browser
- Click "Upload Files" button
- Browse and select files
- Multi-select with Ctrl/Cmd
- Filter by file type
API Upload
- RESTful API endpoints
- Programmatic uploads
- Batch operations
- Integration support
File Management Basics
- View Files: Browse uploaded files in grid or list view
- Preview: Click files to preview supported formats
- Download: Right-click and select download
- Share: Generate secure sharing links
- Organize: Create folders and move files
- Search: Use the search bar to find files quickly
# Test API upload (optional)
curl -X POST http://localhost:3001/api/upload -H "Authorization: Bearer YOUR_API_TOKEN" -F "file=@test-file.txt" -F "folder=/"
# Expected response:
{
"success": true,
"file": {
"id": "file_123",
"name": "test-file.txt",
"size": 1024,
"url": "/api/files/file_123"
}
}Mobile App Setup
Complete your MegaVault setup by installing and configuring the mobile app for on-the-go file access and automatic photo backup.
Mobile App Installation
iOS App
- Download: Get from the App Store
- Requirements: iOS 12.0 or later
- Size: ~50 MB download
- Features: Full feature parity with web
Android App
- Download: Get from Google Play Store
- Requirements: Android 6.0+ (API 23)
- Size: ~40 MB download
- Features: Native Android integration
Mobile App Configuration
- Server Setup: Enter your MegaVault server URL
- Login: Use the same credentials from web setup
- Permissions: Grant necessary permissions (storage, camera, notifications)
- Sync Settings: Configure automatic photo backup
- Test Upload: Take a photo and verify it uploads automatically
Essential Mobile Features
- Auto Photo Backup: Automatically backup new photos and videos
- Offline Access: Download files for offline viewing
- Background Uploads: Continue uploads when app is closed
- Push Notifications: Get notified about uploads and shares
- File Sharing: Share files directly from other apps
Mobile App Benefits
- Automatic backup of photos and videos
- Access to files anywhere, even offline
- Native sharing with other apps
- Push notifications for important events
Next Steps
Now that you have MegaVault up and running, here are the next steps to get the most out of your file storage solution.
Immediate Next Steps
Security Setup
- Enable HTTPS: Set up SSL certificates
- Two-Factor Auth: Enable 2FA for your account
- Backup Keys: Save your recovery keys safely
- Regular Updates: Keep MegaVault updated
Optimization
- Performance Tuning: Optimize for your usage
- Storage Management: Set up cleanup policies
- Monitoring: Set up health checks
- Backup Strategy: Plan your backup approach
Learning Resources
- User Guide: Comprehensive documentation for daily use
- Admin Guide: Advanced configuration and management
- API Documentation: Build integrations and automations
- Community: Join the MegaVault community for support
- Updates: Follow release notes for new features
Advanced Configuration
- Custom Domain: Set up your own domain name
- Email Configuration: Configure SMTP for notifications
- Integration Setup: Connect with other tools and services
- Team Management: Set up user accounts and permissions
- Automation: Create automated workflows and rules
You're All Set!
- A working MegaVault instance
- Secure file storage and sharing
- Mobile app connectivity
- Basic file management capabilities