Introduction
What is Archipelag.io and how does it work?
Introduction to Archipelag.io
Archipelag.io (pronounced archipelago) is a distributed compute network that connects consumers who need computing power with Islands that have spare capacity. The name evokes an archipelago — a network of independent islands working together. Think of it as a decentralized cloud where anyone can contribute resources and earn, while developers get access to affordable, low-latency compute.
What Makes Us Different
Key Benefits
| For Consumers | For Islands |
|---|---|
| Lower latency | Monetize idle hardware |
| Transparent pricing | Flexible participation |
| No vendor lock-in | Simple setup |
| AI-ready infrastructure | Reputation-based earnings |
How It Works
Core Concepts
Understanding these concepts will help you make the most of Archipelag.io:
Islands
Contribute GPU or CPU resources to the network and earn credits.
Cargos
Signed workload containers that run on Islands.
Cargo Registry
Browse verified Cargos with transparent trust levels.
Karma
Reputation system that ensures network quality and fair compensation.
{% end %}
Architecture Overview
┌─────────────┐ ┌─────────────────┐ ┌─────────────┐
│ Consumer │ API │ Coordinator │ NATS │ Island │
│ (Browser) │ ──────► │ (Phoenix) │ ──────► │ (Island) │
└─────────────┘ └─────────────────┘ └─────────────┘
│
│ PostgreSQL
▼
┌─────────────┐
│ Database │
└─────────────┘
The Coordinator is the control plane that handles:
- User authentication and billing
- Job placement and dispatch
- Island health monitoring
- Real-time streaming of results
The Island software runs on Islands and:
- Reports hardware capabilities
- Pulls and executes approved Cargos
- Streams output back to consumers
- Tracks resource usage for billing
What Can You Build?
{% end %}
Next Steps
Ready to get started? Choose your path:
User Guide
Models, pricing, error handling, and best practices.
Island Setup Guide
Set up your machine as an Island to earn by running Cargos.
API Reference
Explore the full API documentation.
{% end %}
