2026-01-24 22:59:20 +00:00
|
|
|
# Archipelago Bitcoin Node OS
|
|
|
|
|
|
|
|
|
|
Next-generation Bitcoin Node OS built on Alpine Linux with Podman containerization.
|
|
|
|
|
|
2026-01-27 17:18:21 +00:00
|
|
|
## 🚀 New to Archipelago?
|
|
|
|
|
|
|
|
|
|
**Get started in minutes:** [GETTING_STARTED.md](./GETTING_STARTED.md)
|
|
|
|
|
|
|
|
|
|
**Quick reference:** [QUICK_REFERENCE.md](./QUICK_REFERENCE.md)
|
|
|
|
|
|
2026-01-24 22:59:20 +00:00
|
|
|
## Quick Start
|
|
|
|
|
|
2026-01-27 17:18:21 +00:00
|
|
|
### Installation
|
|
|
|
|
|
|
|
|
|
First, install all required dependencies:
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
./INSTALL.sh
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
This will install:
|
|
|
|
|
- Rust (latest stable)
|
|
|
|
|
- Node.js 18+
|
|
|
|
|
- Podman (container runtime)
|
|
|
|
|
- PostgreSQL 15
|
|
|
|
|
- All project dependencies
|
|
|
|
|
|
|
|
|
|
**Manual Installation:** See [SETUP_GUIDE.md](./SETUP_GUIDE.md) for detailed installation instructions.
|
|
|
|
|
|
|
|
|
|
**Verify Installation:**
|
|
|
|
|
```bash
|
|
|
|
|
./verify-install.sh
|
|
|
|
|
```
|
|
|
|
|
|
2026-01-24 22:59:20 +00:00
|
|
|
### Development Setup
|
|
|
|
|
|
2026-01-27 17:18:21 +00:00
|
|
|
1. **Configure environment (optional):**
|
2026-01-24 22:59:20 +00:00
|
|
|
```bash
|
2026-01-27 17:18:21 +00:00
|
|
|
cp core/.env.example core/.env
|
|
|
|
|
cp neode-ui/.env.example neode-ui/.env
|
2026-01-24 22:59:20 +00:00
|
|
|
```
|
|
|
|
|
|
|
|
|
|
2. **Start development servers:**
|
|
|
|
|
|
|
|
|
|
**Quick start (mock backend for UI development):**
|
|
|
|
|
```bash
|
|
|
|
|
./scripts/dev.sh
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
**Or use the interactive starter:**
|
|
|
|
|
```bash
|
|
|
|
|
./scripts/dev-start.sh
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
**Or manually:**
|
|
|
|
|
```bash
|
|
|
|
|
# Terminal 1: Backend
|
2026-01-27 17:18:21 +00:00
|
|
|
cd core
|
|
|
|
|
cargo run --bin archipelago
|
2026-01-24 22:59:20 +00:00
|
|
|
|
|
|
|
|
# Terminal 2: Frontend
|
2026-01-27 17:18:21 +00:00
|
|
|
cd neode-ui
|
2026-01-24 22:59:20 +00:00
|
|
|
npm run dev
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
3. **Open in browser:**
|
|
|
|
|
- Frontend: http://localhost:8100
|
|
|
|
|
- Backend API: http://localhost:5959
|
|
|
|
|
|
|
|
|
|
### Mock Backend (UI Development Only)
|
|
|
|
|
|
|
|
|
|
For frontend-only development:
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
cd /Users/tx1138/Code/Archipelago/neode-ui
|
|
|
|
|
npm run dev:mock
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
## Project Structure
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
Archipelago/
|
|
|
|
|
├── core/ # Rust backend
|
|
|
|
|
│ ├── container/ # Container orchestration (NEW)
|
|
|
|
|
│ ├── parmanode/ # Parmanode compatibility (NEW)
|
|
|
|
|
│ ├── security/ # Security modules (NEW)
|
|
|
|
|
│ ├── performance/ # Performance optimization (NEW)
|
|
|
|
|
│ └── startos/ # Main backend (in Code/Archipelago)
|
|
|
|
|
├── neode-ui/ # Vue.js frontend (in Code/Archipelago)
|
|
|
|
|
├── apps/ # App manifests (NEW)
|
|
|
|
|
├── image-recipe/ # Alpine Linux build files
|
|
|
|
|
├── scripts/ # Development and build scripts
|
|
|
|
|
└── docs/ # Documentation
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
## Development
|
|
|
|
|
|
|
|
|
|
See [Development Setup Guide](./docs/development-setup.md) for detailed instructions.
|
|
|
|
|
|
|
|
|
|
## Architecture
|
|
|
|
|
|
|
|
|
|
See [Architecture Documentation](./docs/architecture.md) for system design details.
|
|
|
|
|
|
|
|
|
|
## App Manifests
|
|
|
|
|
|
|
|
|
|
See [App Manifest Specification](./docs/app-manifest-spec.md) for creating containerized apps.
|
|
|
|
|
|
|
|
|
|
## Features
|
|
|
|
|
|
|
|
|
|
- 🐧 **Alpine Linux Base** - Minimal 130MB OS
|
|
|
|
|
- 🐳 **Podman Containers** - Rootless, secure containerization
|
|
|
|
|
- 🔒 **Security Hardened** - AppArmor, secrets management, image verification
|
|
|
|
|
- ⚡ **High Performance** - Resource management, optimization
|
|
|
|
|
- 🔌 **Parmanode Compatible** - Run existing Parmanode modules
|
|
|
|
|
- 📱 **Modern UI** - Vue.js 3 with TypeScript
|
|
|
|
|
- 🌐 **Web5 & Nostr** - Decentralized protocols support
|
|
|
|
|
- 📡 **Mesh Networking** - Meshtastic and router support
|
|
|
|
|
|
|
|
|
|
## Requirements
|
|
|
|
|
|
|
|
|
|
- Rust (latest stable)
|
|
|
|
|
- Node.js 18+
|
|
|
|
|
- Podman (for containers)
|
|
|
|
|
- PostgreSQL (for backend)
|
|
|
|
|
|
|
|
|
|
## License
|
|
|
|
|
|
|
|
|
|
MIT
|