[![][travis img]][travis]
[![][appveyor img]][appveyor]
[![][teamcity img]][teamcity]
[![][circleci img]][circleci]
[![][wercker img]][wercker]
[![][shippable img]][shippable]
[![][coverage img]][coverage]
[![][snyk img]][snyk]
[![][semaphoreci img]][semaphoreci]

[![][codeship img]][codeship]
[![][dependabot img]][dependabot]
[![][buddy img]][buddy]

[![][mavenbadge img]][mavenbadge]
[![][sonar img]][sonar]

Members chat: [![][gitter_mem img]][gitter_mem]
Contributors chat: [![][gitter_con img]][gitter_con]

![](https://raw.githubusercontent.com/checkstyle/resources/master/img/checkstyle-logos/checkstyle-logo-260x99.png)


Checkstyle is a tool for checking Java source code for adherence to a Code Standard
or set of validation rules (best practices).

The latest release version can be found at
[GitHub releases](https://github.com/checkstyle/checkstyle/releases/)
or at [Maven repo](https://repo1.maven.org/maven2/com/puppycrawl/tools/checkstyle/).

Each-commit builds of maven artifacts can be found at
[Maven Snapshot repository](https://oss.sonatype.org/content/repositories/snapshots/com/puppycrawl/tools/checkstyle/) .

Documentation is available in HTML format, see https://checkstyle.org/checks.html.

Build instructions and Contribution
======================

[Build instructions](https://checkstyle.org/contributing.html#Build)

[Setup IDE for development](https://checkstyle.org/beginning_development.html)

[Explanation on how to create your own module](https://checkstyle.org/extending.html)

[Verification of code quality](https://checkstyle.org/contributing.html#Quality_matters)

[Sending Pull Request](https://checkstyle.org/contributing.html#Submitting_your_contribution)

[Report Issue](https://checkstyle.org/contributing.html#Report_an_issue)

Continuous integration and Quality reports
======================
Travis (Linux & MacOS build): [![][travis img]][travis]
AppVeyor (Windows build): [![][appveyor img]][appveyor]

Quality reports: https://checkstyle.org/project-reports.html

JavaScript, CSS and Java source file analysis on Codacy: [![][codacy img]][codacy]

Feedback/Support
========

Please send any feedback to https://groups.google.com/forum/?hl=en#!forum/checkstyle

Questions and Answers from community: [![][stackoverflow img]][stackoverflow]

Bugs and Feature requests (not the questions): https://github.com/checkstyle/checkstyle/issues


Support/Sponsor checkstyle
========

If you want to speed up fixing of issue and want to encourage somebody in
internet to resolve any issue:
[![][bountysource img]][bountysource]
[![][salt.bountysource img]][salt.bountysource]
[![][flattr img]][flattr]
[![][liberapay img]][liberapay]
[![][backers.opencollective img]][backers.opencollective]
[![][sponsors.opencollective img]][sponsors.opencollective]


Licensing
=========

[![][license img]][license]

This software is licensed under the terms in the file named "LICENSE" in this
directory.

The software uses the ANTLR package (https://www.antlr.org/). Its license terms
are in the file named "RIGHTS.antlr" in this directory.

This product includes software developed by
The Apache Software Foundation (http://www.apache.org/).

The software uses the Logging and Beanutils packages from the
Apache Commons project (http://commons.apache.org/). The license terms
of these packages are in the file named "LICENSE.apache20" in this
directory.

The software uses the Google Guava Libraries
(https://github.com/google/guava/). The license terms of
these packages are in the file named "LICENSE.apache20" in this
directory.

The software uses the Picocli Library
(https://github.com/remkop/picocli/). Its license terms
are in the file named "LICENSE.apache20" in this directory.

[travis]:https://travis-ci.org/checkstyle/checkstyle/builds
[travis img]:https://travis-ci.org/checkstyle/checkstyle.svg

[appveyor]:https://ci.appveyor.com/project/checkstyle/checkstyle/history
[appveyor img]:https://ci.appveyor.com/api/projects/status/rw6bw3dl9kph6ucc?svg=true

[sonar]:https://sonarcloud.io/dashboard?id=org.checkstyle%3Acheckstyle
[sonar img]:https://sonarcloud.io/api/project_badges/measure?project=org.checkstyle%3Acheckstyle&metric=sqale_index

[codacy]:https://www.codacy.com/app/checkstyle/checkstyle
[codacy img]:https://api.codacy.com/project/badge/3adf12d434314ba8b38277ea46d3c44b

[coverage]:https://codecov.io/github/checkstyle/checkstyle?branch=master
[coverage img]:https://codecov.io/github/checkstyle/checkstyle/coverage.svg?branch=master

[license]:LICENSE
[license img]:https://img.shields.io/badge/license-GNU%20LGPL%20v2.1-blue.svg

[mavenbadge]:https://search.maven.org/search?q=g:%22com.puppycrawl.tools%22%20AND%20a:%22checkstyle%22
[mavenbadge img]:https://img.shields.io/maven-central/v/com.puppycrawl.tools/checkstyle.svg?label=Maven%20Central

[gitter_mem]:https://gitter.im/checkstyle
[gitter_mem img]:https://img.shields.io/badge/gitter-JOIN%20CHAT-blue.svg

[gitter_con]:https://gitter.im/checkstyle/checkstyle
[gitter_con img]:https://badges.gitter.im/Join%20Chat.svg

[stackoverflow]:https://stackoverflow.com/questions/tagged/checkstyle
[stackoverflow img]:https://img.shields.io/badge/stackoverflow-CHECKSTYLE-blue.svg

[teamcity]:https://teamcity.jetbrains.com/viewType.html?buildTypeId=Checkstyle_IdeaInspectionsMaster
[teamcity img]:https://teamcity.jetbrains.com/app/rest/builds/buildType:(id:Checkstyle_IdeaInspectionsMaster)/statusIcon

[codeship]: https://codeship.com/projects/124310
[codeship img]:https://codeship.com/projects/67b814a0-8fee-0133-9b59-02a170289b8c/status?branch=master

[circleci]: https://circleci.com/gh/checkstyle/checkstyle/tree/master
[circleci img]: https://circleci.com/gh/checkstyle/checkstyle/tree/master.svg?style=svg

[wercker]: https://app.wercker.com/project/bykey/cd383127330ff96f89f1a78e8fd1a557
[wercker img]: https://app.wercker.com/status/cd383127330ff96f89f1a78e8fd1a557/s/master

[shippable]: https://app.shippable.com/projects/577032be3be4f4faa56adb38
[shippable img]: https://img.shields.io/shippable/577032be3be4f4faa56adb38/master.svg?label=shippable

[buddy]: https://app.buddy.works/ivanovjr/checkstyle/pipelines/pipeline/135806
[buddy img]: https://app.buddy.works/ivanovjr/checkstyle/pipelines/pipeline/135806/badge.svg?token=240176b1ce495d0a03a141f3f2f77971f43fe892a98de31cbc0e392ce5341f76 "buddy pipeline"

[snyk]: https://snyk.io/test/github/checkstyle/checkstyle?targetFile=pom.xml
[snyk img]: https://snyk.io/test/github/checkstyle/checkstyle/badge.svg

[semaphoreci]: https://checkstyle.semaphoreci.com/projects/checkstyle
[semaphoreci img]: https://checkstyle.semaphoreci.com/badges/checkstyle/branches/master.svg?style=shields

[flattr]:https://flattr.com/submit/auto?fid=g39d10&amp;url=https%3A%2F%2Fcheckstyle.org
[flattr img]:https://button.flattr.com/flattr-badge-large.png

[liberapay]:https://liberapay.com/checkstyle/
[liberapay img]:https://liberapay.com/assets/widgets/donate.svg

[bountysource]:https://www.bountysource.com/teams/checkstyle/issues
[bountysource img]:https://api.bountysource.com/badge/team?team_id=3568&style=bounties_posted

[salt.bountysource]:https://salt.bountysource.com/teams/checkstyle
[salt.bountysource img]:https://img.shields.io/bountysource/team/checkstyle/activity.svg?label=salt.bountysource

[backers.opencollective]:https://opencollective.com/checkstyle/
[backers.opencollective img]:https://opencollective.com/checkstyle/backers/badge.svg

[sponsors.opencollective]:https://opencollective.com/checkstyle/
[sponsors.opencollective img]:https://opencollective.com/checkstyle/sponsors/badge.svg

[dependabot]:https://dependabot.com
[dependabot img]:https://api.dependabot.com/badges/status?host=github&repo=checkstyle/checkstyle
