Elmira

Documentation

Build real-time applications with our collaborative framework. Everything you need to get started and master advanced features.

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.

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.