jsii
allows code in any language to naturally interact with JavaScript classes. It is the technology that enables the
AWS Cloud Development Kit to deliver polyglot libraries from a single codebase!
A class library written in TypeScript can be used in projects authored in TypeScript or Javascript (as usual), but also in Python, Java, C# (and other languages from the .NET family), ...
Head over to our documentation website!
The jsii toolchain is spread out on multiple repositories:
- aws/jsii-compiler is where the
jsii
compiler is maintained - aws/jsii-rosetta is where the
jsii-rosetta
sample code transliteration tool is maintained - aws/jsii is where the rest of the toolchain is maintained, including:
- The jsii runtime libraries for the supported jsii target languages
@jsii/spec
, the package that defines the.jsii
assembly specificationjsii-pacmak
, the bindings generator for jsii packagesjsii-reflect
, a higher-level way to process.jsii
assembliesjsii-config
, an interactive tool to help configure your jsii package
Here's a collection of blog posts (in chronological order) related to jsii
:
- 2020-01-11: How to Create CDK Constructs, by Matthew Bonig
- 2020-05-27: Generate Python, Java, and .NET software libraries from a TypeScript source, by Hari Pachuveetil
- 2020-12-23: How the jsii open source framework meets developers where they are, by Romain Marcadier
βΉοΈ If you wrote blog posts about
jsii
and would like to have them referenced here, do not hesitate to file a pull request to add the links here!
See CONTRIBUTING.
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!
jsii is distributed under the Apache License, Version 2.0.