🚀 8.9 Released! → ⚡️ New Node-API Engine Preview, 📲 ns widget ios, 💅 Tailwind v4 and more...
Read Announcement

NativeScript provides direct access to all native APIs as well as cross-platform capabilities through @nativescript/core, third party plugins or @nativescript/* plugins. Additionally, you can easily add custom native files directly to your project and use them immediately from TypeScript.

Ever since NativeScript 8.8, you can use a single command to add platform language files and have them auto configured ready to use with:

bash
ns native add swift AwesomeClass
# Swift file 'nativescript-project/App_Resources/iOS/src/AwesomeClass.swift' generated successfully.

ns native add objective-c OtherAwesomeClass
# Module map 'nativescript-project/App_Resources/iOS/src/module.modulemap' has been updated with the header 'OtherAwesomeClass.h'.

ns native add kotlin com.company.AwesomeClass
# Kotlin file 'nativescript-project/App_Resources/Android/src/main/java/com/company/AwesomeClass.kt' generated successfully.

ns native add java com.company.OtherAwesomeClass
# Java file 'nativescript-project/App_Resources/Android/src/main/java/com/company/OtherAwesomeClass.java' generated successfully.
  1. You can also manually add native code to App_Resources:
  2. Optionally generate TypeScript types for the added APIs

Additionally, NativeScript also supports Jetpack Compose and SwiftUI through plugins.

  1. Jetpack Compose Plugin
  2. SwiftUI Plugin