Skip to content

GitHub Codespaces

Develop with Islamic Open Finance™ using GitHub Codespaces.

Overview

Codespaces provides a complete development environment in the cloud:

  • Pre-configured environment
  • All dependencies installed
  • Databases running automatically
  • No local setup required

Quick Start

1. Open in Codespaces

Open in GitHub Codespaces

Or from the repository:

  1. Click the Code button
  2. Select Codespaces tab
  3. Click Create codespace on main

2. Wait for Setup

The codespace automatically:

  • Installs Node.js 22
  • Installs pnpm dependencies
  • Starts PostgreSQL and Redis
  • Runs database migrations

3. Start Development

bash
# Start all services
pnpm dev

# Or start specific services
pnpm dev:rail-api
pnpm dev:admin-portal

Available Ports

PortService
3000Rail API
3001Admin Portal
3002API Explorer
5432PostgreSQL
6379Redis

Environment Variables

Codespaces automatically sets up:

bash
DATABASE_URL=postgresql://iof:dev@localhost:5432/iof_dev
REDIS_URL=redis://localhost:6379
JWT_SECRET=codespaces-dev-secret

Persistence

Codespaces persist:

  • ✅ Code changes
  • ✅ Database data
  • ✅ VS Code settings
  • ✅ Terminal history

Tips

Pre-build Configuration

The repository includes .devcontainer/devcontainer.json:

json
{
  "name": "IOF Development",
  "image": "mcr.microsoft.com/devcontainers/typescript-node:22",
  "features": {
    "ghcr.io/devcontainers/features/docker-in-docker:2": {}
  },
  "postCreateCommand": "pnpm install",
  "forwardPorts": [3000, 3001, 3002, 5432, 6379]
}

Resource Limits

Machine TypeCPUMemory
2-core24 GB
4-core48 GB
8-core816 GB

Recommended: 4-core for development.

Next Steps

Licensed under the Apache License 2.0