Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

0db-repl

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

0db-repl

0db REPL playground for testing 0db database.

  • 0.0.1
  • latest
  • npm
  • Socket score

Version published
Weekly downloads
0
decreased by-100%
Maintainers
1
Weekly downloads
 
Created
Source

🅾️ 0db REPL

NPM version NodeJS JavaScript Web

REPL playground for testing 0db.

This is a nodeJS REPL that comes with some handy context variables to easily play around with 0db on the command line.

Screenshot

📥 Installation

npm i 0db-repl -g

ℹ️ Usage

Launch using:

0db

Type help() to see a description of all available context variables.

Context Variables:

Context variables are objects and functions that are already defined and available for usage during the REPL session.

$0db

0db object.

🎯 Example:

const myDb = await $0db("my-db.json")
db

A default instance using the default file ./db.json ready for use.

🎯 Example:

await db("users").create({ name: "ambratolm" })
faker

Fake data generator to generate some realistic mock data. (See: Faker.JS)

🎯 Example:

► faker.name.firstName()
► faker.name.lastName()
► faker.name.gender()
► faker.internet.userName()
► faker.internet.email()
► faker.internet.password()
await db("users").create({
    name: faker.internet.userName(),
    email: faker.internet.email(),
    password: faker.internet.password()
  })
gen

Built-in example data objects generator (using faker) that has some functions to generate example objects that can be added to database.

  • gen.user(count?) : Generates user objects.

    • Parameters:
      • count : Number, Optional. Number of objects to generate. Default: 1.
    • Returns an object if count <= 1, else an array of objects.

    user object is based on this schema:

    {
      name: String,
      firstName: String,
      lastName: String,
      gender: String,
      email: String,
      password: String,
      points: Number
    }
    

    🎯 Example:

    ► gen.user() // Returns 1 user object
    ► gen.user(100) // Returns an array of 100 user objects
    
    await db("users").create(gen.user())
    
  • gen.note(author?, count?) : Generates note objects.

    • Parameters:
      • author : String, Optional. Identifier for the author of the note (Expected to be the $id field of a created user object that exists in database).
      • count : Number, Optional. Number of objects to generate. Default: 1.
    • Returns an object if count <= 1, else an array of objects.

    note object is based on this schema:

    {
      author: String,
      title: String,
      content: String
    }
    

    🎯 Example:

    const user = await db("users").create(gen.user()) // Create a user item
    ► gen.note(user.$id) // Returns 1 note object
    ► gen.note(user.$id, 100) // Returns an array of 100 note objects
    
    const user = await db("users").create(gen.user())
    ► await db("notes").create(gen.note(user.$id))
    
cls

Clears screen.

🎯 Example:

cls()
help

Shows a description of all context variables.

  • Parameters:
    • name : String, Optional. Name of a specific context object or function to show description for.

🎯 Example:

help() // Shows all descriptionshelp("db") // Shows description only for "db" functionhelp("gen") // Shows description only for "gen" object

🚀 Development

  1. Clone the repository.

    cd somewhere
    git clone https://github.com/practical-works/0db-repl.git
    cd 0db-repl
    
  2. Install dependencies: npm i

  3. Run:

    • npm run dev for development.
    • npm start for production.

💡 In development, you can type rs to manually restart. (See: Nodemon)

🏭 Environment

🌑 Application

📃 License

Licensed under MIT.

FAQs

Package last updated on 05 Oct 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc