4.6 KiB
Contributing to cardbingenerator - Stripe Auto Fill
First off, thank you for considering contributing to cardbingenerator! It's people like you that make cardbingenerator such a great tool.
Code of Conduct
This project and everyone participating in it is governed by our Code of Conduct. By participating, you are expected to uphold this code.
How Can I Contribute?
Reporting Bugs
Before creating bug reports, please check the existing issues as you might find out that you don't need to create one. When you are creating a bug report, please include as many details as possible:
- Use a clear and descriptive title
- Describe the exact steps which reproduce the problem
- Provide specific examples to demonstrate the steps
- Describe the behavior you observed after following the steps
- Explain which behavior you expected to see instead and why
- Include screenshots and animated GIFs if possible
- Include your browser version and OS
Suggesting Enhancements
Enhancement suggestions are tracked as GitHub issues. When creating an enhancement suggestion, please include:
- Use a clear and descriptive title
- Provide a step-by-step description of the suggested enhancement
- Provide specific examples to demonstrate the steps
- Describe the current behavior and explain which behavior you expected to see instead
- Explain why this enhancement would be useful
Pull Requests
- Fill in the required template
- Do not include issue numbers in the PR title
- Include screenshots and animated GIFs in your pull request whenever possible
- Follow the JavaScript style guide
- End all files with a newline
- Avoid platform-dependent code
Development Process
Setup
- Fork the repository
- Clone your fork:
git clone https://github.com/your-username/cardbingenerator-extension.git
- Create a branch:
git checkout -b feature/your-feature-name
Making Changes
-
Make your changes
-
Test your changes thoroughly:
- Load extension in developer mode
- Test on multiple Stripe checkout pages
- Verify all functionality works
- Check console for errors
-
Commit your changes:
git add .
git commit -m "Add: description of your changes"
Commit Message Guidelines
- Use the present tense ("Add feature" not "Added feature")
- Use the imperative mood ("Move cursor to..." not "Moves cursor to...")
- Limit the first line to 72 characters or less
- Reference issues and pull requests liberally after the first line
- Consider starting the commit message with an applicable emoji:
- 🎨
:art:when improving the format/structure of the code - 🐛
:bug:when fixing a bug - ✨
:sparkles:when adding a new feature - 📝
:memo:when writing docs - 🚀
:rocket:when improving performance - 🔒
:lock:when dealing with security - ⬆️
:arrow_up:when upgrading dependencies - ⬇️
:arrow_down:when downgrading dependencies - 🔧
:wrench:when changing configuration files
- 🎨
Coding Style
- Use 2 spaces for indentation
- Use camelCase for variable and function names
- Use PascalCase for class names
- Use UPPER_CASE for constants
- Add comments for complex logic
- Keep functions small and focused
- Use meaningful variable names
- Avoid magic numbers
- Use template literals for string concatenation
Testing Checklist
Before submitting your PR, ensure:
- Code follows the style guidelines
- No console errors
- Extension loads without errors
- All existing features still work
- New features work as expected
- Tested on multiple Stripe pages
- No performance degradation
- Code is commented where necessary
- No hardcoded values (use constants)
Pull Request Process
- Update the README.md with details of changes if applicable
- Update the CHANGELOG.md with a note describing your changes
- The PR will be merged once you have the sign-off of a maintainer
File Structure
cardbingenerator-extension/
├── manifest.json # Extension configuration
├── popup.html # Popup UI
├── popup.js # Popup logic
├── styles.css # Styles
├── background.js # Service worker
├── content.js # Content script
├── icons/ # Extension icons
├── README.md # Documentation
├── LICENSE # License file
└── CONTRIBUTING.md # This file
Questions?
Feel free to open an issue with your question or contact the maintainers directly.
Recognition
Contributors will be recognized in the README.md file.
Thank you for contributing! 🎉