eloquify

2.0.3 • Public • Published

npm

Eloquify

This small library is Eloquent-like orm for node which is inspired by laravel's eloquent orm. If you switch from laravel project to node project, you will lose all of the eloquent's features. You can use this library as an alternative to query your database in an eloquent way. Like any other node orm, eloquify uses promise.

Installation

$ npm install eloquify

Getting Started

First thing you need to do is to set the database configuration using dbConfig function before executing any query:

const {dbConfig} = require('eloquify')

dbConfig({
    driver: 'pg',
    user: 'postgres',
    host: 'localhost',
    database: 'database',
    password: 'postgres',
    port: 5432,
})

At this time, eloquify only supports PostgreSql and MySql. Set driver configuration to pg to use PostgreSql and my-sql to use MySql. You can omit the port configuration when using my-sql driver.

Features

  • Query Builder
  • Soft Delete
  • Relationship

Example

const posts = await Post
    .as('p')
    .select('p.id, p.content, p.created_at, c.name as category_name')
    .join(Category.as('c'), 'c.id = p.category_id')
    .with('member', { comments: q => q.desc() })
    .has('comments', '>', 10)
    .where('p.created_at', '>', '2021-06-06')
    .where(q => {
        q.where('p.is_public', true).orWhere('m.status', '>', 2)
    })
    .desc()
    .limit(20)
    .get()
    
const post = await Post.create({
    content: 'Hello Bro',
    category_id: 3
})

For full documentation, please visit https://eloquify.ib-ganz.dev/docs/v2. If the link is not working, please visit https://eloquify.kebandigital.com/

If you find a bug, please report it on github.

TODO

  • whereDate, year, month
  • set primary key
  • aggregate

/eloquify/

    Package Sidebar

    Install

    npm i eloquify

    Weekly Downloads

    15

    Version

    2.0.3

    License

    MIT

    Unpacked Size

    122 kB

    Total Files

    42

    Last publish

    Collaborators

    • ib.ganz