Skip to content

JoinColony/colonyJS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

6507fd2 Β· Jan 30, 2025
Jan 30, 2025
Jan 30, 2025
Sep 1, 2022
Jan 30, 2025
Apr 9, 2024
Feb 21, 2022
Mar 14, 2022
Jan 28, 2025
Sep 1, 2022
Apr 20, 2023
Jun 27, 2023
Jan 28, 2025
Mar 14, 2022
Nov 28, 2017
May 8, 2023
Aug 5, 2020
Mar 19, 2024
Jan 28, 2025
Jan 28, 2025
Jan 28, 2025
Jan 30, 2025
Jun 27, 2023
Jan 28, 2025

Repository files navigation

πŸŽͺ Colony TypeScript libraries

Discord

The Colony TypeScript libraries

We are providing the following packages in this monorepo:

  • @colony/sdk - The development kit to build on top of Colony
  • @colony/colony-js - The Colony TypeScript reference implementation
  • @colony/core - Shared utilities, types and constants for all Colony TypeScript libraries
  • @colony/contractor - A nifty tool that creates Colony Network TypeScript bindings
  • @colony/events - All Colony event types in one! Parse and serialize Colony event metadata
  • @colony/tokens - Pre-built Colony token contract bindings

Developing

To start development on any of the included libraries, make sure you have Node v16.x and pnpm v8.x installed.

Run pnpm run bootstrap first

To install all required dependencies run pnpm run bootstrap (this is important!) the first time, later you can just do pnpm install --frozen-lockfile in the root directory of the repository.

You can run pnpm lint, pnpm typecheck, pnpm test and pnpm build in the root directory (will build all packages) or in the individual package directories.

Please make sure to include a changeset when submitting a PR.

Creating a main release

colonyJS is using changesets to create releases. Here's the workflow:

  1. Create a PR and add a changeset within the PR
  2. Have the PR reviewed and merged into main
  3. changesets will create a release PR which collects all changes that have been merged since the last release
  4. This PR can be merged at any point to then create a new main release

Creating a snapshot (development) release

  1. Push your desired changes to a new branch (do not forget to add a changeset - see above)
  2. Use the "Release a snapshot" action under "Actions" image
  3. Pick your branch that you would like to release a snapshot from image
  4. The snapshot release will be available in npm under 0.0.0-next-TIMESTAMP or @snapshot

Contributing

All contributions are welcome. Please read the Contributing Guidelines and review our Code of Conduct before submitting a PR.

License

GPL-3.0