All Projects → mono → Embeddinator 4000

mono / Embeddinator 4000

Licence: mit
Tools to turn .NET libraries into native libraries that can be consumed on Android, iOS, Mac, Linux and other platforms.

Programming Languages

java
68154 projects - #9 most used programming language
c
50402 projects - #5 most used programming language
csharp
926 projects
cplusplus
227 projects

Projects that are alternatives of or similar to Embeddinator 4000

Cppsharp
Tools and libraries to glue C/C++ APIs to high-level languages
Stars: ✭ 2,221 (+202.18%)
Mutual labels:  bindings, xamarin, mono, interop
rust-lang-interop
Rust language interoperability with other languages - C, C++ etc.
Stars: ✭ 53 (-92.79%)
Mutual labels:  bindings, interop
Xamarin.iOS.DatePickerDialog
Xamarin iOS C# port of https://github.com/squimer/DatePickerDialog-iOS-Swift
Stars: ✭ 24 (-96.73%)
Mutual labels:  xamarin, bindings
Fusillade
An opinionated HTTP library for Mobile Development
Stars: ✭ 269 (-63.4%)
Mutual labels:  xamarin, mobile
PCLExt.FileStorage
Portable Storage APIs
Stars: ✭ 35 (-95.24%)
Mutual labels:  xamarin, mono
bottomnavigationviewex-android-binding
Xamarin.Android Binding Library for Ittianyu BottomNavigationViewEx
Stars: ✭ 25 (-96.6%)
Mutual labels:  xamarin, bindings
fscalendar-ios-binding
Xamarin Binding Library - FSCalendar for iOS https://github.com/WenchaoD/FSCalendar
Stars: ✭ 12 (-98.37%)
Mutual labels:  xamarin, bindings
Xamarin-Android
PSPDFKit for Android wrapper for the Xamarin platform.
Stars: ✭ 18 (-97.55%)
Mutual labels:  xamarin, bindings
Gray hat csharp code
This repository contains full code examples from the book Gray Hat C#
Stars: ✭ 301 (-59.05%)
Mutual labels:  xamarin, mono
Open Source Xamarin Apps
📱 Collaborative List of Open Source Xamarin Apps
Stars: ✭ 318 (-56.73%)
Mutual labels:  xamarin, mobile
Mvvmcross
The .NET MVVM framework for cross-platform solutions, including Xamarin.iOS, Xamarin.Android, Windows and Mac.
Stars: ✭ 3,594 (+388.98%)
Mutual labels:  xamarin, mono
ably-dotnet
.NET, Xamarin and Mono client library SDK for Ably realtime messaging service
Stars: ✭ 32 (-95.65%)
Mutual labels:  xamarin, mono
Xamarin-iOS
PSPDFKit for iOS wrapper for the Xamarin platform.
Stars: ✭ 14 (-98.1%)
Mutual labels:  xamarin, bindings
AppRopio.Mobile
AppRopio - mobile apps builder for iOS/Android based on Xamarin
Stars: ✭ 16 (-97.82%)
Mutual labels:  xamarin, mono
Portable-WebDAV-Library
Moved to codeberg.org - https://codeberg.org/DecaTec/Portable-WebDAV-Library - The Portable WebDAV Library is a strongly typed, async WebDAV client library which is fully compliant to RFC 4918, RFC 4331 and "Additional WebDAV Collection Properties". It is implemented as .NETStandard 1.1 library in oder to be used on any platform supporting .NETS…
Stars: ✭ 45 (-93.88%)
Mutual labels:  xamarin, mono
Httwrap
General purpose, simple but useful HttpClient wrapper for .NET & Xamarin/Mono
Stars: ✭ 39 (-94.69%)
Mutual labels:  xamarin, mono
Firesharp
An asynchronous cross-platform .Net library for Firebase
Stars: ✭ 601 (-18.23%)
Mutual labels:  xamarin, mono
KodiSharp
Use Kodi python APIs in C#, and write rich addons using the .NET framework/Mono
Stars: ✭ 22 (-97.01%)
Mutual labels:  mono, interop
uno.toolkit.ui
A set of custom controls for the WinUI and the Uno Platform not offered out of the box by WinUI, such as Card, TabBar, NavigationBar, etc.
Stars: ✭ 45 (-93.88%)
Mutual labels:  xamarin, mono
Tensorflowsharp
TensorFlow API for .NET languages
Stars: ✭ 3,027 (+311.84%)
Mutual labels:  xamarin, mono

Embeddinator-4000 Logo

Embeddinator-4000 is a tool to turn existing .NET libraries into libraries that can be consumed by other languages.

It is a tool that takes a .NET assembly and generates the necessary glue to surface the .NET API as a native API. The goal is to surface .NET libraries to all ecosystems where Mono/Xamarin run, and for each platform we provide an interface that is native to that platform as well as the tools needed to turn a .NET library into something that can be consumed on that platform.

Presently there is support for .NET to C, Objective-C (across the various Apple platforms) and Java (Android and regular Java), across Windows, Linux and macOS platforms.

Getting Started

Check out our documentation to get started.

Community

Feel free to join us at our #managed-interop Gitter discussion channel.

Building

  • Clone this repository
  • Initialize/update submodules: git submodule update --recursive --init
  • Open the solution file Embeddinator-4000.sln with Visual Studio or Visual Studio For Mac
  • Build

If you prefer to build from the command line Cake or Make can be used to build instead of Visual Studio For Mac.

Cake

The Android/C portions of the project can also be built with Cake using the build.ps1 / build.sh scripts.

On OS X, you can setup your environment for Android by running a shell script:

./build.sh -t Generate-Android -v diagnostic

On Windows, in Powershell:

.\build.ps1 -t Generate-Android -v diagnostic

This will download a master build of Xamarin.Android and extract it into /external/Xamarin.Android.

Embeddinator-4000.exe will be compiled to build/lib/Release. The Cake script will also run Embeddinator against a test assembly, so you can be sure your system is setup properly.

Makefile

The Objective-C portions of the project can be built with make in objcgen.

Nuget Generation

To generate the nuget one can use either (they both invoke the same build process):

  • make nuget in objcgen
  • Cake :./build.sh -t Create-Package

Usage

The getting started documentation walks through basic usage of the Embeddinator.

More details on platform specific invocations can be found here.

Development

The contributing guide covers a number of areas to consider when contributing to Embeddinator-4000.

A number of internal documentation files exist describing the project and internal structure of Embeddinator:

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].