Code Monkey home page Code Monkey logo

nodobjc's Introduction

NodObjC

The Objective-C bridge for NodeJS

NodObjC exposes the Objective-C runtime to NodeJS in a high-level, easy to use fashion. It uses the BridgeSupport files to dynamically generate an API from an Objective-C "Framework" at runtime, and uses node-ffi to dynamically interact with Objective-C's runtime.

Essentially, NodObjC is similar in nature to the other popular Objetive-C scripting bridges:

  • JSCocoa
  • PyObjC
  • CocoaRuby

So you can write Objective-C based applications entirely with Node and JavaScript! Eventually even iOS native apps as well! So what are you waiting for? Get to coding!

Note: This lib is still very much under development. It is not ready for primetime quite yet. Watch this project to follow the updates!

Example

var $ = require('NodObjC');

// First you need to "load" the Framework
var F = $.import('Foundation');

// Setup the recommended NSAutoreleasePool instance
F.NSAutoreleasePool('alloc')('init');

// Now let's create an NSMutableArray
var array = F.NSMutableArray('alloc')({ 'initWithCapacity': 3 });

// Add some JS objects to the array
array({ 'addObject': "Hello World!" });
array({ 'addObject': { an: 'object' } });
array({ 'addObject': NSMutableArray });

// Print out the contents (calling [array description])
console.log(array);

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.