Contributing to Screenly/Chrome-Extension
Understanding the Project
The Screenly Chrome Extension is a JavaScript-based application built with HTML, SCSS, and Docker, aiming to enhance user experience within the Screenly platform. The project relies on a combination of Docker containers for development and deployment.
Contributing Steps
1. Fork the Repository
Start by forking the Screenly/Chrome-Extension repository on GitHub. This creates a personal copy of the project under your account.
2. Clone Your Fork
Clone your forked repository to your local machine using Git:
git clone https://github.com/YOUR_USERNAME/chrome-extension.git
Replace YOUR_USERNAME
with your actual GitHub username.
3. Create a Branch
Before making any changes, create a new branch for your contribution:
git checkout -b feature/your-feature-name
Replace your-feature-name
with a descriptive name for your contribution.
4. Develop Your Changes
Make the necessary changes to the codebase within your branch. Ensure your code adheres to the project’s style guide and best practices.
5. Test Your Changes
Thoroughly test your changes to ensure they function correctly and don’t introduce regressions. Utilize the provided test commands:
./bin/run_tests.sh
npm test
6. Commit Your Changes
Once your changes are tested and ready, commit them with a clear and concise message:
git add .
git commit -m "Add a clear and descriptive commit message"
7. Push to Your Fork
Push your branch to your forked repository:
git push origin feature/your-feature-name
8. Create a Pull Request
Navigate to your forked repository on GitHub and create a pull request from your feature branch to the master
branch of the original Screenly/Chrome-Extension repository. Provide a detailed description of your changes and their impact.
9. Collaboration and Review
The project maintainers will review your pull request. They might ask for revisions or clarifications. Engage in constructive discussion to address any feedback and ensure the quality of your contribution.
10. Merge Your Pull Request
Once your changes are approved, the maintainers will merge your pull request into the main repository, making your contribution official.
Additional Information
- CI/CD Configuration: The project leverages Continuous Integration and Continuous Delivery (CI/CD) through GitHub Actions. These workflows automate the build, test, and deployment processes.
- Releases: Refer to the GitHub releases section for a history of released versions.
- Tagging Releases: Follow the existing pattern for tagging releases using the
git tag
command and push them to the remote repository. - Version Control: The project follows Semantic Versioning (SemVer).
- GitHub CLI: For release verification, you can use the GitHub CLI (
gh attestation verify
) tool.
Contributing to the Project
By following these steps and actively engaging in the project’s discussion, you can contribute to the development of the Screenly Chrome Extension and make it even better.