# @js-ql/scaffold

> A library that is used to generate object blueprints. Inspired by graphql

Latest version **1.1.2** (published 2019-06-26) · MIT license · 0 weekly downloads

## Install

```sh
npm install @js-ql/scaffold
pnpm add @js-ql/scaffold
yarn add @js-ql/scaffold
bun add @js-ql/scaffold
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.1.2 |
| Published | 2019-06-26 |
| First published | 2019-06-05 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 0 |
| Unpacked size | 7.2 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 2 |
| Author | lloydaf |
| Maintainers | js-ql |
| Keywords | scaffold, library, generator, javascript, blueprint, graphql |

## Links

- npm: https://www.npmjs.com/package/@js-ql/scaffold
- Repository: https://github.com/js-ql/scaffold
- Homepage: https://github.com/js-ql/scaffold#readme
- Issues: https://github.com/js-ql/scaffold/issues
- npm.io page: https://npm.io/package/@js-ql/scaffold

## Alternatives

- [apollo-link-http-common](https://npm.io/package/apollo-link-http-common.md) — 879.0K weekly downloads
- [react-relay](https://npm.io/package/react-relay.md) — 336.8K weekly downloads
- [relay-test-utils](https://npm.io/package/relay-test-utils.md) — 181.6K weekly downloads
- [@vendure/core](https://npm.io/package/@vendure/core.md) — 14.8K weekly downloads
- [@pnpm/deps.graph-sequencer](https://npm.io/package/@pnpm/deps.graph-sequencer.md) — 13.4K weekly downloads

## Recent versions

- 1.1.2 (latest) — 2019-06-26
- 1.1.1 — 2019-06-22
- 1.1.0 — 2019-06-16
- 1.0.0 — 2019-06-05

## README

# <img src="assets/jsql.svg" alt="JSQL Logo" width="100" height="100" align="center">Scaffold

[![npm version](https://badge.fury.io/js/%40js-ql%2Fscaffold.svg)](https://badge.fury.io/js/%40js-ql%2Fscaffold)

Scaffold is a JavaScript library that is used to generate objects using templates inspired from GraphQL.

## Installation

```console
npm install --save @js-ql/scaffold
```

## Usage

### Simple Usage

```javascript
const { scaffold } = require('@js-ql/scaffold')

const queryString = `
{
  name
  age
}`

console.log(scaffold(queryString))

/*
{
  name: null,
  age: null
}
 */



```

### With Types

```javascript
const { scaffold } = require('@js-ql/scaffold')

const queryString = `
{
  name: String
  friends: Array
}
`


console.log(scaffold(queryString))
/*
{
  name: '',
  friends: [],
}
*/

```

### By Defining Schemas

```javascript
const { Registry } = require('@js-ql/scaffold')

const queryString = `
define Person {
  name: String
  friends: Array
}
`
// Initial Registration

Registry.register(queryString)

.
.
.

// When you need it

console.log(Registry.scaffold('Person'))

/*
{
  name: '',
  friends: [],
}
*/

```

### Multiple Schemas

```javascript
const { Registry } = require('@js-ql/scaffold')

const queryString = `
  define Friend {
    name
    age
  }
  define Person {
    name: String
    friends: Array
    bestFriend: Friend
  }`


Registry.register(queryString)

.
.
.

console.log(Registry.scaffold('Person'))

/*
{
  name: '',
  friends: [],
  bestFriend: {
    name: null,
    age: null
  }
}
*/

```

Note: Make sure that schemas that you want to use inside another schema are defined before you use it.

---
_Source: https://npm.io/package/@js-ql/scaffold · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
