Giter Site home page Giter Site logo

jambolleo / aikau Goto Github PK

View Code? Open in Web Editor NEW

This project forked from alfresco/aikau

0.0 0.0 0.0 76.96 MB

Aikau UI framework

License: GNU Lesser General Public License v3.0

Java 0.32% JavaScript 92.44% CSS 3.82% HTML 3.16% Shell 0.02% FreeMarker 0.13% Less 0.10%

aikau's Introduction

Aikau

About Aikau

What is Aikau?

Aikau is a meta-framework of custom JavaScript widgets designed to work with Alfresco. It is dependant upon the Surf framework but is not dependent upon Alfresco Share application.

The framework provides a suite of widgets that can be referenced in JSON models to build complete pages. These page models can be defined in WebScripts or remotely stored and rendered from an Alfresco Repository. This means that it possible to dynamically create and render new pages from within an application without needing to restart the server.

Release notes for the latest version of Aikau are available on GitHub.

Simple Third Party Customizations

The page models are intended to be dynamically customizable through Surf extension modules meaning that a client (such as Alfresco Share) can be dynamically customized by third parties without needing to write any code. The modular approach means that it is easy for 3rd parties to provide custom widgets that are either completely new or extend the Aikau base. Aikau extends the AMD (Asynchronous Module Definition) paradigm such that; a single widget encapsulates all of the HTML, CSS, JavaScript and localization properties that it needs and Surf ensures that only the required resources required by a page are loaded by the browser.

Cross-Framework Compatible

Surf uses the Dojo framework for AMD module loading and Aikau widgets make use of the Dojo templating capabilities but it is not limited to any single JavaScript framework. Aikau is intended to work with any JavaScript library by design and its widget library already makes use of JQuery, YUI, TinyMCE, Code Mirror and Sinon.

Testing

The atomic nature of the widgets means that they are easily unit testable and Aikau makes use of the Intern JavaScript testing framework, driven by Grunt and uses Vagrant for multi-platform, cross-browser testing. It uses node-coverage to capture code coverage results of its unit tests.

Learning Aikau

We've written a tutorial that takes you through the process of building a standalone Aikau client. We're in the process of converting it into GitHub markdown files - the chapters that have been converted so far start here.

There is also an Alfresco Wiki page that collates avaialble Aikau educational material.

Contributing to Aikau

We will gladly be welcoming contributions from the Alfresco Community - however, we would be grateful if you could please review and adhere to the contribution acceptance criteria before generating any pull requests.

Setup instructions are available for Linux, Windows and OS X

aikau's People

Contributors

afaust avatar alexbalmus avatar anechifor avatar aonode avatar astrachan avatar aviriel avatar bogdanioan-gabor avatar ciprianchelaru avatar davidcognite avatar dbilligmaier avatar epurashu avatar fkleon avatar gbroadbent avatar jottley avatar kevinroast avatar martindoyleuk avatar npmcdn-to-unpkg-bot avatar ohej avatar rgauss avatar rpopa avatar skopf avatar tbedford avatar tpage-alfresco avatar tunaaksoy 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.