|
| 1 | +# CONTRIBUTING.md |
| 2 | + |
| 3 | +We welcome contributions to `@interactive-video-labs/angular`! Your help is greatly appreciated in making this project better. |
| 4 | + |
| 5 | +Before contributing, please take a moment to review this document. It outlines the guidelines for contributing to this repository. |
| 6 | + |
| 7 | +## Table of Contents |
| 8 | + |
| 9 | +- [CONTRIBUTING.md](#contributingmd) |
| 10 | + - [Table of Contents](#table-of-contents) |
| 11 | + - [Code of Conduct](#code-of-conduct) |
| 12 | + - [How Can I Contribute?](#how-can-i-contribute) |
| 13 | + - [Reporting Bugs](#reporting-bugs) |
| 14 | + - [Suggesting Enhancements](#suggesting-enhancements) |
| 15 | + - [Your First Code Contribution](#your-first-code-contribution) |
| 16 | + - [Pull Requests](#pull-requests) |
| 17 | + - [Development Setup](#development-setup) |
| 18 | + - [Styleguides](#styleguides) |
| 19 | + - [Git Commit Messages](#git-commit-messages) |
| 20 | + - [TypeScript Styleguide](#typescript-styleguide) |
| 21 | + - [License](#license) |
| 22 | + |
| 23 | +## Code of Conduct |
| 24 | + |
| 25 | +This project adheres to the [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md). By participating, you are expected to uphold this code. Please report unacceptable behavior to [insert contact email or method here, e.g., `support@example.com`]. |
| 26 | + |
| 27 | +## How Can I Contribute? |
| 28 | + |
| 29 | +### Reporting Bugs |
| 30 | + |
| 31 | +If you find a bug, please open an issue on our [GitHub Issues page](https://github.com/interactive-video-labs/interactive-video-angular-wrapper/issues). When reporting a bug, please include: |
| 32 | + |
| 33 | +- A clear and concise description of the bug. |
| 34 | +- Steps to reproduce the behavior. |
| 35 | +- Expected behavior. |
| 36 | +- Actual behavior. |
| 37 | +- Screenshots or videos if applicable. |
| 38 | +- Your environment (Angular version, browser, OS, etc.). |
| 39 | + |
| 40 | +### Suggesting Enhancements |
| 41 | + |
| 42 | +If you have an idea for a new feature or an improvement, please open an issue on our [GitHub Issues page](https://github.com/interactive-video-labs/interactive-video-angular-wrapper/issues). When suggesting an enhancement, please include: |
| 43 | + |
| 44 | +- A clear and concise description of the proposed enhancement. |
| 45 | +- The problem it solves or the benefit it provides. |
| 46 | +- Any alternative solutions you've considered. |
| 47 | + |
| 48 | +### Your First Code Contribution |
| 49 | + |
| 50 | +If you're looking to make your first code contribution, look for issues labeled `good first issue` on our [GitHub Issues page](https://github.com/interactive-video-labs/interactive-video-angular-wrapper/issues). |
| 51 | + |
| 52 | +### Pull Requests |
| 53 | + |
| 54 | +1. **Fork the repository** and clone it to your local machine. |
| 55 | +2. **Create a new branch** from `main` for your changes: |
| 56 | + ```bash |
| 57 | + git checkout -b feature/your-feature-name |
| 58 | + # or |
| 59 | + git checkout -b bugfix/your-bug-fix-name |
| 60 | + ``` |
| 61 | +3. **Make your changes** and ensure they adhere to the project's [Styleguides](#styleguides). |
| 62 | +4. **Write tests** for your changes, if applicable. Ensure all existing tests pass. |
| 63 | +5. **Run the build** to ensure everything compiles correctly: |
| 64 | + ```bash |
| 65 | + pnpm build |
| 66 | + ``` |
| 67 | +6. **Commit your changes** using a descriptive commit message (see [Git Commit Messages](#git-commit-messages)). |
| 68 | +7. **Push your branch** to your forked repository. |
| 69 | +8. **Open a Pull Request** to the `main` branch of the original repository. |
| 70 | +
|
| 71 | +In your pull request description, please: |
| 72 | +
|
| 73 | +- Reference any related issues (e.g., `Fixes #123`, `Closes #456`). |
| 74 | +- Provide a clear explanation of your changes. |
| 75 | +- Include screenshots or GIFs if your changes affect the UI. |
| 76 | +
|
| 77 | +## Development Setup |
| 78 | +
|
| 79 | +For detailed instructions on setting up your development environment, installing dependencies, and running tests, please refer to the [DEVELOPER.md](DEVELOPER.md) file. |
| 80 | +
|
| 81 | +## Styleguides |
| 82 | +
|
| 83 | +### Git Commit Messages |
| 84 | +
|
| 85 | +We follow the [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) specification for our commit messages. This helps with automated changelog generation and semantic versioning. Examples: |
| 86 | +
|
| 87 | +- `feat: add new video playback controls` |
| 88 | +- `fix: resolve autoplay issue on iOS` |
| 89 | +- `docs: update installation instructions` |
| 90 | +- `refactor: improve player initialization logic` |
| 91 | +- `test: add unit tests for cue points` |
| 92 | +
|
| 93 | +### TypeScript Styleguide |
| 94 | +
|
| 95 | +- Follow existing code style and formatting. |
| 96 | +- Use clear and descriptive variable and function names. |
| 97 | +- Ensure proper type annotations for all functions, variables, and parameters. |
| 98 | +- Avoid `any` type unless absolutely necessary. |
| 99 | +
|
| 100 | +## License |
| 101 | +
|
| 102 | +By contributing to `@interactive-video-labs/angular`, you agree that your contributions will be licensed under its MIT License. See the [LICENSE](LICENSE) file for details. |
0 commit comments