Welcome Contributors
Syra is an open-source project, and we welcome contributions from the community! Whether you’re fixing bugs, adding features, improving documentation, or sharing ideas, your input helps make Syra better for everyone.Ways to Contribute
Report Bugs
Found an issue? Report it through the Telegram bot
/feedback command or GitHub IssuesSuggest Features
Have ideas for new features? Share them via Telegram feedback or GitHub Discussions
Improve Documentation
Help improve our docs by fixing typos, clarifying instructions, or adding examples
Write Code
Contribute code improvements, bug fixes, or new features to the project
Getting Started
Repository Structure
Syra is organized as a monorepo with multiple packages:| Package | Description |
|---|---|
api | Backend API and services |
frontend | Next.js dashboard and app |
landing | Marketing/landing site (Vite + React) |
ai-agent | AI agent web app (chat, marketplace, x402) |
docs / documentation | Docusaurus documentation site |
api-playground | API testing and exploration UI |
prediction-game | Prediction game app and server |
payai-x402-example | PayAI x402 v2 example server |
mcp-server | MCP server exposing Syra API tools |
Development Setup
-
Fork the repository
-
Install dependencies
-
Create a branch
-
Make your changes
- Write clean, well-documented code
- Follow existing code style and conventions
- Add tests for new functionality
-
Test your changes
-
Commit and push
-
Create a Pull Request
- Go to the original repository on GitHub
- Click “New Pull Request”
- Describe your changes in detail
Contribution Guidelines
Code Quality
- Follow existing patterns: Maintain consistency with the current codebase
- Write clear comments: Explain complex logic and decision-making
- Keep it focused: One feature or fix per pull request
- Test thoroughly: Ensure your changes don’t break existing functionality
Commit Messages
Write clear, descriptive commit messages:Pull Request Guidelines
When submitting a pull request:- Provide context: Explain what problem you’re solving and why
- Reference issues: Link to related GitHub issues if applicable
- Include screenshots: For UI changes, show before/after
- Update documentation: Add or update docs for new features
- Be responsive: Address feedback and questions promptly
All pull requests are reviewed by maintainers. Be patient and open to feedback - we’re here to help make your contribution the best it can be!
Documentation Contributions
Improving documentation is one of the most valuable contributions you can make.Running the Docs Locally
http://localhost:3000.
Documentation Standards
- Clear and concise: Use simple language and short sentences
- Include examples: Show practical usage with code snippets
- Keep it current: Update docs when features change
- Check for typos: Proofread before submitting
Reporting Bugs
Help us fix issues by providing detailed bug reports.What to Include
- Clear description: What happened vs. what you expected
- Reproduction steps: Exact steps to reproduce the issue
- Environment: Platform, browser, version numbers
- Screenshots/logs: Visual evidence or error messages
- Impact: How does this affect your use of Syra?
Where to Report
- Telegram bot: Use
/feedbackcommand for quick reports - GitHub Issues: For detailed technical issues
- X (Twitter): For general feedback and discussions
Feature Requests
We love hearing your ideas for new features!Before Requesting
- Search existing requests: Check if someone already suggested it
- Consider the scope: Does it fit Syra’s mission and goals?
- Think about implementation: How might it work technically?
What to Include
- Use case: Why is this feature needed?
- Expected behavior: How should it work?
- Examples: Similar features in other tools
- Priority: How important is this to you?
Code of Conduct
We’re committed to fostering an inclusive and welcoming community.Our Standards
- Be respectful: Treat everyone with kindness and professionalism
- Be constructive: Provide helpful feedback and suggestions
- Be collaborative: Work together toward common goals
- Be patient: Remember that everyone is learning
Unacceptable Behavior
- Harassment, discrimination, or offensive comments
- Trolling, insulting, or derogatory remarks
- Publishing others’ private information
- Any conduct that creates a hostile environment
Recognition
We value all contributions and recognize our contributors:- Contributors are listed in project documentation
- Significant contributions are highlighted in release notes
- Active contributors may be invited to become maintainers
Questions?
Not sure where to start or have questions about contributing?- Ask in the Telegram bot using
/feedback - Reach out on X (Twitter)
- Check the documentation