- Revamped GETTING_STARTED.md for clarity and completeness, detailing the Docker development environment and installation steps. - Updated Cargo.lock and Cargo.toml to replace deprecated dependencies and add new ones, including hyper-ws-listener and env_logger. - Improved WebSocket handling in the API to support upgrades and error management. - Enhanced Neode UI scripts to manage Docker containers during development. - Adjusted dummy app configurations for accurate LAN addresses. - Sorted app entries in the UI for better organization and accessibility.
Archipelago Bitcoin Node OS
Next-generation Bitcoin Node OS built on Alpine Linux with Podman containerization.
🚀 New to Archipelago?
Get started in minutes: GETTING_STARTED.md
Quick reference: QUICK_REFERENCE.md
Quick Start
Installation
First, install all required dependencies:
./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 for detailed installation instructions.
Verify Installation:
./verify-install.sh
Development Setup
-
Configure environment (optional):
cp core/.env.example core/.env cp neode-ui/.env.example neode-ui/.env -
Start development servers:
Quick start (mock backend for UI development):
./scripts/dev.shOr use the interactive starter:
./scripts/dev-start.shOr manually:
# Terminal 1: Backend cd core cargo run --bin archipelago # Terminal 2: Frontend cd neode-ui npm run dev -
Open in browser:
- Frontend: http://localhost:8100
- Backend API: http://localhost:5959
Mock Backend (UI Development Only)
For frontend-only development:
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 for detailed instructions.
Architecture
See Architecture Documentation for system design details.
App Manifests
See App Manifest Specification 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
Description
Languages
Rust
45.6%
Vue
20.1%
Shell
12.3%
TypeScript
9.4%
JavaScript
5.4%
Other
7.2%