crude v1.0.0
Crude
Creates CRUD RESTfull endpoints for a given route.
Install
npm install crude --save
Quick Start
Crude requires a controller with the following methods and signatures:
var crude = require('crude');
var controller = {
create: function(data) { return Promise(response); }),
read: function(query) { return Promise(response); }),
readLimit: function(query, skip, limit) { return Promise(response); }),
readOne: function(query) { return Promise(response); }),
update: function(query, data) { return Promise(response); }),
count: function(query) { return Promise(response); }),
};
// Create the user CRUD routes
var userCrude = crude('/user', controller, expressApp);
That was it, you now have a RESTfull CRUD API under the route /user
:
- POST
/user
Create a new user. - GET
/user
Get a list of all the users paginated. - GET
/user/:id
Get a single user item. - PUT
/user/:id
Update the user item, expects the entirety of the resource to be updated. - PATCH
/user/:id
Update the user item, expects a part of the resource to be updated. - DELETE
/user/:id
Delete the user item.
HTTP methods were mapped based on RFC7231 Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content: HTTP Method Definitions.
Documentation
Find the complete API Documentation in the wiki.
Stack
This package assumes you have the following stack:
- Express
Release History
- v1.0.0, 03 Nov 2016
- Added the
maxPaginateLimit
option to cap allowed items per pagination.
- Added the
- v0.9.1, 07 Sep 2015
- Added the
multiQueryAnd
option to allow for use of theAND
operator in multiple items filter queries vs the defaultOR
.
- Added the
- v0.9.0, 03 Sep 2015
- No longer performs a "readOne" after an update operation, this can potentially be a breaking change for you.
- v0.8.0, 28 Jul 2015
- Will now return an HTTP Status 200 when no results for reading multiple records (used to return 404).
- v0.7.5, 23 Jul 2015
- Will now allow for GET queries with multiple items per attribute.
- v0.7.4, 09 Dec 2014
- Upgrade all dependencies to latest.
- v0.7.3, 24 Nov 2014
- Better heuristics for detected nodeON Error objects
- v0.7.1, 16 Sep 2014
- Switched CRUD middleware to FIFO.
- Added Query Middleware on all CRUD OPs.
- v0.7.0, 14 Sep 2014
- Middleware are now of express type vs being Promises.
- v0.6.3, 11 Sep 2014
- Issue a HTTP Bad Request error code (400) by default vs Internal Error (500).
- v0.6.2, 11 Sep 2014
- Make config a synch method returning self.
- v0.6.1, 10 Sep 2014
- Changed HTTP Verbs for update to
PUT
andPATCH
, thank you @dmtrs.
- Changed HTTP Verbs for update to
- v0.6.0, 08 Sep 2014
- A complete refactor of the codebase and API has happened, documentation ready, time to hit the spotlight.
- v0.5.13, 01 Sep 2014
- Populates total item count for pagination query.
- Express 4.0 compatible.
- v0.5.12, 06 Aug 2014
- No longer assume that
readLimit
OP result is an array. - Invoke the right methods when performing an update
- No longer assume that
- v0.5.9, 07 Jul 2014
- Pagination limit is now configurable via
opts.paginateLimit
.
- Pagination limit is now configurable via
- v0.5.8, 07 Jul 2014
- if ownUser flag is on then auth is required.
- upgrade
req.host
toreq.hostname
in par with express 4.x
- v0.5.7, 04 Jul 2014
- Exclude
page
andlimit
query variables.
- Exclude
View the rest of the changelog here.
License
Copyright Thanasis Polychronakis
Licensed under the MIT License
8 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago