equilink-site/CODE_OF_CONDUCT
2025-02-12 17:38:06 +05:30

140 lines
5.6 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Code of Conduct & Contribution Guidelines
Welcome to our project! We expect all contributors to abide by our **Code of Conduct** (outlined below) and adhere to our **Project Contribution Standards**, which specify how to document code, attribute authors, and write Git commit messages.
## 1. Our Pledge
In the interest of fostering an open and welcoming environment, we, as contributors and maintainers, pledge to make participation in our project and our community a harassment-free experience for everyone—regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.
## 2. Expected Behavior
- Be kind and courteous to others.
- Respect differing viewpoints and experiences.
- Gracefully accept constructive criticism.
- Give and receive feedback in a positive manner.
- Collaborate and help each other whenever possible.
## 3. Unacceptable Behavior
- The use of sexualized language or imagery and unwelcome sexual attention.
- Trolling, insulting or derogatory comments, and personal or political attacks.
- Public or private harassment.
- Publishing others private information (e.g., physical or electronic addresses) without explicit permission.
- Other conduct which could reasonably be considered inappropriate.
## 4. Reporting and Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at `[YOUR CONTACT EMAIL HERE]`. The project team will review and investigate all complaints and respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident.
---
# Project Contribution Standards
In addition to general conduct, our project enforces **coding style**, **docstring conventions**, **author attribution**, and **commit message guidelines** to ensure clarity and consistency.
## 5. Docstring Style
We follow the **Google Style Python Docstrings** as documented here:
[https://sphinxcontrib-napoleon.readthedocs.io/en/latest/example_google.html](https://sphinxcontrib-napoleon.readthedocs.io/en/latest/example_google.html)
Please ensure all public functions, classes, and modules include docstrings adhering to this style.
### 5.1 Module-Level Docstring Format
When creating a **new module**, please include a docstring at the top with the following structure (update the content as appropriate):
```python
"""
Module: twitter_connector
=========================
This module implements the TwitterConnector class for interacting with Twitter APIs.
Title: Twitter Connector
Summary: Twitter connector implementation.
Authors:
- @TheBlockRhino
Date: 2024-12-31
Last Updated: 2024-12-31
URLs:
- https://arai-ai.io
- https://github.com/ARAIDevHub/arai-ai-agents
- https://x.com/TheBlockRhino
"""
```
When **modifying an existing module**, add your name to the list of authors, and **update the last updated date**. For example:
```python
#
# Module: twitter_app_auth
#
# This module implements the TwitterAppAuth class for authenticating with the Twitter API using OAuth 1.0a.
#
# Title: Twitter App Auth
# Summary: Twitter app authentication implementation.
# Authors:
# - @TheBlockRhino
# Created: 2024-12-31
# Last edited by: @TheBlockRhino
# Last edited date: 2025-01-04
# URLs:
# - https://arai-ai.io
# - https://github.com/ARAI-DevHub/arai-ai-agents
# - https://x.com/TheBlockRhino
```
Please make sure the rest of the comments in the file are also updated to match your changes, and follow the **Google Style** guidelines for any function/class docstrings.
---
## 6. Git Commit Messages
We encourage **descriptive, consistent commit messages**. Use semantic versioning and tagging where appropriate. For guidelines, see:
[https://www.gitkraken.com/gitkon/semantic-versioning-git-tags](https://www.gitkraken.com/gitkon/semantic-versioning-git-tags)
### 6.1 Examples
- **feat:** Introduce a new feature (`feat: add user login flow`)
- **fix:** Bug fix or patch (`fix: handle null pointer in user data`)
- **docs:** Documentation-only changes (`docs: update readme installation steps`)
- **style:** Changes that do not affect meaning (white-space, formatting, etc.)
- **refactor:** Code change that neither fixes a bug nor adds a feature
- **perf:** Code change that improves performance
- **test:** Add or correct tests
**Example** commit message:
```
feat: add advanced prompt chaining for TwitterConnector
- Created new step_4.py for multi-step Twitter workflow
- Updated docstring for step_3.py with new Authors entry
- Bumped version from 1.2.0 to 1.3.0
```
---
## 7. Adding Tags & Versions
For **major changes** or new releases, we recommend creating a new Git tag using semantic versioning (e.g., `v2.0.0`). Use tags to mark milestones or significant updates, so others can easily reference or roll back to stable states.
---
## 8. Scope
This Code of Conduct and Contribution Standards apply to:
- All repositories under the `[YOUR_ORG/PROJECT]` umbrella.
- Communication channels such as GitHub issues, pull requests, and social media references.
## 9. Attribution
This Code of Conduct is based on the [Contributor Covenant](https://www.contributor-covenant.org), with custom additions to guide documentation practices and commit messages in our project.
---
**Thank you for helping us maintain a welcoming, organized, and productive environment!**
If you have any questions or concerns about this Code of Conduct or the Contribution Standards, please contact `[YOUR CONTACT EMAIL HERE]`.
*Happy coding and contributing!*