# microsoft/winobjc

**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/microsoft-winobjc).**

6,239 stars · 801 forks · C · MIT · archived

## Links

- GitHub: https://github.com/microsoft/WinObjC
- awesome-repositories: https://awesome-repositories.com/repository/microsoft-winobjc.md

## Description

WinObjC is an implementation of the Objective-C language runtime and object model for the Windows operating system. Its primary purpose is to enable the execution of Objective-C code and iOS APIs on Windows to support the porting of iOS applications.

The project features a native API bridge that maps Objective-C system framework calls to native Windows API functions. It includes a toolchain to convert Xcode project targets and workspaces into Visual Studio formats and translates visual storyboard design files into active on-screen interface elements.

The codebase covers binary interoperability, multi-architecture compilation, and the routing of user interface events. It also provides diagnostic tools for inspecting runtime memory states and visualizing native objects during debugging.

Project outputs are distributed as NuGet packages.

## Tags

### Programming Languages & Runtimes

- [Language Runtime Ports](https://awesome-repositories.com/f/programming-languages-runtimes/language-runtime-ports.md) — Implements the core Objective-C language runtime and object model to execute code on Windows.
- [Runtimes](https://awesome-repositories.com/f/programming-languages-runtimes/programming-language-varieties/programming-languages/systems-languages/objective-c/runtimes.md) — Implements the core Objective-C language runtime and object model to execute code on Windows. ([source](https://github.com/Microsoft/WinObjC/wiki/Roadmap))
- [Windows Runtime Implementations](https://awesome-repositories.com/f/programming-languages-runtimes/programming-language-varieties/programming-languages/systems-languages/objective-c/windows-runtime-implementations.md) — Runs the Objective-C language runtime on Windows to maintain cross-platform development consistency.
- [Binary Cross-Compilation](https://awesome-repositories.com/f/programming-languages-runtimes/cross-platform-library-compilations/binary-cross-compilation.md) — Compiles Objective-C source code into executable binaries for multiple CPU architectures.
- [Multi-Architecture Build Configurations](https://awesome-repositories.com/f/programming-languages-runtimes/source-code-compilers/multi-target-compilers/hardware-targeted-compilation/multi-architecture-build-configurations.md) — Produces binaries for various CPU targets and applies compiler optimizations for improved performance. ([source](https://github.com/Microsoft/WinObjC/wiki/Roadmap))

### DevOps & Infrastructure

- [Cross-Platform Execution](https://awesome-repositories.com/f/devops-infrastructure/cross-platform-deployment-targets/cross-platform-execution.md) — Executes Objective-C logic and iOS APIs on Windows for cross-platform application development. ([source](https://github.com/microsoft/winobjc#readme))

### Mobile Development

- [Application Porting Frameworks](https://awesome-repositories.com/f/mobile-development/application-porting-frameworks.md) — Adapts iOS applications and APIs to run on Windows by converting projects and implementing frameworks.
- [iOS Framework Integrations](https://awesome-repositories.com/f/mobile-development/ios-framework-integrations.md) — Provides compatible versions of core iOS system libraries to support application logic on Windows. ([source](https://github.com/Microsoft/WinObjC/wiki/Roadmap))
- [Native API Bridges](https://awesome-repositories.com/f/mobile-development/android-ecosystem/android-platform-integrations/native-platform-access/native-api-bridges.md) — Implements bridges that allow the codebase to call native Windows system functions and interface controls. ([source](https://github.com/Microsoft/WinObjC/wiki/Quick-Start-Tutorial))

### Operating Systems & Systems Programming

- [Native API Bridges](https://awesome-repositories.com/f/operating-systems-systems-programming/kernel-core-internals/system-programming-primitives/system-abstractions/native-interoperability-bindings/native-system-integrations/native-api-bridges.md) — Maps Objective-C system framework calls to native Windows API functions for hardware and system interaction.
- [Native Windows Execution](https://awesome-repositories.com/f/operating-systems-systems-programming/native-windows-execution.md) — Allows calling native Windows system functions and platform APIs from within an Objective-C codebase.
- [Binary Layout Interoperability](https://awesome-repositories.com/f/operating-systems-systems-programming/binary-layout-interoperability.md) — Uses compatible binary layouts and calling conventions to enable communication between disparate system runtime libraries.

### Development Tools & Productivity

- [Cross-Architecture Binary Generation](https://awesome-repositories.com/f/development-tools-productivity/cross-architecture-binary-compilation/multi-architecture-binary-bundling/cross-architecture-binary-generation.md) — Produces optimized machine code for various CPU targets through a unified build process.
- [Cross-Platform Toolchains](https://awesome-repositories.com/f/development-tools-productivity/cross-platform-toolchains.md) — Includes a toolchain to convert Xcode project targets and workspaces into Visual Studio formats.
- [Project File Conversions](https://awesome-repositories.com/f/development-tools-productivity/project-version-managers/project-file-conversions.md) — Provides a utility to convert Xcode project targets and workspaces into compatible Visual Studio formats. ([source](https://github.com/microsoft/winobjc#readme))

### User Interface & Experience

- [Cross-Platform UI Frameworks](https://awesome-repositories.com/f/user-interface-experience/cross-platform-ui-frameworks.md) — Renders visual storyboards and routes events to maintain consistent interfaces across operating systems.
- [Storyboard Layout Rendering](https://awesome-repositories.com/f/user-interface-experience/storyboard-controller-instantiation/storyboard-layout-rendering.md) — Translates visual storyboard design files into active on-screen interface elements using native controls.
- [Storyboard Rendering](https://awesome-repositories.com/f/user-interface-experience/storyboard-rendering.md) — Translates visual storyboard design files into active on-screen interface elements on Windows. ([source](https://github.com/Microsoft/WinObjC/wiki/Roadmap))
