A Node.js implementation of the Chromecast CASTV2 protocol for programmatically controlling Chromecast devices.
castv2 is a Node.js library that implements the Chromecast CASTV2 protocol, allowing developers to programmatically control Chromecast devices. It provides low-level access to connect, send messages, launch apps, and manage device interactions without using official Google SDKs.
Node.js developers building custom Chromecast integrations, IoT applications, or media streaming tools that require direct device control.
It offers a reverse-engineered, open-source alternative to official Chromecast SDKs, giving developers full control over protocol details and enabling custom integrations not possible with higher-level libraries.
An implementation of the Chromecast CASTV2 protocol
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Implements the entire CASTV2 protocol over TLS with Protocol Buffers, enabling direct low-level communication with Chromecast devices, as detailed in the comprehensive protocol description.
Allows launching, stopping, and querying applications like YouTube, and managing device volume through namespace-based channels, demonstrated in the usage example.
Provides a reverse-engineered option for developers who need custom integrations without relying on official SDKs, aligning with the project's philosophy of enabling protocol understanding.
Includes extensive protocol descriptions and examples, such as message structures and namespace semantics, helping developers grasp underlying mechanics.
The server implementation is described as 'pretty useless' in the README due to device authentication issues, making it ineffective for server-side use cases.
Requires manual management of connections, heartbeats, and namespaces, as shown in the usage example, which is more involved than higher-level libraries.
As a reverse-engineered project, it may not receive updates for protocol changes, leading to potential breakage if Google modifies the CASTV2 specification.