-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Vyacheslav Meyerzon edited this page Aug 1, 2025
·
8 revisions
We've completed a Git Security Scanner - a professional Python tool to detect API keys, passwords, and secrets in Git repositories.
- GitHub Repository: https://github.com/vyacheslavmeyerzon/security-scanner.git
-
Current Branch:
improve - Python Version: 3.7+
- Total Tests: 88 (all passing)
- Detects 25+ types of secrets (AWS, GitHub, API keys, etc.)
- Scans: staged files, working directory, commit history
-
.gitscannerignorefile support with glob patterns - Pre-commit hook support
- Parallel scanning with progress bars
- Configuration System: YAML/JSON config files, environment variables
- Export Formats: HTML (interactive), CSV, JSON (with stats), Markdown
- Caching System: File and commit caching with SQLite backend
- Performance: Parallel workers, tqdm progress bars, cache optimization
- Black formatted
- Flake8 compliant
- Full MyPy type annotations
- 88 tests with high coverage
security-scanner/
├── src/security_scanner/
│ ├── __init__.py
│ ├── scanner.py
│ ├── patterns.py
│ ├── cli.py
│ ├── utils.py
│ ├── config.py
│ ├── export.py
│ └── cache.py
├── tests/ (8 test modules, 88 tests)
├── setup.py
├── pyproject.toml
├── requirements.txt (colorama, PyYAML, tqdm)
├── requirements-dev.txt
├── README.md
├── LICENSE (MIT)
└── .github/workflows/tests.yml
- Update version in
__init__.py,setup.py,pyproject.toml - Create comprehensive CHANGELOG.md
- Update README.md with:
- Installation from PyPI
- Configuration examples
- CI/CD integration guides
- Badges (PyPI version, build status, coverage)
- Add
MANIFEST.inif needed - Test installation in clean virtualenv
- Add docstring examples
- Create
docs/folder with:- Getting Started guide
- Configuration reference
- API documentation
- Integration guides (GitHub Actions, GitLab CI, etc.)
# Build distribution
python -m build
# Check distribution
twine check dist/*
# Test with Test PyPI
twine upload --repository testpypi dist/*
pip install --index-url https://test.pypi.org/simple/ git-security-scanner# Upload to PyPI
twine upload dist/*- Create GitHub release with changelog
- Tag version in git
- Update documentation site
- Announce on:
- Reddit (r/Python, r/cybersecurity)
- Twitter/X
- Dev.to article
- Docker image
- GitHub Action in marketplace
- VS Code extension
- Pre-commit hook package
- User prefers communication in Russian, but all code and comments should be in English
- The package name should be
git-security-scanneron PyPI - Current version: 0.1.0 (ready for initial release)
- All tests must pass before publishing
Start with: "Let's proceed with Stage 5: Publishing the Git Security Scanner package to PyPI. Current status: all 88 tests passing, code quality checks complete, all features implemented."