Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/kotlin/dukat

Converter of <any kind of declarations> to Kotlin external declarations
https://github.com/kotlin/dukat

converter external-declarations kotlin kotlin-declarations kotlin-js typescript webidl

Last synced: 1 day ago
JSON representation

Converter of <any kind of declarations> to Kotlin external declarations

Awesome Lists containing this project

README

        

[![Kotlin Experimental](https://kotl.in/badges/experimental.svg)](https://kotlinlang.org/docs/components-stability.html)
[![JetBrains official project](https://jb.gg/badges/official.svg)](https://confluence.jetbrains.com/display/ALL/JetBrains+on+GitHub)
[![GitHub license](https://img.shields.io/badge/license-Apache%20License%202.0-blue.svg?style=flat)](https://www.apache.org/licenses/LICENSE-2.0)
# Description
Converter of TypeScript definition files to Kotlin declarations

This requires JRE 1.6+ to run. It generates Kotlin files that are compatible with Kotlin 1.1+ (generated declarations
are tested against latest stable compiler version)

# How to install

The simplest way to use is install the latest version form [npm](https://www.npmjs.com/package/dukat):
```shell
npm install -g dukat
```

On a weekly basis we also deply a dev build which sums up what we currently have in master,
so **if you want to checkout the snapshot version, use `dukat@next`**:

```
npm install -g dukat@next
```

# Usage

```shell
dukat []
```

where possible options include:
```shell
-p package name for the generated file (by default filename.d.ts renamed to filename.d.kt)
-m String use this value as @file:JsModule annotation value whenever such annotation occurs
-d destination directory for files with converted declarations (by default declarations are generated in current directory)
-v, -version print version
```

# How to setup and build

1. clone this project
```shell
# on Windows-based platforms set following: `git config core.autocrlf true`
git clone
```

2. build

```shell
./gradlew build
```

3. (optional) Run unit tests

```shell
./gradlew test -Pdukat.test.failure.always
```

[see CHANGELOG](https://github.com/Kotlin/dukat/blob/master/CHANGELOG.md)

# Useful links

- [TypeScript type definitions](https://github.com/DefinitelyTyped/DefinitelyTyped)