Why Storage Manager?
The Problem
- Different code for each environment
- Code changes required when switching drivers
- URL generation logic is scattered
Using Storage Manager
- Driver-independent code
- Switch drivers by just changing configuration
- Consistent URL generation
Core Concepts
Storage Manager
A manager that handles multiple Disks.Disk
A Disk is a single driver instance that stores files.Basic Configuration
sonamu.config.ts
default: Name of the default disk to usedrivers: Driver factories by disk name
Using Disks
Default Disk
Specific Disk
Managing Multiple Disks
Multi-Disk Configuration
Using Disks by Purpose
Environment-based Strategies
Development/Production Separation
- Development Environment
- Production Environment
Using local file systemBenefits:
- No AWS account needed
- Fast development
- No cost
Hybrid Strategy
Practical Examples
1. Profile Photo Upload
2. Multiple File Upload
3. Separation by Disk
Storage Manager API
use(diskName?)
Returns a disk instance.Disk instance (Flydrive)