Skip to content

Latest commit

 

History

History
102 lines (68 loc) · 4.19 KB

CONTRIBUTING.md

File metadata and controls

102 lines (68 loc) · 4.19 KB

Contributing to graz

Thanks for showing interest to contribute to graz <3

The following is a set of guidelines for contributing to graz, which are hosted in the Graz Organization on GitHub. These are mostly guidelines, not rules. Use your best judgment, and feel free to propose changes to this document in a pull request.

Code of Conduct

This project and everyone participating in it is governed by the graz Code of Conduct. By participating, you are expected to uphold this code.

Brief of graz

What is graz?

graz is a collection of React hooks containing everything you need to start working with the Cosmos ecosystem.

Why this library exist?

Currently there is no stable library for cosmos wallets, in ethereum there's wagmi with hook patterns that we inspired from.

What should I know before I get started?

It would be better you know these things:

Setup the Project

The following steps will get you up and running to contribute to graz:

  1. Fork the repo (click the Fork button at the top right of this page)

  2. Clone your fork locally

    git clone https://github.com/<your_github_username>/graz.git
    cd graz
  3. Setup all the dependencies and packages by running pnpm. This command will install dependencies and bootstrap the repo.

    We are using pnpm as the default package manager, we suggest to you to do the same.

Directory structure

Repository

├── packages/             # local packages
│   ├── eslint-config/    # project eslint configuration
│   ├── prettier-config/  # project prettier configuration
│   └── graz/             # graz
├── docs/                 # documentation website
└── example/              # example website (nextjs + chakra ui)

graz

├── src/                  # main project entry point
│   ├── actions/          # core functions
│   ├── chains/           # collections of chains
│   └── hooks/            # collection of hooks
│   └── provider/         # application state providers
│   └── store/            # application state stores
│   └── types/            # shared types
├── dist/                 # output

Development

  • pnpm install: bootstrap the entire project
  • pnpm dev: compiles graz and start the development server of the example app
  • pnpm docs dev: start the documentation website
  • pnpm example dev: start the example app

Pull Request

Pull requests need only the 👍 of one collaborator to be merged.

Commit Convention

Before you create a Pull Request, please check whether your commits comply with the commit conventions used in this repository.

When you create a commit we kindly ask you to follow the convention category(scope or module): message in your commit message while using one of the following categories:

  • feat / feature: all changes that introduce completely new code or new features
  • fix: changes that fix a bug (ideally you will additionally reference an issue if present)
  • refactor: any code related change that is not a fix nor a feature
  • docs: changing existing or creating new documentation (i.e. README, docs for usage of a lib or cli usage)
  • build: all changes regarding the build of the software, changes to dependencies or the addition of new dependencies
  • test: all changes regarding tests (adding new tests or changing existing ones)
  • ci: all changes regarding the configuration of continuous integration (i.e. github actions, ci system)
  • chore: all changes to the repository that do not fit into any of the above categories

If you are interested in the detailed specification you can visit https://www.conventionalcommits.org/ or check out the Angular Commit Message Guidelines.

License

By contributing your code to the graz GitHub repository, you agree to license your contribution under the MIT license.