https://github.com/loeffel-io/ls-lint
An extremely fast directory and filename linter - Bring some structure to your project filesystem
https://github.com/loeffel-io/ls-lint
filesystem-linter linter ls-lint
Last synced: 6 days ago
JSON representation
An extremely fast directory and filename linter - Bring some structure to your project filesystem
- Host: GitHub
- URL: https://github.com/loeffel-io/ls-lint
- Owner: loeffel-io
- License: mit
- Created: 2020-02-16T13:29:12.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2024-10-29T10:08:06.000Z (6 months ago)
- Last Synced: 2024-10-29T12:12:08.013Z (6 months ago)
- Topics: filesystem-linter, linter, ls-lint
- Language: Go
- Homepage: https://ls-lint.org
- Size: 2.26 MB
- Stars: 1,737
- Watchers: 11
- Forks: 32
- Open Issues: 40
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
- my-awesome-list - ls-lint - Bring some structure to your project filesystem | loeffel-io | 1899 | (Go)
README
# ls-lint
An extremely fast directory and filename linter - Bring some structure to your project filesystem
[](https://github.com/loeffel-io/ls-lint/actions/workflows/bazel.yml)
[](https://goreportcard.com/report/github.com/loeffel-io/ls-lint)![]()

- Minimal setup with simple rules managed in one single or multiple `.ls-lint.yml` files
- Works for directory and file names - all extensions supported - full unicode support
- Incredibly fast - lints thousands of files and directories in milliseconds
- Support for Windows, MacOS and Linux + [NPM Package](https://www.npmjs.com/package/@ls-lint/ls-lint) + [GitHub Action](https://github.com/ls-lint/action) + [Homebrew](https://formulae.brew.sh/formula/ls-lint) + Docker
- Trusted by [Renovate](https://github.com/renovatebot/renovate/blob/main/.ls-lint.yml), [Terser](https://github.com/terser/terser/blob/master/.ls-lint.yml) and many more
- Almost zero third-party dependencies (only [go-yaml](https://github.com/go-yaml/yaml)
and [doublestar](https://github.com/bmatcuk/doublestar))## Announcements
`v2.3.0` is here: [https://ls-lint.org/blog/announcements/v2.3.0.html](https://ls-lint.org/blog/announcements/v2.3.0.html)
## Documentation
The full documentation can be found at [ls-lint.org](https://ls-lint.org)
- [Installation](https://ls-lint.org/2.2/getting-started/installation.html#curl)
- [The Basics](https://ls-lint.org/2.2/configuration/the-basics.html)
- [The Rules](https://ls-lint.org/2.2/configuration/the-basics.html)
- [Contributions](https://ls-lint.org/2.2/prologue/contributions.html)## Demo
### Configuration `.ls-lint.yml`
```yaml
ls:
packages/*/{src,__tests__}:
.js: kebab-case
.ts: camelCase | PascalCase
.d.ts: camelCase
.spec.ts: camelCase | PascalCase
.mock.ts: camelCasecomponents/*:
.ts: regex:${0}
tests:
.*: exists:0
.test.ts: regex:${1}ignore:
- node_modules
```### Result
## Logo
Logo created by [Studio Ajot](https://www.studio-ajot.de/)
## License
ls-lint is open-source software licensed under the MIT license.
[](https://app.fossa.com/projects/git%2Bgithub.com%2Floeffel-io%2Fls-lint?ref=badge_large)