Skip to content

Daniel-Boll/charydbis.js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

28 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

scylladb

πŸš€ JavaScript ORM for ScyllaDB. Pre-release stage. πŸ§ͺπŸ”§

πŸ“₯ Installing πŸ“₯

To install this package, use the following command:

npm i @lambda-group/charydbis @lambda-group/scylladb

πŸš€ 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.
  • Scylla Driver: To handle the connections.

🌟 Quickstart 🌟

  1. Start ScyllaDB in Docker:

    Run a ScyllaDB instance using the following Docker command:

    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. Create a DataSource:

    Here's a simple script that creates a data source:

    import { DataSource } from "@lambda-group/charydbis";
    
    using scyllaDataSource = await new DataSource({
      nodes: ["localhost:9042"],
    }).initialize("system_schema");

    Here we leverage the using keyword so in the end of the scope on [Symbol.dispose] we automatically close the connection so you don't have to bother.

  3. Create a model:

    Now we can create a structure that will represent out data.

    @Model("scylla_tables")
    class ScyllaTables {
      @Column()
      name: string;
    }
  4. Access the repository:

    You can now get a default repository from the model.

    const scyllaTablesRepository = scyllaDataSource.getRepository(ScyllaTables);
    
    const tables: Array<ScyllaTables> = await scyllaTablesRepository.find();

You can find more examples in the examples folder.

About

πŸš€ NodeJS ScyllaDB ORM. πŸ§ͺπŸ”§

Resources

Stars

Watchers

Forks

Packages

No packages published