

# Supported languages for Amazon Q Developer in the IDE
<a name="q-language-ide-support"></a>

You can use the following features of Amazon Q Developer in the IDE with any programming language:
+ [Chat](q-in-IDE-chat.md) 
+ [Inline chat](q-in-IDE-inline-chat.md)

The quality of outputs while using these features varies based on the popularity of the language.

For the remaining features of Amazon Q in the IDE, the supported languages are listed in the following sections. 

## Language support for inline suggestions
<a name="inline-suggestions-language-support"></a>

Amazon Q supports [inline code suggestions](inline-suggestions.md) for multiple programming languages. The accuracy and quality of the code generation for a programming language depends on the size and quality of the training data.

In terms of the quality of the training data, the programming languages with the most support are:
+ C
+ C\$1\$1
+ C\$1
+ Dart
+ Go
+ Java
+ JavaScript
+ Kotlin
+ Lua
+ PHP
+ PowerShell
+ Python
+ R
+ Ruby
+ Rust
+ Scala
+ Shell
+ SQL
+ Swift
+ SystemVerilog
+ TypeScript

The Infrastructure as Code (IaC) languages with the most support are:
+ CDK (Typescript, Python)
+ HCL (Terraform)
+ JSON
+ YAML

## Language support for transformations
<a name="transformation-language-support"></a>

The supported languages for transformation depend on the environment where you are transforming code.

In JetBrains IDEs and Visual Studio Code, Amazon Q can transform code in the following languages:
+ [Java](code-transformation.md)
+  [Embedded SQL conversion for Oracle to PostgreSQL database migration ](transform-sql.md)

In Visual Studio, Amazon Q can transform code in the following languages:
+ [C\$1 in .NET applications](transform-dotnet-IDE.md)

For more information about supported languages and other prerequisites for transformation, see the topic for the type of transformation you're performing.

## Language support for code reviews
<a name="code-reviews-language-support"></a>

Amazon Q can create [code reviews](code-reviews.md) and provide automatic code fixes for files and projects written in the following languages: 
+ Java ‐ Java 17 and earlier
+ JavaScript ‐ ECMAScript 2021 and earlier
+ Python ‐ Python 3.11 and earlier, within the Python 3 series
+ C\$1 ‐ All versions (.NET 6.0 and later recommended)
+ TypeScript ‐ All versions
+ Ruby ‐ Ruby 2.7 and 3.2
+ Go ‐ Go 1.18 
+ C ‐ C11 and earlier 
+ C\$1\$1 ‐ C\$1\$117 and earlier 
+ PHP ‐ PHP 8.2 and earlier 
+ Kotlin ‐ Kotlin 2.0.0 and earlier 
+ Scala ‐ Scala 3.2.2 and earlier 
+ JSX ‐ React 17 and earlier 
+ Infrastructure as Code (IaC) languages
  + CloudFormation ‐ 2010-09-09
  + Terraform ‐ 1.6.2 and earlier
  + AWS CDK ‐ TypeScript and Python

## Language support for customizations
<a name="customization-language-support"></a>

Amazon Q supports for the following languages, and uses the listed file types to create customizations:
+ Bash/Shell (.sh, .zsh, .bash)
+ C (.c, .h)
+ C\$1 (.cs)
+ C\$1\$1 (.cpp, .hpp, .h)
+ Dart (.dart)
+ Go (.go)
+ HCL (.hcl)
+ HTML (.html, .htm)
+ Java (.java) 
+ JavaScript (.js, .jsx) 
+ JSON (.json)
+ Kotlin (.kt, .kts)
+ Markdown (.md, .mdx) 
+ PHP (.php)
+ Powershell (.ps1, .psm1, .psd1)
+ Python (.py) 
+ reStructuredText (.rst) 
+ Ruby (.rb)
+ Rust (.rs)
+ Scala (.scala)
+ Terraform (.tf, .tfvars)
+ Text (.txt) 
+ TypeScript (.ts, .tsx) 
+ YAML (.yaml, .yml)