Full Browser Support
Works on Desktop, Mobile, Cordova and NodeJS. The modularized architecture allows you to use common modules on both client and server, and specialized modules in the specific environments.
Works on Desktop, Mobile, Cordova and NodeJS. The modularized architecture allows you to use common modules on both client and server, and specialized modules in the specific environments.
BetaJS is fully open-sourced and comes with the industry-standard Apache-2.0 license. All our code is maintained openly on GitHub. Pull requests more than welcome.
BetaJS has been designed with simplicity and maximum customizability in mind. It does not impose a particular style of writing JS and works well in combination with other libraries.
The Scoped system allows you to handle multiple libraries with separate namespaces and scopes. It allows libraries to access external dependencies with different names and even overwrite the namespaces a library attaches to, so you can include two different versions of the same library without clashing their namespaces.
Scoped.require(['ns1:dependency1', 'ns2:dependency2', 'ns3:dependency3'], function (D1, D2, D3) {
// Execute once D1, D2, D3 are resolved.
});
Scoped.define('ns:module', ['ns1:dependency1', 'ns2:dependency2', 'ns3:dependency3'], function (D1, D2, D3) {
// Execute once D1, D2, D3 are resolved.
return {
// Return ns:module definition.
};
});
Scoped.extend('ns:module', ['ns1:dependency1', 'ns2:dependency2', 'ns3:dependency3'], function (D1, D2, D3) {
// Execute once D1, D2, D3 are resolved.
return {
// Return ns:module extension.
};
});
The data module handles abstract data stores, operating on both client and server. It supports standard RESTful architecture and third-party server systems providing a RESTful API.
store.insert(instance).success(function (data) {
// Instance was inserted, and the updated data of instance is data (including the id)
}).error(function (error) {
// Could not insert instance
});
store.query(query, constraints).success(function (iterator) {
// Store was succesfully queried; the query result is an iterator over matched instances.
}).error(function (error) {
// Could not execute query
});
Dynamics is a dynamic DOM templating engine. It encapsulates the JS controllers in classes and automatically updates its templates. It is built with scalability and flexibility in mind, and plays hand in hand with all other BetaJS modules, including Data.
This is a JavaScript media UI components framework that includes a multi-platform video player.
betajs-scoped | BetaJS-Scoped is a small module for scoped loading of modules and dependencies. |
betajs | BetaJS is a general-purpose JavaScript helper module. It contains a variety of helper functions and classes. |
betajs-browser | BetaJS-Browser is a client-side JavaScript framework for Browser-specific methods. |
betajs-data | BetaJS-Data is a general-purpose JavaScript framework for handling RESTful operations and ActiveRecord abstractions. |
betajs-server | BetaJS-Server is a server-side JavaScript framework extension for BetaJS. |
betajs-dynamics | BetaJS-Dynamics is a dynamic DOM templating engine. |
betajs-ui | BetaJS-UI is a library for enabling gestures and interactions such as drag and drop. |
betajs-flash | BetaJS-Flash is a Flash-JavaScript bridging framework |
betajs-media | BetaJS-Media is a JavaScript media framework |
betajs-media-components | BetaJS-Media-Components is a JavaScript media UI components framework |
betajs-debug | BetaJS-Debug is a library for debugging BetaJS-based applications. |
grunt-betajs-templates | Build BetaJS templates. |
grunt-betajs-docs-compile | Build BetaJS documentations based on JSDOC. |
betajs-codemirror | BetaJS-Codemirror is a Codemirror Plugin for the BetaJS Framework. |
betajs-richeditor | BetaJS-Richeditor is a rich editor plugin based on content editable using the BetaJS Framework. |
betajs-chartjs | BetaJS-ChartJS is a ChartJS Plugin for the BetaJS Framework. |
betajs-shims | This repository includes shims for ECMA Script that are not included in the official shims. |
betajs-workers | BetaJS-Workers is a light-weight library for accessing web workers uniformly and conveniently. |
mock-ajax-server | BetaJS Mock Ajax Server for Testing |
mock-file-server | BetaJS Mock File Server for Testing |
betajs-compile | BetaJS-Compile is a helper repository for building betajs modules. |