{"id":25990179,"url":"https://github.com/lintje/lintje","last_synced_at":"2025-10-30T01:42:24.768Z","repository":{"id":37781501,"uuid":"381808191","full_name":"lintje/lintje","owner":"lintje","description":"Lintje is an opinionated linter for Git.","archived":false,"fork":false,"pushed_at":"2025-09-18T06:46:55.000Z","size":725,"stargazers_count":30,"open_issues_count":12,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-19T18:49:26.107Z","etag":null,"topics":["command-line","git","linter","rust","utilities"],"latest_commit_sha":null,"homepage":"https://lintje.dev","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lintje.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":"support/docker/Dockerfile.aarch64-unknown-linux-gnu","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-06-30T19:11:23.000Z","updated_at":"2025-09-18T06:46:52.000Z","dependencies_parsed_at":"2025-03-05T13:38:07.349Z","dependency_job_id":"e1c9c11f-eac4-49c5-bfca-ced885226864","html_url":"https://github.com/lintje/lintje","commit_stats":{"total_commits":334,"total_committers":1,"mean_commits":334.0,"dds":0.0,"last_synced_commit":"2e958f4533bcaeb1293ecdb64bff679dc629e98f"},"previous_names":["tombruijn/lintje"],"tags_count":18,"template":false,"template_full_name":null,"purl":"pkg:github/lintje/lintje","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lintje%2Flintje","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lintje%2Flintje/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lintje%2Flintje/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lintje%2Flintje/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lintje","download_url":"https://codeload.github.com/lintje/lintje/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lintje%2Flintje/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":281731380,"owners_count":26551804,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-29T02:00:06.901Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["command-line","git","linter","rust","utilities"],"created_at":"2025-03-05T13:37:45.717Z","updated_at":"2025-10-30T01:42:24.738Z","avatar_url":"https://github.com/lintje.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Lintje\n\n\u003cdiv align=\"center\"\u003e\n  \u003cb\u003e\u003ca href=\"https://lintje.dev\"\u003eLintje.dev website\u003c/a\u003e\u003c/b\u003e\n\u003c/div\u003e\n\n---\n\nLintje is an opinionated linter for Git. It lints commit messages based on a\npreconfigured set of [rules][rules] focussed on promoting communication between\npeople. The idea is to write commits meant for other people reading them during\nreviews and debug sessions 2+ months from now.\n\n- __No configuration__. Don't spend time configuring your Git commit linter and\n  instead adopt a preconfigured set of [rules][rules].\n- __Portable__. Lintje is a Rust project built for several\n  [Operating Systems](#supported-operating-systems) and has no dependencies.\n  Drop it into your project and it works.\n\n## Documentation\n\nVisit [Lintje.dev][website] for more information about Lintje, and the\n[Lintje documentation](https://lintje.dev/docs/).\n\n- [Installation](https://lintje.dev/docs/installation/)\n- [Usage][usage]\n    - [Git hook](https://lintje.dev/docs/git-hooks/)\n    - [Git alias](https://lintje.dev/docs/git-alias/)\n- [Rules documentation][rules]\n- [Configuration](https://lintje.dev/docs/configuration/)\n- [Getting help](https://lintje.dev/docs/support/)\n- [Development documentation](#development)\n\n## Example\n\nGiven the last commit in a project is this:\n\n```\nFix bug\n```\n\nWhen running `lintje` to lint the last commit, the output will be:\n\n```\n$ lintje\nError[SubjectCliche]: The subject does not explain the change in much detail\n  9a2ae29:1:1: Fix bug\n    |\n  1 | Fix bug\n    | ^^^^^^^ Describe the change in more detail\n\nError[MessagePresence]: No message body was found\n  9a2ae29:3:1: Fix bug\n    |\n  1 | Fix bug\n  2 |\n  3 |\n    | ^ Add a message body with context about the change and why it was made\n\nError[BranchNameTicketNumber]: A ticket number was detected in the branch name\n  Branch:1: fix-123\n  |\n  | fix-123\n  | ^^^^^^^ Remove the ticket number from the branch name or expand the branch name with more details\n\n1 commit and branch inspected, 3 errors detected\n```\n\nFor more usage examples, see the [usage docs].\n\n## Getting help\n\nNeed help with Lintje? Found a bug or have a question?\n\nReach out to me through the [issue tracker][issues],\n[discussions][discussions], on Twitter\n[@tombruijn](https://twitter.com/tombruijn) (DMs are open) or on any Slack team\nyou can find me on.\n\n## Development\n\n### Setup\n\nMake sure [Rust](https://www.rust-lang.org/) is installed before continuing.\n\n```\ncargo build\n```\n\n### Testing\n\n```\ncargo test\n```\n\n### Building\n\n[Docker](https://www.docker.com/) is required to build all the different target\nreleases using [cross](https://github.com/rust-embedded/cross).\n\nTo build all different targets, run the build script:\n\n```\nrake build\n```\n\nThe build output can be found in the `dist/` directory.\n\n### Releases\n\nBefore release all the supported targets will be build. See\n[Building](#building) for more information about the build step.\n\nTo release all different targets, run the release script:\n\n```\nrake release\n```\n\nThe release will be pushed to GitHub.\n\nFinally update the\n[Lintje Homebrew tap](https://github.com/lintje/homebrew-lintje).\n\n## Code of Conduct\n\nThis project has a [Code of Conduct](CODE_OF_CONDUCT.md) and contributors are\nexpected to adhere to it.\n\n[website]: https://lintje.dev\n[rules]: https://lintje.dev/docs/rules/\n[usage]: https://lintje.dev/docs/usage/\n[issues]: https://github.com/lintje/lintje/issues\n[discussions]: https://github.com/lintje/lintje/discussions\n[installation]: https://lintje.dev/docs/installation/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flintje%2Flintje","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flintje%2Flintje","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flintje%2Flintje/lists"}