Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/daniel-boll/scylla-javascript-driver

A ScyllaDB Driver alternative for Nodejs, Javascript and Typescript written using Node API through Rust bindings
https://github.com/daniel-boll/scylla-javascript-driver

hacktoberfest hacktoberfest-2024 javascript napi-rs nodejs rust rust-lang scylladb scylladb-driver typescript

Last synced: about 17 hours ago
JSON representation

A ScyllaDB Driver alternative for Nodejs, Javascript and Typescript written using Node API through Rust bindings

Awesome Lists containing this project

README

        



[![ScyllaDB Unnoficial Discord Server](https://img.shields.io/badge/ScyllaDB_Developers-Discord_Server-4C388C)](https://discord.gg/CzCT4cyRrr)



Scylla Nodejs Driver

๐Ÿš€ ScyllaDB NodeJS Driver ๐Ÿงช๐Ÿ”ง


## โš ๏ธ Disclaimer โš ๏ธ

This repository and the associated npm package are currently in a ๐Ÿฃ pre-release state and are being used for testing ๐Ÿงช purposes. They are subject to change without notice ๐Ÿ“. Users are encouraged to use this driver with caution โ— and not in production environments until the official release.

## ๐Ÿš€ Getting Started ๐Ÿš€

These instructions will get you a copy of the project up and running ๐Ÿƒ on your local machine for development and testing purposes.

### ๐Ÿ“‹ Prerequisites ๐Ÿ“‹

- Docker: We use Docker ๐Ÿณ to run the Scylla database easily without the need for a complex local setup.
- Node.js: Make sure you have Node.js installed on your system to run JavaScript code.

### ๐ŸŒŸ Quickstart ๐ŸŒŸ

1. **Start ScyllaDB in Docker:**

Run a ScyllaDB instance using the following Docker command:

```bash
docker run --name scylladb -d --rm -it -p 9042:9042 scylladb/scylla --smp 2
```

This command pulls the Scylla image if it's not already present on your system, and starts a new ๐ŸŒŸ container with the Scylla database.

2. **Use the JavaScript Driver:**

Here's a simple script to connect to the database and execute a query:

```javascript
import { Cluster } from "@lambda-group/scylladb";

const cluster = new Cluster({
nodes: ["127.0.0.1:9042"],
});

const session = await cluster.connect("system_schema");

const result = await session
.execute("SELECT * FROM scylla_tables limit ?", [1])
.catch(console.error);

console.log(result);
```

This script connects to the ScyllaDB instance running on your machine, performs a query, and logs the result.

### ๐Ÿ“ฅ Installing ๐Ÿ“ฅ

To install this package, use the following command:

```bash
npm install @lambda-group/scylladb@latest
```

## ๐Ÿ“š Examples ๐Ÿ“š

Reference wise you can guide yourself through the [examples/](https://github.com/Daniel-Boll/scylla-javascript-driver/tree/main/examples) folder in the repo.

## ๐Ÿ™ Acknowledgments ๐Ÿ™

- Thanks to the developers of ScyllaDB for creating such a high-performance database.
- Thanks to the Rust community for providing the robust `scylla` crate.
- Thanks to the `napi-rs` project for enabling efficient Rust and Node.js integrations.