# @rfrsh/brightswitch

## Introduction

The `@rfrsh/brightswitch` package is a TypeScript SDK that serves as the interface to our product, enabling seamless integration with various instances of our system. It primarily focuses on the `brightswitch` instance, which is extended with the Honeycomb Protocol. This SDK allows developers to interact with the `brightswitch` instance and other connected components, such as `artists`, `switches` and `burners`.

## Features

- **Honeycomb Integration**: The `brightswitch` instance is tightly integrated with the Honeycomb Protocol, providing seamless communication and data exchange.

- **Artist Management**: You can use this SDK to add, retrieve, and manage multiple artists within your system, all of which are based on the Solana blockchain.

- **Burner and Switch Control**: While `burners` and `switches` are also part of the system, they can only be managed and updated by the `artist` instance, providing you with complete control.

## Installation

To install the `@rfrsh/brightswitch` package, simply run:

```bash
npm install @rfrsh/brightswitch
```

## Getting Started

To start using the SDK, follow these steps:
Initialization: Initialize the SDK with your API keys or any required configurations.

```typescript
import { Honeycomb, keypairIdentity, lutModule } from '@honeycomb/hive-control';
import { BrightSwitch, } from '@rfrsh/brightswitch';

// Initialize Honeycomb and BrightSwitch
const connection = { rpcEndpoint: 'your-rpc-endpoint' }; // Replace with your actual RPC endpoint
const identity = 'your-identity'; // Replace with your identity information
const project = 'your-project'; // Replace with your project information

const honeycomb = new Honeycomb(connection);
const brightswitch = new BrightSwitch(connection.rpcEndpoint);

// Set up Honeycomb modules
honeycomb.use(project);
honeycomb.use(keypairIdentity(identity));
honeycomb.use(brightswitch);
honeycomb.use(
  lutModule((e) => {
    throw an Error("User Should not be able to call this");
  })
);

// Now, you can use the 'brightswitch' instance for interaction with your system.
```

## Contributing

We welcome contributions from the community. If you have suggestions, bug reports, or want to contribute code, please see our Contribution Guidelines.

## License

This package is open-source and available under the MIT License.

## Version History

See the Changelog for details on the latest updates.

## Acknowledgments

We'd like to thank the open-source community for their support and contributions to this project.
