raynor
TypeScript icon, indicating that this package has built-in type declarations

0.16.0 • Public • Published

Raynor npm version Build Status Coverage License Dependencies

A TypeScript marshalling and data validation library.

See this article for a tutorial and introduction to Raynor.

We'll add more docs with time, but here's a quick example:

class User {
    @MarshalWith(StringMarshaller)
    name: string;
    @MarshalWith(ArrayOf(NumberMarshaller))
    scoresByDay: number[];
 
    totalScore(): number {
        return this.scoresByDay.reduce((a,b) => a + b, 0);
    }
}
 
const um = new (MarshalFrom(User))();
const u = um.extract(JSON.parse('{"name": "Raynor", "scoresByDay": [10, 20, 30]}'));
console.log(u.totalScore()); // Prints 60

Package Sidebar

Install

npm i raynor

Weekly Downloads

3

Version

0.16.0

License

MIT

Unpacked Size

328 kB

Total Files

129

Last publish

Collaborators

  • horia141