Imagine building a chat application, real-time analytics dashboard, or online collaborative tool. These all require instant, reliable, and scalable communication between frontend and backend. Propeller solves this problem — an open-source platform for seamless, bi-directional real-time communication.
As Kunal Shah, CRED founder, noted on LinkedIn: “Every ‘processing’ screen in payments is behavioral debt. Propeller, built on gRPC protocol, eliminates this with 95% faster UPI and instant confirmations for CRED members. Open-sourcing it because trust should be infrastructure, not a feature.” Propeller empowers developers with scalable, reliable tools for modern applications.
Let’s explore what Propeller is, how it works, and why it’s a game-changer for real-time communication.
What Is Propeller?
Propeller is a gRPC-based platform for real-time, event-driven communication. It uses persistent connections for seamless event flow between server and clients, ensuring performance, scalability, and reliability.
Key features:
- gRPC Streams for bi-directional, low-latency communication
- Broker agnosticism (Redis and NATS support)
- Strong observability with Prometheus metrics and profiling tools
How Propeller Works
Key Components
- Channels: Persistent, bi-directional connections between clients and server
- Topics: Logical event groupings for client subscriptions
- Events: Exchanged payloads (messages, data updates, notifications)
- Devices: Multiple client devices with independent server interactions
Core Workflow
- Channel Initialization: Establish gRPC-based channels with unique client/device identification
- Event Exchange: Backend sends events; clients subscribe or interact directly
- Broker Mediation: Use Redis/NATS for event persistence, routing, and delivery
- Feedback Loop: Ensure reliable delivery with acknowledgments and real-time updates
Propeller’s Unique Features
1. Modular Design
- Clean module separation:
internal
,pkg
,cmd
- Protocol Buffers (Protobuf) for consistent APIs
- Docker deployment and
propeller.toml
configuration
2. Broker-Agnostic Architecture
- Redis: Event persistence, offline client support, scalable clustering
- NATS: Lightweight, high-throughput messaging with clustering and fault tolerance
3. Real-Time gRPC Streams
- Low-latency communication
- Scalability for millions of concurrent connections
- WebSocket fallback for non-gRPC clients
4. Observability and Monitoring
- Prometheus metrics for performance monitoring
- Profiling tools for optimization
Real-World Applications
- Fintech: Instant payment notifications
- Collaborative Tools: Live editing and feedback
- Gaming: Real-time player interactions
- IoT: Device-system data synchronization
Clone the repository from https://github.com/CRED-CLUB/propeller.git and follow the instructions to get started with CRED’s Propeller, real-time communication platform.
Challenges Propeller Solves
- Latency: Streaming model for instant updates
- Scalability: Broker-based routing and concurrency for effortless scaling
- Reliability: Broker persistence prevents event loss
- Flexibility: Modular, extensible design for easy customization
Conclusion
Propeller revolutionizes real-time communication in modern applications. Its powerful architecture, scalability, and open-source flexibility enable fast, reliable, and cost-effective systems.
Explore Propeller’s GitHub repository to unlock the full potential of real-time communication in your projects.
Happy learning @devsdaily!