0.4.2 • Public • Published


A GUI typesetting display engine and cross platform GUI application development framework based on NodeJS/OpenGL

Goal: developing GUI applications on this basis can take into account both the simplicity and speed of developing WEB applications, as well as the performance and experience of Native applications.



  • Only iOS and Android systems are supported for the time being, this does not include AndroidTV, because TV applications are very different from mobile applications

  • From here, Go API Index can go to API Documents Index

Screenshot Screenshot Screenshot

Simple Examples

This is a simple program to display Hello world on the screen

import { GUIApplication, Root } from 'shark'
new GUIApplication().start(
    <Root>hello world!</Root>

You can get a more detailed Examples

Start Usage

If you've never used Shark before, you can start from here and build your Shark program step by step.

Install shark-tools

First, you need to install the toolkit provided by Shark

  • Install shark-tools using nodejs npm

  • Open Terminal and execute the following command:

# shell 
$ sudo npm install -g shark-tools
  • Running shark-tools requires dependency on nodejs and python2.7

  • And now do not support the windows system, you need to use it under mac

Create new project

Create a new Shark project using the following shell command:

# shell 
$ mkdir myproject
cd myproject
$ shark init

Build project

This step compresses and packages the JavaScript code and resource files inside the project, If this is a new project, you can skip this step and go directly to the next step

# shell
$ shark build

Export project

This step exports Xcode or Android Studio project,because you eventually publish the program that be a .apk or .ipa

# shell
export xcode ios project
$ shark export ios
export android studio project
$ shark export android

After exporting the project, next you can open it using Xcode and Android Studio

Shark test http server

shark-tools provides a test http server, each time you change the js or jsx code, you don't have to reinstall every time.

Execute the following code to start it:

# shell
$ shark


Package Sidebar


npm i fdraw



Weekly Downloads






Unpacked Size

203 kB

Total Files


Last publish


  • bluechu