0.0.4 • Published 5 years ago

mongowaves v0.0.4

Weekly downloads
-
License
ISC
Repository
-
Last release
5 years ago

Mongowaves

Mongowaves is a custom MongoDB-inspired and Mongoose-inspired relationship handler for collections and data.

Features

  • 🔥 Easy-to-use
  • ⚙️ Relationships made easy
  • 💻 No dependencies to install, lightweight
  • 👥 Publicly available

Project Setup

npm install mongowaves

Usage

// Require module
const mongowaves = require('mongowaves');

// Instantiate empty classes object
const classes = {};

// Define class
classes.<ClassName> = class <ClassName> extends mongowaves { };

// Define table/collection
const <MainTableName> = new classes.<ClassName>({
   _id: '<TableId : String>',
   field: fieldValue
   referenceField: '@<TargetField>'
   });
   
// Define target table
const <TargetTableName> = new classes.<ClassName>({
   _id: '<TableId : String>',
   field: fieldValue
   });

//Get target value
const value = `${<TargetTableName>.<TargetTableName.field>}` 
console.log(value); // => Target table field value

// Data-populated example
const mongowaves = require('mongowaves');
const classes = {};
classes.Users = class Users extends mongowaves { };
const table = new classes.Users({
       _id: 'usersid',
       firstName: 'John',
       lastName: 'Doe',
       role: '@roles'
});
const roles = new classes.Users({
       _id: 'roles',
       role: 'maintainer',
});
const userRole = `${roles.role}` // returns 'maintainer'
const UserRoleName = `${table.firstName} ${table.lastName} is a: ${roles.role}` // returns 'John Doe is a maintainer

Contributing

When contributing a feature or bug fix make sure to test and stylecheck your code.