Skip to main content

System Requirements

  • OS: Linux, macOS, or Windows (WSL2)
  • RAM: 2GB minimum, 4GB recommended
  • Storage: 1GB for application + database storage

Install Dependencies

# Install Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# Install dependencies
brew install node rust postgresql
# Install Docker Desktop
# Visit: https://www.docker.com/products/docker-desktop

# Start services
docker-compose up -d
This starts:
  • PostgreSQL (port 5432)
  • MinIO (port 9000)
  • Redis (port 6379)

Manual Setup

PostgreSQL

# Create database
createdb wryft

# Run migrations
for f in backend/migrations/*.sql; do
  psql -d wryft -f "$f"
done

MinIO

# Run setup script
./setup-minio.sh

Redis (Optional)

# Install Redis
brew install redis  # macOS
sudo apt install redis-server  # Ubuntu

# Start Redis
redis-server

Environment Configuration

Backend (.env)

cd backend
cp .env.example .env
Edit backend/.env:
DATABASE_URL=postgresql://postgres:password@localhost/wryft
REDIS_URL=redis://localhost:6379
S3_ENDPOINT=http://localhost:9000
S3_ACCESS_KEY=minioadmin
S3_SECRET_KEY=minioadmin
S3_BUCKET=wryft

Frontend (.env)

cd wryft-web
cp .env.example .env
Edit wryft-web/.env:
VITE_API_URL=http://localhost:3001/api
VITE_WS_URL=ws://localhost:3001

Verify Installation

# Check Node.js
node --version  # Should be 18+

# Check Rust
rustc --version  # Should be 1.70+

# Check PostgreSQL
psql --version  # Should be 14+

# Check Docker
docker --version
docker-compose --version

Troubleshooting

Change ports in .env files or stop conflicting services
Verify PostgreSQL is running: pg_isready
Update Rust: rustup update

Next Steps

Quickstart

Start the application