Getting Started
Install Elmira
npm install elmira
Supports npm/yarn/pnpm. Check our downloads page for alternative formats.
Initialize Project
npx elmira init my-rtc-project
This creates a template project with CRDT support, WebSocket integration, and ready-to-use components.
Core Concepts
CRDT Framework
Conflict-free replicated data types (CRDTs) ensure consistent state across all connected clients. Every modification converges automatically without merge conflicts.
Learn more in our CRDT Guide
Session Management
Elmira sessions handle connection lifecycles, user management, and automatic reconnection with customizable timeouts and authentication hooks.
See Session API docs
API Reference
Client API
const client = new ElmiraClient({
apiKey: 'YOUR_API_KEY',
sessionType: 'document',
maxParticipants: 5
});
Use this to initialize client-side sessions with optional configuration overrides.
Server API
const server = new ElmiraServer({
port: 8080,
authStrategy: 'aws-cognito'
});
Configure backend services with authentication strategies and middleware.
Guides & Tutorials
1
Quick Start
5-minute guide to setting up a real-time collaborative text editor with automatic conflict resolution.
2
Advanced Features
Learn about CRDT composition, custom data types, and advanced session configuration options.
3
Deployment
How to deploy Elmira applications to AWS using our fully managed serverless architecture.