|
1 | | - |
| 1 | + |
2 | 2 |
|
3 | | -# **Hello there friend! 👋** |
| 3 | +# Welcome to the OpenOps Contributing Guide 👋 |
4 | 4 |
|
| 5 | +Thank you for considering contributing to OpenOps — **any contribution is welcome!** |
5 | 6 |
|
6 | | -Thank you for considering contributing to OpenOps - **any contribution is welcome\!** |
| 7 | +Your involvement helps improve FinOps automation for everyone, and this guide outlines how to contribute effectively. |
7 | 8 |
|
8 | | -Your involvement will help improve FinOps automation for everyone, and this guide outlines how you can do it effectively. |
| 9 | +## 🌟 How You Can Contribute |
9 | 10 |
|
10 | | -## **🌟 How You Can Contribute** |
| 11 | +Here are some common ways to contribute to OpenOps: |
11 | 12 |
|
12 | | -* **Reporting and fixing bugs**: If you encounter any issues, please open an issue to inform us. Please let us know if you plan to raise a PR for the issue. |
13 | | -* **Suggesting Features**: Have ideas for improvements? Propose a feature for discussion. We love every idea\! |
14 | | -* **Improving Documentation**: Notice any gaps or errors in our documentation? Submit a PR with your corrections or enhancements in our [docs repository](https://github.com/openops-cloud/docs). |
15 | | -* **Sharing Use Cases**: Real-world examples help others see the potential of OpenOps in their organizations. |
16 | | -* **Joining the Community:** We welcome you in the OpenOps [Slack community](https://slack.openops.com)**.** |
17 | | -* **Spreading the Word**: Tell others about OpenOps through blog posts, talks, or social media ❤️ |
| 13 | +* **[Report bugs](#-reporting-bugs)** |
| 14 | +* **[Suggest features](#-suggesting-features)** |
| 15 | +* **[Submit pull requests](#-creating-a-pull-request)** |
| 16 | +* **Improve documentation**: Notice any gaps or errors? [Open an issue](https://github.com/openops-cloud/docs/issues/new) in our [Docs repository](https://github.com/openops-cloud/docs). Feel free to submit a PR with corrections. If you open a PR, please reference the issue number. |
| 17 | +* **Spread the word**: Share your experience with OpenOps through blog posts, talks, or social media ❤️ |
| 18 | +* **Join the OpenOps Community** on Slack to discuss ideas, ask questions, connect with other users and contributors: |
| 19 | + [](https://slack.openops.com) |
18 | 20 |
|
19 | | -## **🚀 Creating a Pull Request** |
| 21 | +### 🐛 Reporting Bugs |
20 | 22 |
|
21 | | -To contribute code or documentation: |
| 23 | +If you find a bug: |
22 | 24 |
|
23 | | -1. **Fork the Repository**: Create your own copy of the repository. |
| 25 | +1. **[Search existing issues](https://github.com/openops-cloud/openops/issues)** to check if it has already been reported. |
| 26 | +2. **[Open a new issue](https://github.com/openops-cloud/openops/issues/new?template=bug.md)** if one does not exist. Please include: |
| 27 | + * A descriptive title |
| 28 | + * Steps to reproduce |
| 29 | + * Expected and actual behavior |
| 30 | + * Screenshots or logs (if applicable) |
| 31 | + * Your environment (OS, browser, version, etc.) |
24 | 32 |
|
25 | | -2. **Create a Branch**: Use a descriptive name, e.g., `fix-issue-xyz` or `feature-abc`. |
| 33 | +We take every bug report seriously and appreciate your help in making OpenOps better. |
26 | 34 |
|
27 | | -3. **Make Changes**: Implement your changes in the new branch. |
| 35 | +Please let us know if you plan to [submit a PR](#-creating-a-pull-request) to address the issue. |
28 | 36 |
|
29 | | -4. **Test Your Changes**: Ensure your code works as expected and doesn't break existing functionality. |
| 37 | +### 💡 Suggesting Features |
30 | 38 |
|
31 | | -5. **Commit Changes**: Write clear, concise commit messages. |
| 39 | +To propose a new feature: |
32 | 40 |
|
33 | | -6. **Push to Your Fork**: Push your changes to your GitHub fork. |
| 41 | +1. **[Search existing issues](https://github.com/openops-cloud/openops/issues)** to ensure it hasn't already been suggested. To support an existing suggestion, react with 👍. |
| 42 | +2. **[Propose a feature](https://github.com/openops-cloud/openops/issues/new?template=feature-request.md)** using the Feature Request template. Include: |
| 43 | + * A clear description of the feature |
| 44 | + * The problem it solves |
| 45 | + * Any relevant context or examples |
| 46 | + * Potential implementation ideas, if you have them |
34 | 47 |
|
35 | | -7. **Open a Pull Request**: Navigate to the original repository and [open a pull request](https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/creating-a-pull-request) from your forked repository. |
| 48 | +You can also discuss feature ideas in the [Slack community](https://slack.openops.com). |
36 | 49 |
|
37 | | -8. **Describe Your Changes**: In the PR description, explain what your changes do and why they're needed. |
| 50 | +[](https://slack.openops.com) |
38 | 51 |
|
39 | | -**Note**: For any significant changes, we recommend discussing them via an issue or on our Slack before implementation to ensure alignment and gather feedback. |
| 52 | +We love innovative ideas that help take OpenOps to the next level! |
40 | 53 |
|
41 | | -## **🐛 Reporting Bugs** |
| 54 | +### 🚀 Creating a Pull Request |
42 | 55 |
|
43 | | -If you find a bug: |
| 56 | +You're welcome to submit PRs that address reported bugs or add new features. |
44 | 57 |
|
45 | | -1. **Search Existing Issues**: Check if the issue has already been reported. |
46 | | -2. **Open a New Issue**: If not found, create a new issue with: |
47 | | - * A descriptive title. |
48 | | - * Steps to reproduce the issue. |
49 | | - * Expected and actual behavior. |
50 | | - * Screenshots or logs, if applicable. |
51 | | - * Your environment (OS, browser, version, etc.). |
| 58 | +External contributors often submit PRs introducing integrations with tools relevant to the FinOps community, such as cloud platforms, optimization services, and project management tools. |
52 | 59 |
|
53 | | -We take every bug report seriously and appreciate your help in making OpenOps better\! |
| 60 | +Before making significant changes, please discuss them in the relevant [issue](https://github.com/openops-cloud/openops/issues) or in the [OpenOps Community](https://slack.openops.com) to ensure alignment and gather feedback. |
54 | 61 |
|
55 | | -## **💡 Suggesting Features** |
| 62 | +To contribute code changes: |
56 | 63 |
|
57 | | -To propose a new feature: |
| 64 | +1. **Fork this repository** to create your own copy. |
| 65 | +2. **Create a branch** with a descriptive name (e.g., `fix-issue-xyz`, `feature-abc`). |
| 66 | +3. **Set up the [development environment](https://docs.openops.com/contributing/development-environment)**. |
| 67 | +4. **Make changes** in your branch. See the [OpenOps Contributing Guide](https://docs.openops.com/contributing) for guidance on specific tasks, such as [choosing an authentication method](https://docs.openops.com/contributing/authentication) or [developing an integration](https://docs.openops.com/contributing/contributing-an-integration). When contributing: |
| 68 | + * Follow existing code style and patterns |
| 69 | + * Write clear, self-documenting code with descriptive variable and function names |
| 70 | + * Add comments for complex or non-obvious logic |
| 71 | +5. **Test your changes**. Add or update tests to ensure your code works as expected and doesn't break existing functionality. |
| 72 | +6. **Commit changes** with clear, concise commit messages. |
| 73 | +7. **Push to your fork**. |
| 74 | +8. **Open a Pull Request** from your fork to this repository. |
| 75 | +9. **Describe your changes** clearly in the PR description. |
58 | 76 |
|
59 | | -1. **Search Existing Issues**: Ensure the feature hasn't been suggested. |
60 | | -2. **Open a New Issue**: If not found, create a new issue and tag it as an `improvement`. Include: |
61 | | - * A clear description of the feature. |
62 | | - * The problem it solves. |
63 | | - * Any relevant context or examples. |
64 | | - * Potential implementation approaches, if you have ideas. |
65 | | -3. **Through Slack:** Discuss your ideas with the OpenOps team in the [Slack community](https://slack.openops.com). |
| 77 | +*By contributing to OpenOps, you agree that your work will be licensed under the project's [Apache 2.0 License](./LICENSE).* |
66 | 78 |
|
67 | | -[](https://slack.openops.com) |
68 | | - |
69 | | -We love innovative ideas that can take OpenOps to the next level\! |
| 79 | +## 🎉 Recognition |
70 | 80 |
|
71 | | -## **📝 Code Style Guidelines** |
| 81 | +We believe in recognizing contributions. Once accepted, contributors will be: |
72 | 82 |
|
73 | | -When contributing code, please follow these guidelines: |
| 83 | +* Mentioned in the [release notes](https://github.com/openops-cloud/openops/releases) |
| 84 | +* Considered for early access to new features |
74 | 85 |
|
75 | | -* Follow existing code style and patterns in the repository. |
76 | | -* Write clear, self-documenting code with descriptive variable and function names. |
77 | | -* Include comments for complex logic or non-obvious behavior. |
78 | | -* Write tests for new functionality and any changes. |
79 | | -* Update documentation for user-facing changes. |
| 86 | +## 🙏 Many Thanks to Other OSS Projects! |
80 | 87 |
|
81 | | -## **🤝 Community** |
| 88 | +OpenOps builds on and extends work from other open-source projects, such as [ActivePieces](https://github.com/activepieces/activepieces), [Baserow](https://gitlab.com/baserow/baserow), [Superset](https://github.com/apache/superset), [React Flow](https://github.com/xyflow/xyflow), and more. |
82 | 89 |
|
83 | | -Join our community to discuss ideas, ask questions, and connect with other contributors: |
84 | | - |
85 | | -[](https://slack.openops.com) |
| 90 | +Huge thanks to the OSS community — we're proud to be part of it and contribute back. |
86 | 91 |
|
87 | | -## **🎉 Recognition** |
88 | | - |
89 | | -We believe in recognizing contributions. Contributors will be: |
90 | | - |
91 | | -* Mentioned in the release notes once their contribution is accepted |
92 | | -* Considered for early access to new features. |
93 | | - |
94 | | -## **❓ Questions?** |
| 92 | +## ❓ Questions? |
95 | 93 |
|
96 | 94 | If you have any questions about contributing, please reach out: |
97 | 95 |
|
98 | 96 | [](https://slack.openops.com) |
99 | 97 |
|
100 | | -We appreciate your contributions and look forward to collaborating with you\! |
101 | | - |
102 | | -## **🙏 Many Thanks to other OSS projects!** |
103 | | - |
104 | | -OpenOps leverages code from other open-source projects, such as [ActivePieces](https://github.com/activepieces/activepieces), [Baserow](https://gitlab.com/baserow/baserow), [Superset](https://github.com/apache/superset), [React Flow](https://github.com/xyflow/xyflow), and more. Huge thanks to the OSS community; we are thrilled to be a part of it and contribute back. |
105 | | - |
106 | | ---- |
107 | | - |
108 | | -*By contributing to OpenOps, you agree that your contributions will be licensed under the project's [Apache 2.0 License](./LICENSE).* |
109 | | - |
| 98 | +We appreciate your contributions and look forward to collaborating with you! |
0 commit comments