0.5.0 • Published 5 years ago

@supermodel/lib v0.5.0

Weekly downloads
24
License
ISC
Repository
github
Last release
5 years ago

Supermodel npm packages CircleCI

Collection of npm packages supporting supermodel.io

Table of Contents

Introduction

TODO

Packages

@supermodel/cli README Version

Main package used for installing system wide binary supermodel for manipulating schemas

@supermodel/lib README Version

Collection of utils on top of json schema. Used in @supermodel/cli and on supermodel.io

@supermodel/file README Version

Utils for manipulating json schema on file system. Used in @supermodel/cli

Contributing

We are using lerna for managing all packages together

Installation

  1. yarn global add lerna@3.10 (npm i -g lerna@3.10) - to install orchstrating tool lerna
  2. yarn bootstrap - resolves and install root and packages dependencies

    • ⚠️ use this instead of yarn [install]
    • ensures presence of global installation of lerna and install it for you when missing
  3. 🤔 optional When developing against local supermodel.io instance setup .env for CLI. Choose symlink or copy:

    • symlink: ln -s ./packages/cli/.env.development ./packages/cli/.env
    • copy: cp ./packages/cli/.env.development ./packages/cli/.env and change variables for your needs

Usage

  • yarn build:watch
    • should be running while you want to use ./packages/cli/bin/supermodel or supermodel after yarn local:install
  • yarn test:watch - watch tests in all packages at once
  • yarn build - make production builds
  • yarn test - run lint, type checks and run tests in all packages at once
    • yarn test:lint - code linting
    • yarn test:types - type checks
    • yarn test:unit - unit tests

Local linking

To try @supermodel/cli locally with simple supermodel command we need to link all packages. There is shortcut to link all packages

  • yarn local:install
  • yarn local:uninstall

Principes

Every new module which manipulates with schemas (conversion, resolving, transforming etc.) or helps to work with schemas and environment around should be placed inside @supermodel/lib. Exposed modules for outside usage should return a value, or throw an error. Or promise analogy (resolve, reject) for async modules.

TODO

Publishing

lerna publish

  • useses lerna publish
  • It is most streightforward way to publish. It compile typescript with yarn build command, tag changed packages with new versions and publish it to npm

A Good API Project

supermodel.io, and supermodel CLI are Good API non-profit projects, aimed at promoting modern, reusable, and sustainable data modeling.

License

The MIT License (MIT) 2019 Good API

0.5.0

5 years ago

0.4.23

6 years ago

0.4.22

6 years ago

0.4.22-alpha.0

6 years ago

0.4.21

6 years ago

0.4.20

6 years ago

0.4.19

6 years ago

0.4.18

6 years ago

0.4.17

6 years ago

0.4.16

6 years ago

0.4.15

6 years ago

0.4.14

6 years ago

0.4.13

6 years ago

0.4.12

6 years ago

0.4.11

6 years ago

0.4.10

6 years ago

0.4.9

6 years ago

0.4.8

6 years ago

0.4.7

6 years ago

0.4.6

6 years ago

0.4.5

6 years ago

0.4.4

6 years ago

0.4.3

6 years ago

0.4.2

6 years ago

0.4.1

6 years ago

0.4.0

6 years ago

0.3.4

7 years ago