# jetbrains/kotlin-native

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/jetbrains-kotlin-native).**

6,982 stars · 561 forks · Kotlin · Apache-2.0 · archived

## Links

- GitHub: https://github.com/JetBrains/kotlin-native
- awesome-repositories: https://awesome-repositories.com/repository/jetbrains-kotlin-native.md

## Topics

`c` `compiler` `kotlin` `llvm` `objective-c`

## Description

Kotlin-native is an ahead-of-time, cross-platform compiler and toolchain that transforms Kotlin source code into standalone native machine binaries. It functions as an LLVM native compiler, producing executable files that run directly on hardware without the requirement of a virtual machine.

The project enables cross-platform native development across multiple operating systems and processor architectures, including iOS, Linux, and Windows. This allows for the creation of native Apple platform applications and software for embedded systems programming where direct memory management and minimal runtime overhead are required.

The toolchain incorporates a multi-stage compilation pipeline and a custom memory manager to handle object lifecycles within native environments. It further provides C-interop generation to allow direct function calls between native libraries and Kotlin code.

## Tags

### Development Tools & Productivity

- [Cross-Platform and Native Compilation](https://awesome-repositories.com/f/development-tools-productivity/build-tooling/cross-platform-native-compilation.md) — Provides a specialized toolchain for targeting multiple operating systems using a single Kotlin codebase.
- [Native Binary Toolchains](https://awesome-repositories.com/f/development-tools-productivity/build-tooling/build-orchestration-logic/build-orchestration-configuration/build-automation-systems/build-systems/binary-compilation-toolchains/native-binary-toolchains.md) — Provides a complete set of tools for building and linking executable files that run directly on host hardware.

### Programming Languages & Runtimes

- [Ahead-Of-Time Compilers](https://awesome-repositories.com/f/programming-languages-runtimes/compiler-interpreter-internals/compiler-toolchains/execution-mode-engines/ahead-of-time-kernel-compilation/ahead-of-time-compilers.md) — Implements an ahead-of-time compilation process to transform Kotlin source code into standalone machine-executable binaries.
- [Cross-Platform Compilers](https://awesome-repositories.com/f/programming-languages-runtimes/cross-platform-compilers.md) — Acts as a system for targeting multiple operating systems and processor architectures from a single source language.
- [LLVM-Based Compilers](https://awesome-repositories.com/f/programming-languages-runtimes/llvm-based-compilers.md) — Utilizes the LLVM toolchain as a backend to generate optimized machine code for diverse hardware targets.
- [Native Machine Code Compilation](https://awesome-repositories.com/f/programming-languages-runtimes/native-machine-code-compilation.md) — Produces standalone machine executables that run directly on host hardware without a virtual machine. ([source](https://github.com/jetbrains/kotlin-native#readme))
- [C Header Binding Generators](https://awesome-repositories.com/f/programming-languages-runtimes/language-interoperability/native-c-interoperability/c-function-bindings/native-header-generators/c-header-binding-generators.md) — Provides tools to parse C headers and automatically generate type-safe language bindings for native interoperability.
- [Multi-Pass Compiler Pipelines](https://awesome-repositories.com/f/programming-languages-runtimes/multi-pass-compiler-pipelines.md) — Employs a multi-pass compiler architecture to process code through parsing, optimization, and binary generation stages.
- [Platform-Specific Runtimes](https://awesome-repositories.com/f/programming-languages-runtimes/platform-specific-runtimes.md) — Embeds minimal core libraries and system glue code tailored for target operating systems like iOS and Linux.

### Software Engineering & Architecture

- [Memory Management Systems](https://awesome-repositories.com/f/software-engineering-architecture/memory-management-systems.md) — Includes a custom memory management system with garbage collection tailored for native execution environments.
- [Embedded Systems Development](https://awesome-repositories.com/f/software-engineering-architecture/development-methodologies/application-targets-domains/embedded-systems-development.md) — Enables software development for resource-constrained hardware environments requiring direct memory management.

### Mobile Development

- [Native iOS Applications](https://awesome-repositories.com/f/mobile-development/native-ios-applications.md) — Supports building native Apple platform applications by compiling Kotlin for iOS.
