Contributing
Thank you for your interest in contributing to NyaTerm!
Before You Start
- Read the Development Setup documentation
- Check the Issues list
Contribution Workflow
- Fork the repository
- Create a branch from
maingit checkout -b feat/my-feature - Develop — Write code and test
- Commit — Use conventional commit messages
- Push — Push to your fork
- Create PR — Submit a Pull Request
Commit Convention
Use Conventional Commits:
<type>(<scope>): <description>
| Type | Description |
|---|---|
feat | New feature |
fix | Bug fix |
docs | Documentation |
style | Code formatting (no logic change) |
refactor | Code refactoring |
perf | Performance improvement |
chore | Build/tooling changes |
Examples:
feat(sftp): add batch file download support
fix(ssh): handle connection timeout correctly
docs: update installation guide
Code Standards
Frontend
- TypeScript strict mode
- Run
pnpm lintto pass checks - Run
pnpm formatto format code - Use functional components and Hooks
Backend
- Follow standard Rust coding style
- Run
cargo clippyfor linting - Run
cargo fmtfor formatting - Use proper error handling, avoid
unwrap()
Internationalization
When adding or modifying UI text, update both:
src/i18n/locales/zh-CN.jsonsrc/i18n/locales/en.json
License
Contributions are licensed under the project's MIT License.