# Extension guide

- [Web API](/sonarqube-server/extension-guide/web-api.md): SonarQube provides the Web API to access its functionalities from applications.
- [Adding coding rules](/sonarqube-server/extension-guide/adding-coding-rules.md): Adding custom coding rules to your SonarQube Server instance.
- [Developing a plugin](/sonarqube-server/extension-guide/developing-a-plugin.md): Developing a plugin for SonarQube Server.
- [Plugin basics](/sonarqube-server/extension-guide/developing-a-plugin/plugin-basics.md): The sonar-plugin-api is a Java API used to develop plugins for SonarQube.
- [Supporting new languages](/sonarqube-server/extension-guide/developing-a-plugin/supporting-new-languages.md): Supporting a new language in SonarQube involves six steps.
- [Executable lines](/sonarqube-server/extension-guide/developing-a-plugin/executable-lines.md): Internal guidelines to define executable lines for a language.
- [Adding pages to the webapp](/sonarqube-server/extension-guide/developing-a-plugin/adding-pages-to-the-webapp.md): Creating page extensions to run in your SonarQube environment.
- [Supporting SCM providers](/sonarqube-server/extension-guide/developing-a-plugin/supporting-scm-providers.md): Information from the Source Code Management (SCM) provider is used by a SonarScanner.
- [Internationalization](/sonarqube-server/extension-guide/internationalization.md): Guidelines to apply the i18n mechanism and how to help the Community.
