ProductPromotion
Logo

Kotlin

made by https://0x3d.site

GitHub - awslabs/aws-sdk-kotlin: Multiplatform AWS SDK for Kotlin
Multiplatform AWS SDK for Kotlin. Contribute to awslabs/aws-sdk-kotlin development by creating an account on GitHub.
Visit Site

GitHub - awslabs/aws-sdk-kotlin: Multiplatform AWS SDK for Kotlin

GitHub - awslabs/aws-sdk-kotlin: Multiplatform AWS SDK for Kotlin

AWS SDK for Kotlin

Apache 2 licensed Maven

This repo contains the AWS SDK for Kotlin and its public roadmap.

Getting Started

See the Getting Started Guide to learn how to use the AWS SDK for Kotlin in your program.

Feedback

The SDK uses GitHub Issues to track feature requests and issues with the SDK. In addition, we use GitHub Projects to provide a high level overview of our roadmap and the features we are actively working on.

You can provide feedback or report a bug by submitting an issue. This is the preferred mechanism to give feedback so that other users can engage in the conversation, +1 issues, etc.

Contributing

If you are interested in contributing to the AWS SDK for Kotlin, please take a look at CONTRIBUTING

Versioning

See our VERSIONING policy for how the SDK is versioned.

Development

Generate SDK(s)

Generated sources are not checked into the repository, you first have to generate the clients before you can build them. A step-by-step guide is available that demonstrates building the AWS DynamoDB service, or if you have a good working knowledge of Gradle, see below:

./gradlew --no-daemon :codegen:sdk:bootstrap

NOTE: This task will respect the AWS services specified by project properties. See options below. NOTE: To re-run codegen for the same set of services multiple times add the --rerun-tasks flag.

After generating the services you care about they are available to build:

e.g.

./gradlew :services:lambda:build

Where the task follows the pattern: :services:SERVICE:build

To see list of all projects run ./gradlew projects

Generating a single service

See the Build Properties below to specify this in a config file.

./gradlew --no-daemon -Paws.services=+lambda  :codegen:sdk:bootstrap
Testing Locally

Testing generated services generally requires publishing artifacts (e.g. client-runtime) of smithy-kotlin, aws-crt-kotlin, and aws-sdk-kotin to maven local.

Generating API Documentation

API documentation is generated using Dokka which is the official documentation tool maintained by JetBrains for documenting Kotlin code.

Unlike Java, Kotlin uses its own KDoc format.

To generate API reference documentation for the AWS Kotlin SDK:

./gradlew --no-daemon --no-parallel dokkaHtmlMultiModule

This will output HTML formatted documentation to build/dokka/htmlMultiModule

NOTE: You currently need an HTTP server to view the documentation in browser locally. You can either use the builtin server in Intellij or use your favorite local server (e.g. python3 -m http.server). See Kotlin/dokka#1795

Build Properties

You can define a local.properties config file at the root of the project to modify build behavior.

Property Description
compositeProjects Specify paths to repos the SDK depends upon such as smithy-kotlin
aws.services Specify inclusions (+ prefix) and exclusions (- prefix) of service names to generate
aws.protocols Specify inclusions (+ prefix) and exclusions (- prefix) of AWS protocols to generate

Composite Projects

Dependencies of the SDK can be added as composite build such that multiple repos may appear as one holistic source project in the IDE.

# comma separated list of paths to `includeBuild()`
# This is useful for local development of smithy-kotlin in particular 
compositeProjects=../smithy-kotlin

Generating Specific Services Based on Name or Protocol

A comma separated list of services to include or exclude for generation from codegen/sdk/aws-models may be specified with the aws.services property. A list of protocols of services to generate may be specified with the aws.protocols property.

Included services require a '+' character prefix and excluded services require a '-' character. If any items are specified for inclusion, only specified included members will be generated. If no items are specified for inclusion, all members not excluded will be generated. When unspecified all services found in the directory specified by the modelsDir property are generated. Service names match the filenames in the models directory service.VERSION.json.

Some example entries for local.properties:

# Generate only AWS Lambda:
aws.services=+lambda
# Generate all services but AWS location and AWS DynamoDB:
aws.services=-location,-dynamodb
# Generate all services except those using the restJson1 protocol:
aws.protocols=-restJson1

Debugging

See Debugging

Security

Please refer to our security policy.

Supported targets

The SDK supports the following targets:

More Resources
to explore the angular.

mail [email protected] to add your project or resources here 🔥.

Related Articles
to learn about angular.

FAQ's
to learn more about Angular JS.

mail [email protected] to add more queries here 🔍.

More Sites
to check out once you're finished browsing here.

0x3d
https://www.0x3d.site/
0x3d is designed for aggregating information.
NodeJS
https://nodejs.0x3d.site/
NodeJS Online Directory
Cross Platform
https://cross-platform.0x3d.site/
Cross Platform Online Directory
Open Source
https://open-source.0x3d.site/
Open Source Online Directory
Analytics
https://analytics.0x3d.site/
Analytics Online Directory
JavaScript
https://javascript.0x3d.site/
JavaScript Online Directory
GoLang
https://golang.0x3d.site/
GoLang Online Directory
Python
https://python.0x3d.site/
Python Online Directory
Swift
https://swift.0x3d.site/
Swift Online Directory
Rust
https://rust.0x3d.site/
Rust Online Directory
Scala
https://scala.0x3d.site/
Scala Online Directory
Ruby
https://ruby.0x3d.site/
Ruby Online Directory
Clojure
https://clojure.0x3d.site/
Clojure Online Directory
Elixir
https://elixir.0x3d.site/
Elixir Online Directory
Elm
https://elm.0x3d.site/
Elm Online Directory
Lua
https://lua.0x3d.site/
Lua Online Directory
C Programming
https://c-programming.0x3d.site/
C Programming Online Directory
C++ Programming
https://cpp-programming.0x3d.site/
C++ Programming Online Directory
R Programming
https://r-programming.0x3d.site/
R Programming Online Directory
Perl
https://perl.0x3d.site/
Perl Online Directory
Java
https://java.0x3d.site/
Java Online Directory
Kotlin
https://kotlin.0x3d.site/
Kotlin Online Directory
PHP
https://php.0x3d.site/
PHP Online Directory
React JS
https://react.0x3d.site/
React JS Online Directory
Angular
https://angular.0x3d.site/
Angular JS Online Directory