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!
Overview
jsii allows code in any language to naturally interact with JavaScript classes. It is the technology that enables the [AWS Cloud Development Kit][cdk] to deliver polyglot libraries from a single codebase!
[cdk]: https://github.com/aws/aws-cdk
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), ...
:question: Documentation
Head over to our documentation website!
The jsii toolchain is spread out on multiple repositories:
- aws/jsii-compiler is where the
jsiicompiler is maintained - aws/jsii-rosetta is where the
jsii-rosettasample code transliteration tool
- aws/jsii is where the rest of the toolchain is maintained, including:
@jsii/spec, the package that defines the .jsii assembly specification
- jsii-pacmak, the bindings generator for jsii packages
- jsii-reflect, a higher-level way to process .jsii assemblies
- jsii-config, an interactive tool to help configure your jsii package
:book: Blog Posts
Here's a collection of blog posts (in chronological order) related to jsii:
- 2020-01-11: [How to Create CDK Constructs][mbonig-2020-01-11], by [Matthew Bonig][@mbonig]
- 2020-05-27: [Generate Python, Java, and .NET software libraries from a TypeScript
- 2020-12-23: [How the jsii open source framework meets developers where they are][romain-2020-12-23], by [Romain Marcadier][@RomainMuller]
:information_source: 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!
:gear: Contributing
See CONTRIBUTING.
Contributors β¨
Thanks goes to these wonderful people (emoji key):
