About The Project

This project was born out of the idea to provide a Single-Page-Application framework (SPA) for the development of JavaScript web applications in an easier way than this is currently possible with the most popular frameworks. Inspired by other projects, Ben.JS offers both a Model-View-Controller (MVC) concept as well as a templating concept. The idea of the project is to reduce the complexity of the API and interfaces to a minimum in order to achieve this goal.

Build on jQuery

One of the early design decision was to build the project on top of jQuery. jQuery is a well-known library designed to simplify the client-side scripting of HTML. jQuery provides a variety of features and concepts to script web pages in an easy way. Ben.JS didn’t want to reinvent the wheel and therefore the project was build on top of jQuery. Ben.JS provides a small set of core concepts necessary for the development of modern MCE based Single-Page-Applications.

These core concepts of Ben.JS are:

  • An open model-object concept

  • An easy to use controller interface

  • Router functionality to control the state of an application

  • A template-engine to split an application into logical building blocks.

You will find general information about Ben.JS and the different concepts explained in the Project Guidebook

General Goals

One of the most important goals of this project is to keep the framework simple and easy to learn and to do not force a developer in a corset of rules and architecture. The project did not define specific guidelines, how an application should be designed. And also there are no limitations how to develop individual solutions within this framework. It should be easy to extend the library with additional functionality to solve project specific requirements.
One of such an extension is part of the Imixs-Workflow Project which provides a script library based on Ben.JS. This library simplifies the model transformation from the Imixs-Workflow data-model into a JSON Format which can be used together with Ben.JS.

Join the Project

Ben.JS is an open source project and we invite you to participate in it. If you like Ben.JS, or if you have any ideas or find solutions for problems in specific domains, than you are invited to share your results on the project community site. On Github you can post issues or you can start a fork which is a good starting point to contribute to this project.

We believe that the open exchange of experiences is fundamental for the development of useful software solutions.