Socket
Socket
Sign inDemoInstall

fastify-cockroachdb

Package Overview
Dependencies
4
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 1.0.0 to 1.1.0

8

index.js

@@ -12,4 +12,10 @@ "use strict";

options.user,
options.password,
options.password ? options.password : "",
options.settings
? options.settings
: {
dialect: "postgres",
port: options.port ? options.port : 26257,
logging: false
}
);

@@ -16,0 +22,0 @@

2

package.json
{
"name": "fastify-cockroachdb",
"version": "1.0.0",
"version": "1.1.0",
"description": "A Fastify plugin for creating a CockroachDB connection through the Sequelize ORM",

@@ -5,0 +5,0 @@ "main": "index.js",

@@ -1,2 +0,89 @@

# fastify-cockroachdb
A Fastify plugin for CockroachDB
# Fastify CockroachDB Plugin using Sequelize ORM
[![NPM](https://nodei.co/npm/fastify-cockroachdb.png?downloads=true&downloadRank=true&stars=true)](https://nodei.co/npm/fastify-cockroachdb/)
## Installation
```bash
npm i fastify-cockroachdb -s
```
## Usage
```javascript
// ...Other Plugins
fastify.register(
require("fastify-cockroachdb"),
{
database: "database-name",
user: "maxroach",
password: "",
settings: {
dialect: "postgres",
port: 26257,
logging: false,
dialectOptions: {
ssl: {
ca: fs.readFileSync("certs/ca.crt").toString(),
key: fs.readFileSync("certs/client.maxroach.key").toString(),
cert: fs.readFileSync("certs/client.maxroach.crt").toString()
}
}
},
models: [
{
name: "accounts",
alias: "Account",
schema: {
id: {
type: Sequelize.INTEGER,
primaryKey: true
},
balance: {
type: Sequelize.INTEGER
}
}
}
]
},
err => {
if (err) throw err;
}
);
fastify.get("/", (request, reply) => {
console.log(fastify.cockroachdb.instance); // Sequelize ORM instance
console.log(fastify.cockroachdb.models.Account); // Any models declared are available here
});
```
## Options
| Option | Description |
| ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `database` | Required, the name of the database to connect to within CockroachDB. |
| `user` | Required, the name of the user to log in as within the database. |
| `password` | Optional, the password of the user to log in as. Should be empty if SSL is used. |
| `settings` | Optional, the settings to be passed in to the Sequelize ORM. Should include `dialectOptions` if a secure CockroachDB instance is used. Consult [this tutorial](https://www.cockroachlabs.com/docs/stable/build-a-nodejs-app-with-cockroachdb-sequelize.html). |
| `port` | Optional, used in place of default port `26257` if no `settings` parameter is found. |
| `models` | Optional, any models to be declared and injected under `fastify.cockroachdb.models`. |
Any models declared should follow the following format:
```javascript
{
name: "profiles", // Required, should match name of model in database
alias: "Profile", // Optional, an alias to inject the model as
schema: schemaDefinition // Required, should match schema of model in database
}
```
The `schemaDefinition` variable should be created according to the [Sequelize Model Specification](http://docs.sequelizejs.com/manual/tutorial/models-definition.html).
## Author
[Alex Papageorgiou](alex.ppg@pm.me)
## License
Licensed under [GPLv3](./LICENSE).
SocketSocket SOC 2 Logo

Product

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

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc