What is the best programming language to use to create a Terraform REST API wrapper?
There is no definitive answer to what is the best programming language to use for any project, as different languages have different strengths, weaknesses, and trade-offs. However, some factors that you may want to consider when choosing a language for creating a Terraform REST API wrapper are:
- Your experience and familiarity with the language
- The availability and quality of frameworks and libraries that support REST API development
- The performance, scalability, and security of the language
- The support and community around the language
Based on these factors, some popular languages for building REST APIs are Python⁵, JavaScript⁶, Ruby⁵, and Golang⁸. Each of these languages has frameworks that make it easier to create REST APIs, such as Django REST framework for Python⁵, ExpressJS for NodeJS⁶, Ruby on Rails for Ruby⁵, and Gin for Golang⁹.
However, you may also want to look at some existing projects that have implemented Terraform REST API wrappers in different languages, such as Mastercard/terraform-provider-restapi in Go¹ or Terragrunt in Go⁴. These projects may give you some inspiration or guidance on how to approach your own project.
Ultimately, the best programming language for your project depends on your personal preference, goals, and requirements. I hope this helps you make an informed decision.😊
(1) What are the best programming languages for building APIs?. https://hub.packtpub.com/what-are-best-programming-languages-building-apis/ Accessed 3/9/2023.
(2) REST API Tutorial – REST Client, REST Service, and API Calls Explained .... https://www.freecodecamp.org/news/rest-api-tutorial-rest-client-rest-service-and-api-calls-explained-with-code-examples/ Accessed 3/9/2023.
(3) What I learned from building REST APIs in 3 different languages. https://dev.to/cerchie/what-i-learned-from-building-rest-apis-in-3-different-languages-5cn1 Accessed 3/9/2023.
(4) 37 Best web frameworks to create a web REST API as of 2023 - Slant. https://www.slant.co/topics/1397/~best-web-frameworks-to-create-a-web-rest-api Accessed 3/9/2023.
(5) Mastercard/terraform-provider-restapi - GitHub. https://github.com/Mastercard/terraform-provider-restapi Accessed 3/9/2023.
(6) Terragrunt | Terraform wrapper. https://terragrunt.gruntwork.io/ Accessed 3/9/2023.
(7) Resource: aws_api_gateway_rest_api - Terraform. https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/api_gateway_rest_api Accessed 3/9/2023.
(8) Apply/Destroy Terraform Modules via a Simple REST API Endpoint. https://dzone.com/articles/terraformize-applydestory-terraform-modules-via-a Accessed 3/9/2023.
(9) Language for REST API - Stack Overflow. https://stackoverflow.com/questions/42388032/language-for-rest-api Accessed 3/9/2023.