real-time-features

Implement real-time functionality using WebSockets, Server-Sent Events (SSE), or long polling. Use when building chat applications, live dashboards, collaborative editing, notifications, or any feature requiring instant updates.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "real-time-features" with this command: npx skills add aj-geddes/useful-ai-prompts/aj-geddes-useful-ai-prompts-real-time-features

Real-Time Features

Table of Contents

Overview

Implement real-time bidirectional communication between clients and servers for instant data synchronization and live updates.

When to Use

  • Chat and messaging applications
  • Live dashboards and analytics
  • Collaborative editing (Google Docs-style)
  • Real-time notifications
  • Live sports scores or stock tickers
  • Multiplayer games
  • Live auctions or bidding systems
  • IoT device monitoring
  • Real-time location tracking

Quick Start

Minimal working example:

// server.ts
import WebSocket, { WebSocketServer } from "ws";
import { createServer } from "http";

interface Message {
  type: "join" | "message" | "leave" | "typing";
  userId: string;
  username: string;
  content?: string;
  timestamp: number;
}

interface Client {
  ws: WebSocket;
  userId: string;
  username: string;
  roomId: string;
}

class ChatServer {
  private wss: WebSocketServer;
  private clients: Map<string, Client> = new Map();
  private rooms: Map<string, Set<string>> = new Map();

  constructor(port: number) {
// ... (see reference guides for full implementation)

Reference Guides

Detailed implementations in the references/ directory:

GuideContents
WebSocket Server (Node.js)WebSocket Server (Node.js)
WebSocket Client (React)WebSocket Client (React)
Server-Sent Events (SSE)Server-Sent Events (SSE)
Socket.IO (Production-Ready)Socket.IO (Production-Ready)

Best Practices

✅ DO

  • Implement reconnection logic with exponential backoff
  • Use heartbeat/ping-pong to detect dead connections
  • Validate and sanitize all messages
  • Implement authentication and authorization
  • Handle connection limits and rate limiting
  • Use compression for large payloads
  • Implement proper error handling
  • Monitor connection health
  • Use rooms/channels for targeted messaging
  • Implement graceful shutdown

❌ DON'T

  • Send sensitive data without encryption
  • Keep connections open indefinitely without cleanup
  • Broadcast to all users when targeted messaging suffices
  • Ignore connection state management
  • Send large payloads frequently
  • Skip message validation
  • Forget about mobile/unstable connections
  • Ignore scaling considerations

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

nodejs-express-server

No summary provided by upstream source.

Repository SourceNeeds Review
General

markdown-documentation

No summary provided by upstream source.

Repository SourceNeeds Review
General

rest-api-design

No summary provided by upstream source.

Repository SourceNeeds Review
General

architecture-diagrams

No summary provided by upstream source.

Repository SourceNeeds Review