-
Notifications
You must be signed in to change notification settings - Fork 141
Contributing
Thank you for showing interest in contributing to Graphic Walker. We value and appreciate your willingness to join our community. Whether it's through coding, answering questions, building open-source projects, writing articles and tutorials, or creating YouTube videos, every contribution helps and is highly appreciated!
Before submitting a Pull Request (PR) to our repository, please follow these steps:
- Check for Similar Issues: Ensure that there are no existing issues similar to yours. This helps in reducing duplicates and focusing efforts where they're most needed.
-
Create an Issue: If you find no similar issues, go ahead and create a new one. This step is crucial for a few reasons:
- Context and History: Some issues might have a history or context that could impact how they should be addressed. Understanding this background is essential for an effective solution.
- Communication: Engaging with the Kanaries team through issues allows for a more collaborative approach. It provides an opportunity to get suggestions and necessary information, potentially saving you time and effort.
- Discussion and Collaboration: Developers like @observedobserver are open to discussing different approaches, and an online meeting can be arranged for more complex issues.
- Make sure you de-couple style / typo commits with feature/fix. "prettier" is not welcome for it may mix real fix diff and style diff and make it hard to review.
While Graphic Walker currently does not enforce a strict linting rule set, we do follow certain stylistic preferences:
- Tab Size: Set your tab size to 4. Yes, it's 2023 now, everyone has a wide, high-resolution screen that can display more information in a line. You don't need to use tabsize = 2 to save space on your 4k screen.
- Print Width: printwidth > 120, same reason.
Graphic Walker uses a yarn mono-repo structure for its organization. Here are the key components:
-
packages/graphic-walker
: This is the core component of Graphic Walker. It contains the main functionalities and libraries that power Graphic Walker. -
packages/playground
: This package is a demo application built using Graphic Walker. It's a great place to see how Graphic Walker is implemented in a project and can serve as a sandbox for your ideas and contributions.
To contribute effectively, setting up your development environment is crucial. Here are the steps:
- Fork and Clone the Repo: Start by forking the repository and then cloning it to your local machine.
-
Install Dependencies: Navigate to the cloned directory and run
yarn install
to install all necessary dependencies. -
Running Locally: To run Graphic Walker locally, use
npm run dev
within thepackages/graphic-walker
directory. For the playground, use the same command in thepackages/playground
directory.
- Branching: Always create a new branch for your work. This keeps the main branch clean and your history organized.
- Committing Changes: Make small, frequent commits. This makes it easier to understand and review your contributions.
- Pull Requests: Once you're ready, submit a pull request against the main branch of the Graphic Walker repository. Ensure that your PR has a clear title and description of the changes you've made.
- Code Reviews: After submitting your PR, one of the Kanaries team members will review it. Be open to feedback and discussion to refine your contribution.
- Merging: Once your PR is approved, it will be merged into the main branch.
Being part of the Kanaries community goes beyond code contributions. Stay active in discussions, offer help to others, and keep up with the latest developments. Your involvement is key to the success of Graphic Walker!
Remember, every contribution, no matter how small, helps in making Graphic Walker better. We're excited to see your contributions and thank you for being a part of our community!