Contributing to CapiscIO¶
We welcome contributions from developers of all skill levels. Whether you're fixing a typo, improving documentation, or adding new features, your help makes CapiscIO better for everyone.
Ways to Contribute¶
| Contribution Type | Description |
|---|---|
| Bug Reports | Report issues with clear reproduction steps |
| Feature Requests | Suggest improvements or new capabilities |
| Documentation | Fix typos, clarify explanations, add examples |
| Code | Submit bug fixes, features, or optimizations |
| Tests | Improve test coverage and add edge cases |
Project Repositories¶
CapiscIO is organized across multiple repositories:
| Repository | Description |
|---|---|
| capiscio-sdk-python | Python middleware for A2A security |
| capiscio-node | Node.js CLI for validation and testing |
| capiscio-python | Python wrapper for the CLI |
| capiscio-docs | This unified documentation site |
Reporting Issues¶
Open an issue in the relevant repository with:
- Clear description of the problem or suggestion
- Steps to reproduce (for bugs)
- Expected vs actual behavior
- Version information (CLI version, Python version, OS)
- Logs or screenshots if applicable
Issue trackers:
Contributing Code¶
Each repository has its own contributing guidelines:
General Workflow¶
- Fork the repository
- Clone your fork locally
- Create a branch for your changes
- Make changes and commit with clear messages
- Test your changes thoroughly
- Push to your fork
- Open a pull request with a clear description
Contributing Documentation¶
Documentation improvements are always welcome.
Local Setup¶
# Clone your fork
git clone https://github.com/YOUR_USERNAME/capiscio-docs
cd capiscio-docs
# Create virtual environment
python3 -m venv .venv
source .venv/bin/activate
# Install dependencies
pip install -r requirements-docs.txt
# Preview locally
mkdocs serve
Before Submitting¶
Verify your changes:
- Preview renders correctly at
http://localhost:8000 - All links work (no broken references)
- Code examples are correct and tested
- Content displays properly in both light and dark themes
Documentation Structure¶
capiscio-docs/
├── docs/
│ ├── index.md
│ ├── quickstarts/
│ ├── concepts/
│ ├── recipes/
│ ├── reference/
│ └── community/
├── mkdocs.yml
└── requirements-docs.txt
Style Guidelines¶
Writing¶
- Be concise — developers want quick answers
- Use examples — show, don't just tell
- Link related topics — help readers navigate
- Test code samples — ensure examples work
Formatting¶
- Use sentence case for headings
- Include language specifiers in code blocks
- Show expected output for examples
- Use tables for structured information
Example code block:
from capiscio_sdk import SimpleGuard
guard = SimpleGuard()
result = guard.verify_request(request)
# Returns: VerificationResult with success=True/False
Code of Conduct¶
All contributors are expected to:
- Be respectful and inclusive
- Provide constructive feedback
- Follow project guidelines
- Help others learn and grow
See our community standards for details.
Getting Help¶
- Support page — FAQs and troubleshooting
- GitHub Discussions — Ask questions and share ideas
- Issue trackers — Report bugs in the relevant repository