Welcome, and thank you for your interest in contributing to Data-river! Your help makes this project better and helps it grow. Whether you're fixing a bug, working on a feature, or improving documentation, we appreciate your time and effort.
Here’s how you can start contributing to the project.
Before you begin, please review our Code of Conduct. We strive to make this a welcoming community, and following these guidelines ensures a positive environment for everyone.
To contribute to Data-river, follow these steps to get the project running locally on your machine:
-
Fork the repository:
Visit the Data-River repository and click the "Fork" button to create your own copy. -
Clone the fork:
Clone your forked repository to your local machine:git clone https://github.com/YOUR_USERNAME/data-river.git cd data-river
-
Switch to
development
branch. You will create your PR against this branch, notmain
. -
cd data-river/packages/client
-
pnpm install
-
pnpm run dev
-
navigate to http://localhost:5173/dashboard
We maintain a backlog of tasks in our issues section. These tasks are created and curated by the repo maintainers to help guide contributors toward meaningful work. Below is how you can pick a task from the backlog and start working on it:
-
Browse the issues:
Head over to our issues page to explore tasks that are open for contribution. Look for labels likegood first issue
,bug
, orfeature request
to find tasks that match your skill level or interests. -
Pick a task:
Once you find an issue you'd like to work on, leave a comment in the issue thread to let others know that you're taking it on. This helps avoid duplicate work and ensures that the task is being handled. -
Start working:
After you've claimed an issue, follow the steps in the Getting Started section to set up the project locally. Be sure to keep the maintainers updated by commenting on the issue if you run into any problems or need clarification. -
Submit your work:
Once you're done, follow the Submitting Your Work section to create a pull request and get your work reviewed and merged.
We encourage everyone to pick tasks from the backlog so we can work together efficiently and make progress as a team!
When you're ready to submit your contribution, follow these steps:
-
Create a new branch:
Always work on a new branch, not directly on themain
branch. Use a descriptive name for your branch, likefeature/new-feature
orbugfix/fix-crash
:git checkout -b feature/your-branch-name
-
Make your changes: After making the necessary changes, commit them with a clear and concise commit message that describes what you did:
git commit -m "Short description of changes"
-
Push to your fork: Push your changes to your forked repository:
git push origin feature/your-branch
-
Create a pull request (PR): Go to the original repository and open a pull request. Be sure to link the issue you’re addressing and follow any pull request templates.
After you submit your pull request, one of the maintainers will review your changes. During the review process:
-
Feedback:
You may receive feedback or requests for changes. Don't worry—this is a normal part of the contribution process and helps improve the quality of the project. -
Respond to feedback:
Make any requested changes by pushing new commits to your branch. Be sure to address any comments and ask questions if anything is unclear. -
Approval:
Once everything looks good, your pull request will be approved and merged into themain
branch. If there are any issues, we’ll work with you to resolve them.
If you have any questions or run into issues while contributing, we're here to help! You can reach out through the following channels:
- Discord: Join our community on Discord for real-time discussions and support.
- Discussions: Use the Discussions board on GitHub for in-depth conversations, feature ideas, or general help.
- Issue Tracker: If you encounter a bug or issue, feel free to open a new issue in our issue tracker.
We’re excited to have you contribute to Data-river, and we're happy to assist you in any way we can. Don't hesitate to ask for help when needed!