- Add CONTRIBUTING.md, CODE_OF_CONDUCT.md, SECURITY.md - Add issue templates and PR template - Add SUPPORT.md and FUNDING.yml - Improve project visibility and contributor experience
148 lines
3.4 KiB
Markdown
148 lines
3.4 KiB
Markdown
# Contributing to ALwrity
|
|
|
|
Thank you for your interest in contributing to ALwrity! 🚀 We welcome contributions from the community and appreciate your help in making this AI-powered digital marketing platform even better.
|
|
|
|
## 🤝 How to Contribute
|
|
|
|
### 1. **Report Issues**
|
|
- Use our [GitHub Issues](https://github.com/AJaySi/ALwrity/issues) to report bugs or request features
|
|
- Check existing issues before creating new ones
|
|
- Provide clear descriptions and steps to reproduce bugs
|
|
|
|
### 2. **Submit Pull Requests**
|
|
- Fork the repository
|
|
- Create a feature branch: `git checkout -b feature/amazing-feature`
|
|
- Make your changes and test thoroughly
|
|
- Submit a pull request with a clear description
|
|
|
|
### 3. **Code Contributions**
|
|
- Follow our coding standards (see below)
|
|
- Add tests for new functionality
|
|
- Update documentation as needed
|
|
- Ensure all tests pass before submitting
|
|
|
|
## 🛠️ Development Setup
|
|
|
|
### Prerequisites
|
|
- Python 3.10+
|
|
- Node.js 18+
|
|
- Git
|
|
|
|
### Backend Setup
|
|
```bash
|
|
cd backend
|
|
pip install -r requirements.txt
|
|
python start_alwrity_backend.py
|
|
```
|
|
|
|
### Frontend Setup
|
|
```bash
|
|
cd frontend
|
|
npm install
|
|
npm start
|
|
```
|
|
|
|
## 📝 Coding Standards
|
|
|
|
### Python (Backend)
|
|
- Follow PEP 8 style guidelines
|
|
- Use type hints where possible
|
|
- Add docstrings for functions and classes
|
|
- Use meaningful variable and function names
|
|
|
|
### TypeScript/React (Frontend)
|
|
- Use TypeScript for type safety
|
|
- Follow React best practices
|
|
- Use functional components with hooks
|
|
- Implement proper error handling
|
|
|
|
## 🧪 Testing
|
|
|
|
### Backend Testing
|
|
```bash
|
|
cd backend
|
|
python -m pytest test/
|
|
```
|
|
|
|
### Frontend Testing
|
|
```bash
|
|
cd frontend
|
|
npm test
|
|
```
|
|
|
|
## 📋 Pull Request Guidelines
|
|
|
|
### Before Submitting
|
|
- [ ] Code follows project style guidelines
|
|
- [ ] Self-review completed
|
|
- [ ] Tests added/updated and passing
|
|
- [ ] Documentation updated
|
|
- [ ] No merge conflicts
|
|
|
|
### PR Description Template
|
|
```markdown
|
|
## Description
|
|
Brief description of changes
|
|
|
|
## Type of Change
|
|
- [ ] Bug fix
|
|
- [ ] New feature
|
|
- [ ] Breaking change
|
|
- [ ] Documentation update
|
|
|
|
## Testing
|
|
- [ ] Backend tests pass
|
|
- [ ] Frontend tests pass
|
|
- [ ] Manual testing completed
|
|
|
|
## Screenshots (if applicable)
|
|
Add screenshots to help explain your changes
|
|
```
|
|
|
|
## 🏷️ Issue Labels
|
|
|
|
We use the following labels to categorize issues:
|
|
- `bug`: Something isn't working
|
|
- `enhancement`: New feature or request
|
|
- `documentation`: Improvements or additions to documentation
|
|
- `good first issue`: Good for newcomers
|
|
- `help wanted`: Extra attention is needed
|
|
- `priority: high`: High priority issues
|
|
- `priority: low`: Low priority issues
|
|
|
|
## 💬 Community Guidelines
|
|
|
|
- Be respectful and inclusive
|
|
- Help others learn and grow
|
|
- Provide constructive feedback
|
|
- Follow the [Code of Conduct](CODE_OF_CONDUCT.md)
|
|
|
|
## 🎯 Areas for Contribution
|
|
|
|
### High Priority
|
|
- Bug fixes and performance improvements
|
|
- Documentation improvements
|
|
- Test coverage expansion
|
|
- UI/UX enhancements
|
|
|
|
### Feature Areas
|
|
- AI content generation improvements
|
|
- SEO analysis enhancements
|
|
- Social media integration
|
|
- Analytics and reporting
|
|
- User experience improvements
|
|
|
|
## 📞 Getting Help
|
|
|
|
- Join our [Discussions](https://github.com/AJaySi/ALwrity/discussions)
|
|
- Check existing [Issues](https://github.com/AJaySi/ALwrity/issues)
|
|
- Review [Documentation](https://github.com/AJaySi/ALwrity/wiki)
|
|
|
|
## 🙏 Recognition
|
|
|
|
Contributors will be recognized in our README and release notes. Thank you for helping make ALwrity better for everyone!
|
|
|
|
---
|
|
|
|
**Happy Contributing!** 🎉
|