Code Monkey home page Code Monkey logo

cocoabean's Introduction

CocoaBean

Logo

Build status

CocoaBean is a multi-platform javaScript framework. It uses real OOP and MVC. It tries to mimic local app development just like Android and iOS. Currently, the api structure is nearly the same as Apple's Cocoa and Cocoa Touch framework. In the future, it may change or may not change. It depends. However and always, one native style code base can generate multiple apps with javaScript.

How to try it out?

Clone the framework to your local directory

git clone https://github.com/cheunghy/CocoaBean.git

And then cd to the framework

cd path/to/cocoabean

Run this command, you may need sudo if gems are installed to system directory

rake install

If bash tells you -bash: rake: command not found, you may need to install ruby.

See instructions here.

Now CocoaBean framework should be installed as a gem.

To create an app, using cocoabean new APP_PATH.

To preview it in the browser, using cocoabean preview web.

To unit test it, using cocoabean test web.

To distribute the app, using cocoabean dist web.

To change default app setting, modify Beanfile.

You may customize cocoabean behavior through ~/.cocoabeanrc.

For the documentation, just refer to Apple's Cocoa Touch and Cocoa documentation for now. Notice there is some mappings, CB.View is equivalent to UIView or NSView, CB.ViewController is equivalent to UIViewController or NSViewController, CB.Rect, CB.Size, CB.Point are equivalents of CGRect, CGSize and CGPoint.

Implementation status

Platform Status
Web browser done a lot
iOS will start
Android will start
OS X will start
Windows in the discussion

Development

This framework is under development.

Any contribution is welcome.

Usage of this framework and contribution is in the wiki.

If you find any bugs or if you have feature request, welcome to fire an issue here.

Need your help!

There are a lot of works should be done, just take it freely!

Command line interface:

  • Refactor generation code to rake task based.

  • Add unit tests to cli code.

  • Require activesupport and use it "bla bla" style unit test titles.

Web platform implementation:

  • Core extension to Array, String and Object.

  • Should we add an enumerator type just like ruby did?

  • Code documentation.

You may join the discussion at anytime!

A sample CocoaBean application

chess game Screen shot

cocoabean's People

Contributors

199911 avatar caofengzhen avatar victorteokw avatar

Watchers

 avatar

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.