mirror of
https://github.com/andwati/telecom-platform.git
synced 2026-10-18 11:02:54 +00:00
2.7 KiB
2.7 KiB
Contributing to TaaS Platform
Thank you for your interest in contributing to the TaaS Platform! This document provides guidelines for contributing to the project.
Getting Started
- Fork the repository
- Clone your fork:
git clone https://github.com/nutcas3/telecom-platform.git cd telecom-platform - Set up development environment:
./scripts/dev-setup.sh make all
Development Workflow
-
Create a feature branch:
git checkout -b feature/your-feature-name -
Make your changes:
- Write clear, documented code
- Follow language-specific style guides
- Add tests for new functionality
-
Run tests:
make test -
Commit your changes:
git add . git commit -m "feat: add new feature" -
Push to your fork:
git push origin feature/your-feature-name -
Create a Pull Request
Code Style
Go
- Follow Effective Go
- Use
gofmtfor formatting - Run
golangci-lintbefore committing
Rust
- Follow Rust API Guidelines
- Use
cargo fmtfor formatting - Run
cargo clippybefore committing
TypeScript
- Follow Airbnb Style Guide
- Use Prettier for formatting
- Use ESLint for linting
Commit Message Format
We use Conventional Commits:
<type>(<scope>): <subject>
<body>
<footer>
Types:
feat: New featurefix: Bug fixdocs: Documentation changesstyle: Code style changes (formatting)refactor: Code refactoringtest: Adding or updating testschore: Maintenance tasks
Examples:
feat(api): add eSIM deletion endpoint
fix(charging): correct credit deduction logic
docs: update deployment guide
Testing
- Write unit tests for all new code
- Ensure existing tests pass
- Add integration tests for API endpoints
- Test edge cases and error conditions
Pull Request Process
- Update documentation if needed
- Add tests for your changes
- Ensure all tests pass
- Update CHANGELOG.md
- Request review from maintainers
- Address review feedback
- Wait for approval and merge
Code Review
We review all contributions. Expect:
- Feedback on code quality
- Suggestions for improvements
- Questions about implementation
- Requests for tests or documentation
Reporting Issues
- Use GitHub Issues
- Provide clear description
- Include reproduction steps
- Add relevant logs or screenshots
- Specify environment details
License
By contributing, you agree that your contributions will be licensed under the MIT License.