Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/graphprotocol/graph-tooling
Monorepo for various tools used by subgraph developers.
https://github.com/graphprotocol/graph-tooling
Last synced: 5 days ago
JSON representation
Monorepo for various tools used by subgraph developers.
- Host: GitHub
- URL: https://github.com/graphprotocol/graph-tooling
- Owner: graphprotocol
- License: apache-2.0
- Created: 2018-06-15T09:15:19.000Z (over 6 years ago)
- Default Branch: main
- Last Pushed: 2024-05-01T22:37:42.000Z (8 months ago)
- Last Synced: 2024-05-01T23:58:07.903Z (8 months ago)
- Language: TypeScript
- Homepage: https://thegraph.com/docs
- Size: 6.63 MB
- Stars: 367
- Watchers: 37
- Forks: 185
- Open Issues: 214
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE-APACHE
Awesome Lists containing this project
- best-of-crypto - GitHub - 33% open · ⏱️ 27.05.2024): (Web 3.0)
README
# The Graph Tooling
Monorepo for various tools used by subgraph developers.
This repository houses the following tools:
| NPM | Name |
| --- | --- |
|[![npm (scoped)](https://img.shields.io/npm/v/@graphprotocol/graph-cli.svg?color=success)](https://www.npmjs.com/package/@graphprotocol/graph-cli)| [`@graphprotocol/graph-cli`](./packages/cli) |
[![npm (scoped)](https://img.shields.io/npm/v/@graphprotocol/graph-ts.svg?color=success)](https://www.npmjs.com/package/@graphprotocol/graph-ts)|[`@graphprotocol/graph-ts`](./packages/ts)|## Contributing
We welcome contributions to this repository. Please follow the
[Code of Conduct](https://github.com/graphprotocol/graph-node/blob/master/CODE_OF_CONDUCT.md) for
all the communications.To run this project locally:
1. Clone the repository
2. Make sure you have [Node.js](https://nodejs.org/en) `>=20.x` installed
3. Make sure you have [`pnpm` installed](https://pnpm.io/installation)
4. Run `pnpm install` to install dependencies
5. Run `pnpm build` to build the packages
6. Run `pnpm test` to run the tests## Release process
We use `changeset` to manage releases. Every PR should include a changeset file. The release process
is as follows:1. Author creates the PR with changes and runs `pnpm changeset` to create a changeset file to
summarize the changes.
2. When the PR is merged to `main`, a Github Action will run and create a PR with the version bump
and changelog.
3. We will merge the bot generated PR to `main`.
4. A Github Action will run and publish the new version to npm.Helpful links:
- [Semver official docs](https://semver.org/)
- [Changesets](https://github.com/changesets/changesets)
- [Snapshot release](https://github.com/changesets/changesets/blob/main/docs/snapshot-releases.md)### Stable release example
When PRs are merged and to `main` we can choose to merge the bot generated changeset PR to `main`
and it will publish a new version to npm.Example of a `graph-client` release: https://github.com/graphprotocol/graph-client/pull/295
### Alpha release example
Every PR to `main` that includes a changeset file will create a new alpha version.
Example of `graph-client` snapshot release:
https://github.com/graphprotocol/graph-client/pull/178#issuecomment-1214822036## License
Copyright © 2018-2019 Graph Protocol, Inc. and contributors.
The Graph CLI is dual-licensed under the [MIT license](LICENSE-MIT) and the
[Apache License, Version 2.0](LICENSE-APACHE).Unless required by applicable law or agreed to in writing, software distributed under the License is
distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either expressed or
implied. See the License for the specific language governing permissions and limitations under the
License.