Datran
This library is inspired by the REST APIS Best practices & the Fractal library.
Use Case: API Response Formatter
** NOTE ** This is a work in Progress
Quick Example
const express = require('app')
const datran = require('datran')
let app = express()
app.get('/user', async function(req, res) {
let resource = datran.item(await User.find(1))
let data = await datran.create(resource, new UserTransformer()).toObject()
res.status(200).json(data)
})
const { Transformer } = require('datran')
const UserTransformer = Transformer.create({
transform(user) {
return {
id: user.get('_id'),
full_name: user.get('fullName')
}
}
})
or
const { Transformer } = require('datran')
class UserTransformer extends Transformer {
transform(user) {
return {
// formatted user data
}
}
}
Embedded Resources
TODO Docs
Resource Types
TODO Docs
Custom Data Serializer
TODO Docs
Custom Fields Parser
TODO Docs