Using external javascript library

Hello. I’m trying to use the chart.js library in my kotlin project but can’t get it to work.

I downloaded the index.d.ts from
and used ts2kt to generate kotlin definitions. I then included this file in my project and the dependency in the build.gradle (i’m using the kotlin frontend plugin)

kotlinFrontEnd {
    npm {
          dependency("@types/chart.js", "2.7.25")

However, when i load my webpage, i get the following error in the console:

"Uncaught ReferenceError: Chart is not defined"

I tried to fix this by adding the line (and variations like “Chart”, “@types/chart.js”):


to the ts2kt generated file, but then my build fails with the message:

"Module not found: Error: Can't resolve 'chart.js' in '/home/myproject/build/js'"

How can i fix this?

I’m not sure what solution is but I’m interested to see a good example of someone using Chart.js with Kotlin.

Looks like you have not declared actual chart.js only typescript type definitions.
Try adding dependency(“chart.js”)

1 Like

Thank you @Konstantin-Khvan, it worked! (the JsModule annotation was also needed)