Enforce consistent file and directory naming conventions in your projects with pre-commit
2.0K
š Enforce consistent file and directory naming conventions in your projects
repos:
- repo: local
hooks:
- id: check-file-names-docker
name: Check file names (Docker)
entry: ahmetenesdemir/pre-commit-filename-linter:latest check-file-names
language: docker_image
files: .*
pass_filenames: true
- id: check-directory-names-docker
name: Check directory names (Docker)
entry: ahmetenesdemir/pre-commit-filename-linter:latest check-directory-names
language: docker_image
files: .*
pass_filenames: false
always_run: true
args: ['--config', '.naming-convention.yaml']
# Check files in current directory
docker run --rm -v $(pwd):/app ahmetenesdemir/pre-commit-filename-linter:latest check-file-names *.md
# Check for directories name
docker run --rm -v $(pwd):/app ahmetenesdemir/pre-commit-filename-linter:latest check-directory-names
# Check for empty files
docker run --rm -v $(pwd):/app ahmetenesdemir/pre-commit-filename-linter:latest check-empty-files
# Check for duplicates
docker run --rm -v $(pwd):/app ahmetenesdemir/pre-commit-filename-linter:latest check-duplicate-files
| Command | Description |
|---|---|
check-file-names | Check file naming conventions |
check-directory-names | Check directory naming conventions |
check-empty-files | Detect empty files |
check-duplicate-files | Find duplicate files |
user-authentication.md
api-documentation.md
user_service.py
docker-compose.yml
UserAuthentication.md # Uppercase
user_authentication.md # Underscores in non-Python
doc1.md # Not descriptive
system architecture.md # Spaces
Create .naming-convention.yaml:
files:
use-hyphen: true
allow-unicode: false
directories:
use-hyphen: true
min-length: 3
Supports both Intel/AMD and Apple Silicon architectures:
linux/amd64linux/arm64Full documentation: GitHub Repositoryā
latest - Latest stable versionv1.x.x - Specific version tagsContent type
Image
Digest
sha256:9d2f32357ā¦
Size
21.4 MB
Last updated
over 1 year ago
docker pull ahmetenesdemir/pre-commit-filename-linter