voltraco / dml Goto Github PK
View Code? Open in Web Editor NEWA data modeling language (for node and the browser)
Home Page: http://dml.sh
License: MIT License
A data modeling language (for node and the browser)
Home Page: http://dml.sh
License: MIT License
I wonder if there is any problem before we start implementing the functionality described in #5 to convert your entire base to es6 and a more modular formatting for the functions?
Ex:
String uuid {
required true
regExp /[0-9]{1,3}.[0-9]{1,3}/
}
I've the following error:
SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode
I was can send a pull request but to solve this just add 'use strict'
on first line of lexer.js
A feature that I deem useful and can be added in future versions if following the purpose of this library is the possibility of passing a formatting function to the field, for example:
/*
* An example data model
*/
Date created
Number id
String name {
required true // this is a comment
gt 2 "Must be greater than 2 characters"
lte 256 "Must be less than or equal to 256 characters"
formatter (str)=> str.toUpperCase()
}
String bio "A bio must be a string" {
lte 140 "A bio must fit into a tweet"
}
Boolean accountType
}
const Models = require('node-dml')
let model = Models.compile(fs.readFileSync('sample.model', 'utf8'))
let result = model({
id: 1337,
created: new Date(),
name: 'Glen Danzig',
accountType: 'awesome'
})
{
data: {
id: 1337,
created: '2016-10-02T13:56:44.931Z',
name: 'GLEN DANZIG', // Formatted in uppercase
accountType: 'awesome'
},
length: 1,
rules: {
accountType: [{
validator: 'type',
message: 'Expected type [Boolean] but got type [String]'
}]
}
}
upon parsing @required
, all subsequent rules will be marked as required, each rule may then specify an optional true
validator.
upon parsing @optional
all subsequent rules will be marked as optional (default), each rule may then specify a required true
validator
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.