The Azure SDK delivers a platform for developers to leverage the wide variety of Azure services in their language of choice. The source for the client libraries exists for the most part in repositories for each language. This repository is meant to be a jumping off point into those language specific repositories. Issues related to a specific language should be opened in the corresponding repository but cross cutting issues can be opened in this repository.
|General||General Design Guidelines||azure-sdk Repository||Official Azure Documentation|
|Android||Design Guidelines for Android (Draft)||azure-sdk-for-android Repository||Coming Soon|
|C# /.NET||Design Guidelines for .NET||.NET Packages||azure-sdk-for-net Repository||.NET Documentation|
|Go||Design Guidelines for Go (Draft)||azure-sdk-for-go Repository||Go Documentation|
|C||Design Guidelines for C99 (Draft)||azure-sdk-for-c Repository||Coming Soon|
|C++||Design Guidelines for C++ (Draft)||azure-sdk-for-cpp Repository||Coming Soon|
|iOS||Design Guidelines for iOS (Draft)||azure-sdk-for-ios Repository||Coming Soon|
|Java||Design Guidelines for Java||Java Packages||azure-sdk-for-java Repository||Java Documentation|
|Python||Design Guidelines for Python||Python Packages||azure-sdk-for-python Repository||Python Documentation|
Service teams should schedule reviews of their client libraries with the ADP Review Board. See the Review Process for more information.
SDK: Software Development Kit. This refers to the entire Azure SDK for a single language, itself broken up into numerous Azure SDK Client Libraries (as defined below).
Client Library. This refers to a library (and associated tools, documentation, and samples) that customers/developers use to ease working with an Azure service. There is often one client library per service and per programming language. Sometimes a single client library will contain the ability to connect to multiple services. Each client library is published separately to the appropriate language-specific package repository. These releases are performed exclusively by the Azure SDK engineering systems team. Customers/Developers consume and use each client library separately as necessary to solve their use case.
Package. This refers to a client library after it has been packaged for distribution for customer-developers to consume. Examples are:
- A NuGet package for a .NET client library
- A Maven package for a Java library
- A Python wheel for a Python library
This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.
When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.
Please see our contributing guide for complete instructions on how you can contribute to the Azure SDK. For instructions on how to contribute to each individual SDK, please check the CONTRIBUTING.md in each language repo.