
Security News
Open Source Maintainers Feeling the Weight of the EU’s Cyber Resilience Act
The EU Cyber Resilience Act is prompting compliance requests that open source maintainers may not be obligated or equipped to handle.
Data model for RESTful API clients, made simple. In essence, an ES6 class with support for typed schemas, CRUD methods with schema conversion, and inheritance helpers for ES5 environments. Straightforward, lightweight, and has good code coverage via tests and Flow.
This has seen a complete rewrite. I've slimmed the library down tremendously to focus on the most vital features. See 1.0.x to compare.
Datacore is packaged in a format compatible with both AngularJS and CommonJS.
Rich web applications consume and generate lots of data. It's common to organise it by breaking it up into well-defined "models" that correspond to resources on a RESTful API backend. A model library handles the boilerplate code so you don't have to.
Install via bower:
bower i --save datacore
# or
bower i --save-dev datacore
The angular build uses $q
and $http
instead of es6-promise
and xhttp
,
but still depends on lodash
. Make sure you have window._
available.
You'll need main-bower-files in your build system to organise dependency order. Datacore specifies angular and lodash as dependencies but doesn't bundle them. main-bower-files makes sure they'll be loaded in the right order.
In your app's configuration, require the module and factory Datacore
.
// ES5
angular.module('MyApp', ['Datacore'])
.factory('Record', ['Datacore', function(Datacore) {
// Your base model.
var Record = Datacore.derive('Record');
// Base URL to your server.
Record.prototype.$path = function() {return '/my-api-url'};
// Example schema.
Record.prototype.$schema = {
id: '',
value: null
}
return Record;
}]);
// ES6
angular.module('MyApp', ['Datacore'])
.factory('Record', ['Datacore', function(Datacore) {
// Your base model.
class Record extends Datacore {
// Base URL to your server.
$path() {return '/my-api-url'}
// Example schema (immutable).
get $schema() {return {
id: '',
value: null
}}
}
return Record;
}]);
To use CommonJS, you need a build system with browserify or webpack.
Install via npm:
npm i --save-dev datacore
Then require in your application:
var Datacore = require('datacore');
See basic configuration above.
The documentation needs a complete rewrite now.
FAQs
Data model for RESTful API clients, made dead simple.
The npm package datacore receives a total of 11 weekly downloads. As such, datacore popularity was classified as not popular.
We found that datacore demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
The EU Cyber Resilience Act is prompting compliance requests that open source maintainers may not be obligated or equipped to handle.
Security News
Crates.io adds Trusted Publishing support, enabling secure GitHub Actions-based crate releases without long-lived API tokens.
Research
/Security News
Undocumented protestware found in 28 npm packages disrupts UI for Russian-language users visiting Russian and Belarusian domains.