Have ideas to improve npm?Join in the discussion! »

    codemash

    1.4.0 • Public • Published

    CodeMash.Js

    CodeMash for javascript developers. All the documentation can be found here

    Installation

    Use the package manager codemash to install codemash.

    npm install codemash

    Configuration

    import {config} from 'codemash';
    
    config.init(
    	{
    		secretKey: '<YOUR_SECRET_KEY>',
    		projectId: '<YOUR_PROJECT_ID>',
    	},
    	process.env.NODE_ENV
    );

    See full documentation here

    Database Module

    Get Data:

    import {db} from 'codemash';
    
    // gets all first 100 employees
    export async function getEmployees() {
    	return await db.getRecords('emplpyees', 0, 100);
    }
    
    // gets all first 100 active employees
    // get only first name and last name - projection
    // sort out by created on date in DESC order.
    export async function getActiveEmployees() {
    	const filter = JSON.stringify({is_active: true});
    
    	const response = await db.getRecords(
    		'employees',
    		0,
    		100,
    		{first_name: 1, last_name: 1},
    		filter,
    		{created_on: -1}
    	);
    
    	return response;
    }

    Pagination (by default page size is set to 10):

    await db.getRecords('employees', 0, 100);

    Sort:

    await db.getRecords('employees', 0, 100, {created_on: -1});

    Filter:

    const filter = JSON.stringify({is_active: true});
    await db.getRecords('employees', 0, 100, {created_on: -1}, filter);

    See full documentation here

    Get One Record:

    import {db} from 'codemash';
    
    // gets employee by id
    export async function getEmployeeDetails(id) {
    	const response = await db.getRecord('employees', id);
    	return response;
    }
    
    // gets employee by custom filter
    export async function getEmployeeByUserId(id) {
    	const filter = {userId: id};
    	return await db.getRecordWithFilter(collectionName, filter, null);
    }

    See full documentation here

    TODO Projection:

    Save Data:

    import {db} from 'codemash';
    
    const request = {
    	start: '1588855312059', // Unix time stamp in miliseconds
    	end: '1588855340191', // Unix time stamp in miliseconds
    	employee: 'some_user_id',
    	type: 'paid',
    };
    
    export async function saveHolidaysRequest(request) {
    	const response = await db.saveRecord('holidays', request);
    	return response;
    }

    See full documentation here

    Replace Data:

    import {db} from 'codemash';
    
    export async function replaceEmployeeInformation(id, employee) {
    	return await db.replaceRecord('employees', {_id: id}, employee);
    }

    Update Data:

    import {db} from 'codemash';
    
    export async function activateEmployee(id) {
    	return await db.updateRecord('employees', {_id: id}, {$set: {is_active: 1}});
    }

    See full documentation here

    Delete Data:

    import {db} from 'codemash';
    
    export async function deleteEmployee(id) {
    	return await db.deleteRecord('employees', {_id: id});
    }

    See full documentation here

    Get Taxonomy terms:

    import {db} from 'codemash';
    
    export async function getCountries() {
    	return await db.getTaxonomyTerms('countries');
    }
    
    export async function getCities() {
    	return await db.getTaxonomyTerms('cities');
    }

    Documentation about Terms module you can find here https://docs.codemash.io/microservices/database/taxonomies

    TODO Files Module

    Documentation about Files moduke you can find here

    TODO IAM Module

    Documentation about Membership module you can find here

    Users Authentication

    TODO Notifications Module

    Documentation about Notifications you can find here

    Emails Push

    Install

    npm i codemash

    DownloadsWeekly Downloads

    127

    Version

    1.4.0

    License

    MIT

    Unpacked Size

    285 kB

    Total Files

    19

    Homepage

    codemash.io

    Last publish

    Collaborators

    • avatar
    • avatar