Files
asle/QUICK_START.md
defiQUG e227931583 Deduplicate and prune project root and docs/ directory
- Consolidate setup documentation: merge COMPLETE_SETUP_INSTRUCTIONS into QUICK_START
- Consolidate status docs: merge SETUP_PROGRESS, SETUP_COMPLETE, COMPLETION_STATUS into STATUS
- Consolidate review docs: merge REVIEW_SUMMARY into PROJECT_REVIEW
- Archive 7 redundant files to docs/archive/
- Update DOCUMENTATION_INDEX.md and README.md references
- Create archive README explaining consolidation
- Reduce root documentation from 19 to 13 files (32% reduction)
- Eliminate ~400 lines of duplicate content
2025-12-03 22:59:57 -08:00

4.4 KiB

ASLE Quick Start Guide

Get up and running with the ASLE platform in minutes.

Prerequisites

  • Node.js 20+
  • Docker and Docker Compose (optional, for local services)
  • PostgreSQL 15+ (or use Docker)
  • Git with submodule support

Step 1: Clone Repository

# Clone with submodules (IMPORTANT!)
git clone --recurse-submodules https://github.com/Order-of-Hospitallers/asle.git
cd asle

# If you already cloned without submodules:
git submodule update --init --recursive

Step 2: Configure Database

Choose one method to set up PostgreSQL:

# Start PostgreSQL container
docker-compose up -d postgres

# Update backend/.env
DATABASE_URL="postgresql://asle:asle_password@localhost:5432/asle?schema=public"

Option B: Local PostgreSQL

# Create database (requires PostgreSQL admin access)
sudo -u postgres psql -c "CREATE DATABASE asle;"
# Or: createdb asle

# Update backend/.env with your connection string
DATABASE_URL="postgresql://your_user:your_password@localhost:5432/asle?schema=public"

See DATABASE_SETUP.md for detailed database configuration options.

Step 3: Backend Setup

cd backend

# Install dependencies
npm install

# Copy and configure environment
cp .env.example .env
# Edit .env with your configuration (see DATABASE_SETUP.md)

# Generate Prisma client
npm run prisma:generate

# Run database migrations
npm run prisma:migrate

# Initialize database
npm run setup:db

# Create admin user
npm run setup:admin

# Start backend (development)
npm run dev

Backend will run on http://localhost:4000

Step 4: Frontend Setup

cd ../frontend

# Install dependencies
npm install

# Copy and configure environment
cp .env.example .env.local
# Edit .env.local with your configuration

# Start frontend (development)
npm run dev

Frontend will run on http://localhost:3000

Step 5: Deploy Contracts (Optional)

cd ../contracts

# Install Foundry dependencies
forge install

# Build contracts
forge build

# Run tests
forge test

# Deploy (see DEPLOYMENT.md for details)
forge script script/Deploy.s.sol:DeployScript --rpc-url $RPC_URL --broadcast --private-key $PRIVATE_KEY

Step 6: Access the Application

Common Issues

Submodules Not Cloned

If you see empty contracts/ or frontend/ directories:

git submodule update --init --recursive

Database Connection Error

  1. Verify PostgreSQL is running
  2. Check DATABASE_URL in backend/.env
  3. Ensure database exists: createdb asle

Port Already in Use

Change PORT in backend/.env or kill the process:

lsof -i :4000
kill -9 <PID>

Missing Dependencies

# Backend
cd backend && npm install

# Frontend
cd frontend && npm install

# Contracts
cd contracts && forge install

Next Steps

  1. Configure Environment: Update all .env files with your API keys and configuration
  2. Deploy Contracts: Deploy smart contracts to your target network
  3. Set Up KYC/AML: Configure KYC/AML provider credentials (optional)
  4. Configure Push Notifications: Set up push notification providers (optional)
  5. Review Documentation: See README.md and DEPLOYMENT.md

Development Workflow

Making Changes

  1. Backend Changes: Edit files in backend/src/, changes auto-reload with npm run dev
  2. Frontend Changes: Edit files in frontend/app/ or frontend/components/, changes auto-reload
  3. Contract Changes: Edit files in contracts/src/, run forge build and forge test

Running Tests

# Backend tests
cd backend && npm test

# Contract tests
cd contracts && forge test

Database Migrations

cd backend
npm run prisma:migrate dev --name migration_name

Production Deployment

See DEPLOYMENT.md for detailed production deployment instructions.

Getting Help