robot-header RefuelJS

Make it simple, keep it clean

View on GitHub
A project by Appsfuel Developer Team

Mobile-first

We started this project because we needed a good base to develop our HTML5 mobile apps. RefuelJS is designed to build Mobile Web Application first and foremost. It's on smartphones that we test our performances and our features primarily. Of course everything also works on desktop environments so don't worry about that^^.

fast
fast

Simple

RefuelJS it's not meant to be a behemoth framework. That's not an attempt to build the JavaScript version of the Death Star, rather it's the will to build a fleet of fast and effective X-Wing Fighters. RefuelJS is focused on simplicity, on providing only the functionality you need without overflowing you with prefabbricated code. The final goal is to make an application with only few lines of code and every functionality defined directly inside the markup.

Fast

Almost every framework uses heavy libraries like jQuery and jQueryMobile, this hurts performance. RefuelJS is a lightweight library-agnostic platform, written in pure JavaScript just like good old times, it provides only what you need without burdening your code with unuseful stuff. It's not only fast in performance, it's also fast in development.

fast
fast

Modular

RefuelJS won't impose an architecture to your app or a pattern to use, because this is about YOUR application. Develop for RefuelJS is about identifying common necessities in webapp development and design some modules to help in those needs, but you are not forced into using everything everywhere, the framework only loads those modules you actually use. Everything else is left outside.

Community Driven

This is not OUR project, we only started this, but RefuelJS will be built by the community. The project has been hosted on Github public repository from the very beginning, Appsfuel will support RefuelJS and its community but won't make everything. Anyone in need of a new feature is invited to develop a proper module to implement that functionality, we will check the compliance of the module and then an admin will add it to the main repository. So the next developer needing that fantastic feature won't have to re-invent the wheel.

fast

The Basics

						
						
var app;
Refuel.define('ExampleApp',{require: ['GenericModule', 'DataSource']},
function TodoApp() {    
	app = Refuel.newModule('GenericModule', { 
		root: document.querySelector('#example-app'), 
		autoload: true,
		data: {
			'app_title' : 'Refuel Example',
			'items': Refuel.newModule('DataSource', {key: 'refuel-items'})
		} 
	});
});
						

{{app_title}}

data are persistent and will be saved in local storage
  • X
_