<.> Encodable
Getting startedWhy use Encodable?
Gallery
Guides
Encodable API
Submodule API
Contributing guidelinesSetup local developmentFile organizationBuilds, linting, and testingCommittingPublishingAbout

Contributing guidelines

Setup local development

  1. clone this repo
  2. have yarn install package dependencies and manage the symlinking between packages for you
git clone ...encodable && cd encodable
yarn install
yarn build

File organization

lerna and yarn are used to manage versions and dependencies between packages in this monorepo.

encodable/
lerna.json
package.json
...
packages/
package1/
package.json
...
src/
test/ # unit tests
types/ # typescript type declarations
...
lib/ # commonjs output
esm/ # es module output
...
...

Builds, linting, and testing

Each package defines its own build config, linting, and testing. You can have lerna run commands across all packages using the syntax yarn test (or yarn test:watch for watch mode) from the root encodable directory.

Committing

This repository follows conventional commits guideline for commit messages and has a commitlint hook which will require you to have the valid commit message before committing. You can use npm run commit to help you create a commit message.

Publishing

yarn bump-version-auto
# or manual
yarn bump-version-force
# Then follow the prompt to pick new versions for each package