{"id":13566066,"url":"https://github.com/r-lib/lintr","last_synced_at":"2025-12-12T01:04:52.466Z","repository":{"id":21233083,"uuid":"24548375","full_name":"r-lib/lintr","owner":"r-lib","description":"Static Code Analysis for R","archived":false,"fork":false,"pushed_at":"2025-05-08T05:57:01.000Z","size":31848,"stargazers_count":1232,"open_issues_count":299,"forks_count":186,"subscribers_count":20,"default_branch":"main","last_synced_at":"2025-05-08T09:03:19.319Z","etag":null,"topics":["linter","r"],"latest_commit_sha":null,"homepage":"https://lintr.r-lib.org","language":"R","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/r-lib.png","metadata":{"files":{"readme":"README.md","changelog":"NEWS.md","contributing":".github/CONTRIBUTING.md","funding":null,"license":"COPYING","code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":".github/SUPPORT.md","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2014-09-28T02:48:15.000Z","updated_at":"2025-05-08T05:54:16.000Z","dependencies_parsed_at":"2024-01-13T12:19:04.999Z","dependency_job_id":"209b05fc-aa87-486e-b205-8033e0cfcbb8","html_url":"https://github.com/r-lib/lintr","commit_stats":{"total_commits":1771,"total_committers":110,"mean_commits":16.1,"dds":0.7854319593450028,"last_synced_commit":"4de229f55e9387379beb42f61c235266bbc68dcd"},"previous_names":["jimhester/lintr"],"tags_count":26,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/r-lib%2Flintr","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/r-lib%2Flintr/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/r-lib%2Flintr/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/r-lib%2Flintr/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/r-lib","download_url":"https://codeload.github.com/r-lib/lintr/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253969249,"owners_count":21992263,"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","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":["linter","r"],"created_at":"2024-08-01T13:02:01.374Z","updated_at":"2025-12-12T01:04:52.434Z","avatar_url":"https://github.com/r-lib.png","language":"R","readme":"# lintr \u003cimg src=\"man/figures/logo.png\" align=\"right\" width=\"240\" /\u003e\n\n[![R build status](https://github.com/r-lib/lintr/workflows/R-CMD-check/badge.svg)](https://github.com/r-lib/lintr/actions)\n[![codecov.io](https://codecov.io/gh/r-lib/lintr/branch/main/graphs/badge.svg)](https://app.codecov.io/gh/r-lib/lintr?branch=main)\n[![CRAN_Status_Badge](https://www.r-pkg.org/badges/version/lintr)](https://cran.r-project.org/package=lintr)\n[![lifecycle](https://img.shields.io/badge/lifecycle-stable-brightgreen.svg)](https://lifecycle.r-lib.org/articles/stages.html)\n[![DOI](https://joss.theoj.org/papers/10.21105/joss.07240/status.svg)](https://doi.org/10.21105/joss.07240)\n\n`{lintr}` provides [static code analysis for R](https://en.wikipedia.org/wiki/Static_program_analysis). It checks for adherence to a given style, identifying syntax errors and possible semantic issues, then reports them to you so you can take action. Watch lintr in action in the following animation:\n\n![](man/figures/demo.gif \"lintr demo\")\n\n`{lintr}` is complementary to [the `{styler}` package](https://github.com/r-lib/styler) which automatically restyles code, eliminating some of the problems that `{lintr}` can detect.\n\n## Installation\n\nInstall the stable version from CRAN:\n\n```R\ninstall.packages(\"lintr\")\n```\n\nOr the development version from GitHub:\n\n```R\n# install.packages(\"remotes\")\nremotes::install_github(\"r-lib/lintr\")\n```\n\n## Usage\n\nAnd then you can create a configuration file and run selected linters:\n\n```R\nlintr::use_lintr(type = \"tidyverse\")\n\n# in a project:\nlintr::lint_dir()\n\n# in a package:\nlintr::lint_package()\n```\n\nTo see a list of linters included for each configuration:\n\n```R\n# tidyverse (default)\nnames(lintr::linters_with_defaults())\n\n# full\nnames(lintr::all_linters())\n```\n\n### Setting up GitHub Actions \n\n`{usethis}` provides helper functions to generate lint workflows for GitHub Actions:\n\n```R\n# in a project:\nusethis::use_github_action(\"lint-project\")\n\n# in a package:\nusethis::use_github_action(\"lint\")\n```\n\nYou can also run lintr during continuous integration or within your IDE or text editor. See `vignette(\"continuous-integration\")` and `vignette(\"editors\")` for more details.\n\nWithout further configuration, this will run the [default linters](https://lintr.r-lib.org/reference/default_linters.html). See `vignette(\"lintr\")` to learn how to modify these defaults.\n\n## Code of Conduct\n\nPlease note that the lintr project is released with a [Contributor Code of Conduct](https://www.contributor-covenant.org/version/2/1/code_of_conduct/). By contributing to this project, you agree to abide by its terms.\n","funding_links":[],"categories":["R"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fr-lib%2Flintr","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fr-lib%2Flintr","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fr-lib%2Flintr/lists"}