Giter Club home page Giter Club logo

uijet's Introduction

UIjet

Killer UI for web-apps.

http://uijet.com

Description

UIjet lets you create awesome, cross-platform web applications with rich UI and keeps your code maintainable.

It creates another layer of abstraction which allows you to create any UI widget you can think of easily while you generate code of the highest level of quality.

Quick start

Include uijet.css and themes/rhenium.css in your document's head tag.

With AMD - using require.js

Include the require.js file at the bottom of your <body> tag.

Suggested configuration

Above it, open a <script> tag and in it include your require object. Assuming you'll place all the 3rd party code under 'lib', it should look like:

var require = {
    baseUrl : '/static_path/js/',
    paths   : {
        uijet_dir   : 'lib/uijet'
        // rest of needed paths ...
    },
    callback: function () {
        requirejs([
            'uijet',
            'uijet_dir/modules/pubsub/eventbox',
            'uijet_dir/modules/dom/jquery',
            'uijet_dir/modules/promises/jquery'
        ], function (uijet) {
            uijet.init();
        });
    }
};

Where the must have configurations are:

  • baseUrl - pointing to your base static folder.
  • paths - you need to config the paths to uijet_dir - where your UIjet library is located.
  • callback - to make sure everything works correctly it's best to use this option and put you initialization call in there.

Plugging in modules

To be able to use UIjet you must plug into it the following modules:

  • pubsub
  • promises
  • dom

You can simply add those module adapters from UIjet's modules library and activate them:

// ...
callback: function () {
    requirejs([
        'uijet',
        'uijet_dir/modules/pubsub/eventbox',
        'uijet_dir/modules/dom/jquery',
        'uijet_dir/modules/promises/jquery'
    ], function (uijet, Eventbox, $) {
        // init uijet
        uijet.init();
    });
}
// ...

The above modules are required for UIjet to work. The rest of the modules are optional.

Without AMD

Include the libraries you are using with the modules (e.g. jQuery if using the dom/jquery module). Include uijet.js followed by widgets/Base.js and the rest of the widgets you need afterwards. If you require any mixins (or if they're required by any of the widgets you're using) include them after the widgets. If you require any adapters include those too after the mixins along with each library they adapt to.

Installation notes

UIjet makes only one layer in the application and depends on other integral components that should reside within the application:

  • Custom events/Messaging library
  • Promises API library
  • DOM wrapper library
  • [optional] XMLHttpRequest/XHR2/CORS wrapper library
  • [optional] Template engine
  • [optional] URL router

Note: UIjet is not directly dependent on any other 3rd party code but also does not attempts to do anything that others already do, and do it well. On the other hand, UIjet defines simple methods and conventions for hooking up any 3rd party library you need into it.

Dependencies

  • Custom events library of choice
  • Promises API library of choice
  • DOM API wrapping library of choice
  • [optional] XHR wrapping library of choice
  • [optional] Template engine of choice
  • [optoinal] URL router of choice
  • [optional] require.js

Usage

Application startup

//TBD

Widget instances definition

//TBD

Author

Yehonatan Daniv

Special thanks

Venvid Technologies

uijet's People

Contributors

ydaniv avatar altryne avatar tudmotu avatar

Watchers

 avatar James Cloos avatar  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.