Cloudillo Documentation
Welcome to Cloudillo
Cloudillo is an open-source, decentralized collaboration platform that empowers users to maintain complete control over their data while collaborating globally. Whether you’re building collaborative applications, hosting your own instance, or exploring decentralized architectures, this documentation guides you through every aspect of Cloudillo.
Choose your path below:
π₯ For Everyone: Getting Started
New to Cloudillo? Start here to understand what it is and how to get up and running.
- What is Cloudillo? β Understand Cloudillo’s vision: global accessibility with local control, revolutionary authentication, and seamless interconnectivity
- Prerequisites β System requirements and what you need to know before getting started
- Getting Started β Quickstart guide to begin using Cloudillo
- Install Yourself β Self-hosting guide for those who want to run their own instance
- First Steps β Your first interactions and setup on Cloudillo
- Status Page β Service status and availability
π» For Developers: API & Integration
Build applications on top of Cloudillo using our comprehensive API and client libraries.
Quick Start for Developers
- API Getting Started β Introduction to the Cloudillo API
- Quick Start β Hands-on examples and step-by-step tutorials
Client Libraries
- Client Libraries Overview β Available SDKs and packages
- @cloudillo/base β Core SDK for initialization and API access
- @cloudillo/react β React hooks and components
- @cloudillo/types β TypeScript types with runtime validation
REST API Reference
- REST API Overview β Complete REST API documentation
- Authentication β Login, registration, and token management
- Profiles β User and community profiles
- Actions β Social interactions and action tokens
- Files β File upload, download, and management
- Settings β User preferences and configuration
- References β Bookmarks and shortcuts
Real-Time APIs
- WebSocket API β Real-time messaging and notifications
- Real-Time Database β Firebase-like structured data with subscriptions
- CRDT Collaboration β Conflict-free collaborative document editing
Developer Guides
- Authentication Guide β Token-based authentication and authorization
- Testing Guide β Unit, integration, and E2E testing strategies
- Error Handling β Error codes and handling strategies
- Microfrontends β Building apps for the Cloudillo shell
ποΈ Technical Deep Dives: Architecture
Understand Cloudillo’s technical architecture, data models, and how the system works internally.
Core Concepts & Fundamentals
- Core Concept & Architecture β High-level overview of Cloudillo’s design
- Architecture Fundamentals β Core principles and patterns
- System Overview β Technical patterns, adapters, and task systems
- DNS-Based Identity β Identity system and profile management
- Content-Addressing & Merkle Trees β Cryptographic hashing for proof of authenticity
- Network & Security β Network architecture and security considerations
Data Storage & Access
- Data Storage & Access Overview β How data is stored, organized, and accessed
- Blob Storage β Content-addressed immutable files with variants and deduplication
- Real-Time Database (RTDB) β Query-oriented JSON database with subscriptions
- RTDB Overview β Architecture and design
- RTDB Implementation (ReDB) β Storage engine details
- Collaborative Editing (CRDT) β Conflict-free replicated data types
- CRDT Overview β Architecture and algorithms
- CRDT Implementation (ReDB) β Storage implementation
- Access Control β Resource protection and sharing
- Access Control Mechanism β Token-based authentication
- ABAC Permissions β Attribute-based access control
Actions & Federation
- Actions & Federation Overview β Event-driven interactions and decentralized federation
- Action Tokens β Cryptographically signed events
- User Relationships β Connection and follow tokens
- Content Actions β Posts, comments, reactions, reposts, endorsements
- Communication β Direct messages and conversations
- Metadata β Statistics, acknowledgments, file sharing
- Federation Architecture β Inter-instance communication and protocols
- Action Tokens β Cryptographically signed events
Runtime Systems
- Runtime Systems β Background processing and real-time features
- Task Scheduler β Persistent task execution and scheduling
- Worker Pool β CPU-intensive task processing
- WebSocket Bus β Real-time notifications and presence tracking
π§ Implementation & Operations
- Implementation β Developer-focused implementation details
- Action Flow β How actions flow through the system
π Next Steps
- Just exploring? Start with What is Cloudillo?
- Want to build an app? Head to API Getting Started
- Setting up a server? See Installing Cloudillo Yourself
- Need technical details? Dive into Architecture