Files
wings88/CONTRIBUTING.md

133 lines
4.1 KiB
Markdown

# Contributing to 3D Flight Simulator
Thank you for considering contributing to the 3D Flight Simulator project! We welcome contributions from everyone, whether you're fixing bugs, adding new features, improving documentation, or suggesting enhancements.
## 🤝 How to Contribute
### 1. Reporting Issues
Before creating a new issue, please check if it has already been reported:
- Search the [issue tracker](https://gitea@repos.retroweb.dev:ai-zone/wings88/issues)
- If you find a related issue, add a comment with additional information
When reporting a new issue, please include:
- A clear description of the problem
- Steps to reproduce the issue
- Your browser and operating system
- Any relevant screenshots or error messages
### 2. Suggesting Features
We welcome feature requests! Please:
- Describe the feature in detail
- Explain why it would be useful
- Provide any relevant examples or mockups
### 3. Code Contributions
#### Setting Up the Project
1. Fork the repository on GitHub
2. Clone your fork locally:
```bash
git clone https://gitea@repos.retroweb.dev:ai-zone/wings88.git
cd wings88
```
3. Set up the development environment:
```bash
npm install
```
#### Making Changes
1. Create a new branch for your feature or bug fix:
```bash
git checkout -b your-branch-name
```
2. Make your changes to the code
3. Test your changes thoroughly
4. Update documentation if needed
5. Commit your changes with a meaningful message:
```bash
git commit -m "feat: add new feature description"
```
#### Submitting a Pull Request
1. Push your branch to your fork:
```bash
git push origin your-branch-name
```
2. Open a pull request on the main repository
3. Fill out the pull request template with:
- Description of your changes
- Related issues (if any)
- Screenshots (if applicable)
- Testing instructions
### 4. Documentation Contributions
Improving documentation is just as valuable as code contributions! Please:
- Fix typos or unclear explanations
- Add missing information
- Improve code examples
- Update API documentation
### 5. Testing
We appreciate contributions that improve test coverage:
- Add unit tests for new features
- Add integration tests for critical paths
- Fix failing tests
## 📜 Code of Conduct
Please note that this project is released with a [Contributor Code of Conduct](CODE_OF_CONDUCT.md). By contributing to this project, you agree to abide by its terms.
## 📋 Development Guidelines
### Coding Standards
- Follow the existing code style
- Write self-documenting code with meaningful variable names
- Keep functions small and focused
- Add comments for complex logic
- Write unit tests for new functionality
### Commit Messages
Please follow the [Conventional Commits](https://www.conventionalcommits.org/) specification:
- `feat:` for new features
- `fix:` for bug fixes
- `docs:` for documentation changes
- `style:` for code style changes
- `refactor:` for code refactoring
- `test:` for test-related changes
- `chore:` for maintenance tasks
### Branching Strategy
- `main` - Production-ready code (protected branch)
- `dev` - Development branch for new features
- Feature branches - Named after the feature being developed (e.g., `feat/landscape-generation`)
- Bugfix branches - Named after the bug being fixed (e.g., `fix/crash-on-load`)
## 📞 Communication
For questions or discussions, please:
- Use the [GitHub Discussions](https://gitea@repos.retroweb.dev:ai-zone/wings88/discussions) feature
- Open an issue for specific questions about the codebase
- Join our community chat (if available)
## 🎯 Current Priorities
Check the [project board](https://gitea@repos.retroweb.dev:ai-zone/wings88/projects) for current priorities and ongoing work.
## 📝 Additional Resources
- [Three.js Documentation](https://threejs.org/docs/)
- [Web Audio API Documentation](https://developer.mozilla.org/en-US/docs/Web/API/Web_Audio_API)
- [Canvas API Documentation](https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API)
Thank you for contributing to the 3D Flight Simulator project! Your efforts help make this project better for everyone.