JavaScript for Line of Business Applications
606.6K views | +7 today
JavaScript for Line of Business Applications
Keeping track of current JavaScript Frameworks that help design your clientside Business Logic Layers.
Curated by Jan Hesse
Beam to my Inbox:
Your new post is loading...
Your new post is loading...

Popular Tags - Filter using the Funnel

Scoop.it!

Ember Vs Knockout JavaScript Framework Shootout

Ember Vs Knockout JavaScript Framework Shootout | JavaScript for Line of Business Applications | Scoop.it

Knockout implements something called ‘declarative binding’ - essentially where a part of your HTML view is bound to some data in a model.  Whenever the model is changed, the view changes automatically, which can lead to much cleaner code when creating an AJAX app.
As time went on we ran in to a couple of challenges using Knockout, which we’ll discuss next.


We found it easier to adapt our REST API to conform to the default JSON format Ember Data expects rather than try to tweak things in the Ember adapter.

There are so many parts to Ember (routers, controllers, models, views, components, templates) that it can be hard for a novice to know where to start or what controls what.  Once it becomes clear though, it’s really rather smart and very flexible.

It was certainly enough to make us decide to switch from Knockout to Ember, and here’s why...

No comment yet.
Scoop.it!

The State of Hybrid Mobile Development

The State of Hybrid Mobile Development | JavaScript for Line of Business Applications | Scoop.it

Hybrid development, or the approach of building native apps using Web technologies, has gone through its fair share of highs and lows. But, despite high-profile abandonments from the likes of Facebook and LinkedIn, hybrid development continues to be used by a substantial number of developers.

 Is hybrid as a platform growing or shrinking? Is performance still a limiting factor for hybrid apps? In this article we’ll attempt to answer those questions. We’ll look at where the hybrid ecosystem is today, and where it’s heading.

No comment yet.
Scoop.it!

5 useful AngularJS directives, modules and services

5 useful AngularJS directives, modules and services | JavaScript for Line of Business Applications | Scoop.it

* ng-flow

* RESTAngular

* ng-table

* ui-router

* ng-csv

No comment yet.
Scoop.it!

How to build a realtime chatting app with Firebase and EmberJS from Scratch

How to build a realtime chatting app with Firebase and EmberJS from Scratch | JavaScript for Line of Business Applications | Scoop.it

Things to know before doing this:

* Basic EmberJS
* Javascript


Things I’ll be covering:
* How firebase works (their reference system etc)
* How to build a custom EmberJS array proxy
* How to sync data to firebase using said emberJS array proxy


We are going to start with the Ember App Kit. I found it to be the easiest way to get started writing real EmberJS applications. In this tutorial, I’ll be using my App Kit Repository that I’ve set up to support Stylus out of the box as well as it has all of the html and styles for our Mr. Chat application all ready build. 

No comment yet.
Scoop.it!

Google's AngularJS Style Guide

Google's AngularJS Style Guide | JavaScript for Line of Business Applications | Scoop.it

This is the external version of a document that was primarily written for Google engineers. It describes a recommended style for AngularJS apps that use Closure, as used internally at Google. Members of the broader AngularJS community should feel free to apply (or not apply) these recommendations, as relevant to their own use cases.

This document describes style for AngularJS apps in google3. This guide supplements and extends the Google JavaScript Style Guide.

Style Note: Examples on the AngularJS external webpage, and many external apps, are written in a style that freely uses closures, favors functional inheritance, and does not often use JavaScript types. Google follows a more rigorous Javascript style to support JSCompiler optimizations and large code bases - see the javascript-style mailing list. This is not an Angular-specific issue, and is not discussed further in this style guide. (But if you want further reading: Martin Fowler on closures, much longer description, appendix A of the closure book has a good description of inheritance patterns and why it prefers pseudoclassical, Javascript, the Good Parts as a counter.)

No comment yet.
Scoop.it!

Meteor.js - The Perfect Match For Lean Startups

Meteor.js - The Perfect Match For Lean Startups | JavaScript for Line of Business Applications | Scoop.it

There are many ways to start an internet startup and I have seen different ones in practice and unfortunately I tried the worst myself and wasted a lot of time. It was my first startup attempt and I really did not have a clue what I was doing. Additionally we got nearly no advice even though we have been in a so called incubator. The approach we used back then was the 'Hack all day long' approach, added with a flavor of 'never ask if someone would use our stuff'. I can tell you: This approach is bad, really bad! There are mainly two reasons why it is so bad.Click here to edit the title

No comment yet.
Scoop.it!

The Meteor universe - a list of Meteor resources

The Meteor universe - a list of Meteor resources | JavaScript for Line of Business Applications | Scoop.it

Here at OK GROW! we love tools that help us ship faster without ever sacrificing on quality. We think that Meteor could be that tool and are always excited to share our experiences and resources with anyone interested. 

If you are looking to get started with Meteor here's a short list of the things we've found helpful.

* Learning

* Resources

* Community

* Other

No comment yet.
Scoop.it!

Adding meteor package in Windows

Adding meteor package in Windows | JavaScript for Line of Business Applications | Scoop.it

I have been playing with Meteor on my mac after initial hiccups in Windows. Now I got a hang on it, I thought I give it a try again in Windows and turned out, it is was not that hard.

You need to start out at http://win.meteor.com/ it has different ways to get started in Windows.

I was able to get my sample app up and running in no time. After some simple Hello Worlds, when I started to dig in deep to Meteor, I hit the wall when trying to add a package that was not available through Meteor. In mac you can use ‘mrt’ and everything was peachy. It turned out it was not that difficult to install the packages in windows either. It takes couple of extra steps but other than that it is straight forward.

No comment yet.
Scoop.it!

Successfully Using Polymer Elements in Angular Tests

Successfully Using Polymer Elements in Angular Tests | JavaScript for Line of Business Applications | Scoop.it

I have a reliable Karma / Jasmine test for my AngularJS that plays with Polymer. The only problem is that I don't understand it.

The test itself is… somewhat OK-ish as Angular directive tests go. I am attempting to verify the behavior in angular-bind-polymer. This directive should tell Angular that any Polymer element with the bind-polymer directive attribute should be observed for attribute changes. With that in place, angular-bind-polymer can double bind Polymer attributes to values in its own scope.

As I found last night, this still works in regular pages...

No comment yet.
Scoop.it!

Finding the right Node.JS WebSocket implementation  

Finding the right Node.JS WebSocket implementation   | JavaScript for Line of Business Applications | Scoop.it
A journey with ws, Socket.IO, Engine.IO, and Primus

For a current project at WhoScored, I needed to learn JavaScript, Node.JS and WebSocket channel, after seven years of writing web applications with Java and Spring framework. We wanted an application that can send data to thousands of concurrent users, and Node.JS appeared to be the right way of doing it with its event-driven, non-blocking I/O model that can scale up easily.


Compared Frameworks

* einaros / ws
* Socket.IO
* Engine.IO
* Primus


Performance limits
* Changing the flow based on limitations
* Test 1: The impact of data size
* Test 2: The impact of concurrent connection size
* Test 3: The impact of data broadcasting frequency


No comment yet.
Scoop.it!

fullstackjs.io - MEAN with EmberJS

It's a boilerplate which is designed to bring you as close as possible to actually writing your app immediately after install. It includes an Express server, a MongoDB Database and a client which uses Ember for a single page application. The architecture is REST and there is an example usage of CRUD and user authentication included. From there you're ready to code your app.

No comment yet.
Scoop.it!

AngularJS & Kendo UI using Angular Kendo with ASP.NET MVC 5, Web API & OData

AngularJS & Kendo UI using Angular Kendo with ASP.NET MVC 5, Web API & OData | JavaScript for Line of Business Applications | Scoop.it

With AngularJS and ASP.NET MVC, we now have an MVC pattern and architecture for both on the client and server. What do we do and/or how do we approach this? Well one can argue we don’t use any of the MVC architecture on the server and build out a full-fledged AngularJS front-end application and only use make async calls to Web API for all things that absolutely need to be on the server e.g. CRUD, workflows, business logic, etc.

Now, there’s absolutely nothing wrong with this approach, and for the most part a lot of heavy front end SPA’s are built this way in ASP.NET MVC. However, with all the .NET, ASP.NET and AngularJS goodness, why not leverage the best of both worlds? Again, there’s absolutely nothing wrong with building a pure AngularJS application and only using Web API, but for this blog post we’ll go over patterns of using the best of both worlds along with integrating AngularJS with Kendo UI.

No comment yet.
Scoop.it!

Mithril - A Javascript Framework for Building Brilliant Applications

Mithril - A Javascript Framework for Building Brilliant Applications | JavaScript for Line of Business Applications | Scoop.it

Mithril is a client-side Javascript MVC framework, i.e. it's a tool to make application code divided into a data layer (called "Model"), a UI layer (called View), and a glue layer (called Controller)

Mithril is around 3kb gzipped thanks to its small, focused, API. It provides a templating engine with a virtual DOM diff implementation for performant rendering, utilities for high-level modelling via functional composition, as well as support for routing and componentization.

The goal of the framework is to make application code discoverable, readable and maintainable, and hopefully help you become an even better developer.

Unlike some frameworks, Mithril tries very hard to avoid locking you into a web of dependencies: you can use aslittle of the framework as you need.

However, using its entire toolset idiomatically can bring lots of benefits: learning to use functional programming in real world scenarios and solidifying good coding practices for OOP and MVC are just some of them.

No comment yet.
Scoop.it!

15 Best Node.js Frameworks for Developers

15 Best Node.js Frameworks for Developers | JavaScript for Line of Business Applications | Scoop.it

In this article we have gathered up a list of 15 Best Minimal Node.js Frameworks which will help you to develop creative web applications. Which Node.js Framework do you use or favorite, please comment below, we would love to hear your feedback. Enjoy !!


1. Express.js
2. Koa
3. Flatiron
4. Sails.js
5. Restify
6. Total.js
7. SocketStream
8. Locomotive
9. Socket.io
10. Derby
11. Hapi
12. Frisby.js
13. Coke
14. Kiss.js
15. Express.io


Via Srdjan Strbanovic
No comment yet.
Scoop.it!

Single Page Application Done Right

Single Page Application Done Right | JavaScript for Line of Business Applications | Scoop.it

Not too long ago, FTBpro.com moved its website from classic web architecture (CWA) to a single-page application (SPA). For those who are less familiar with SPA, the major differences between the two are as follows...

To put it in simpler words – while in CWA the client gets a full HTML page on each request, in SPA the client gets all needed to be able to render the HTML by itself on the first page load so that subsequent requests might be carried in a very fluent and rich manner. It makes your website more of an application and less of a si

No comment yet.
Scoop.it!

PHANG web application boilerplate

PHANG web application boilerplate | JavaScript for Line of Business Applications | Scoop.it
PHP and AngularJS Apps Made Easy: Everything you need to kickstart AngularJS projects: a best-practice directory structure, an intelligent build system, and the best web design libraries around.

PHANG uses Silex, a PHP microframework for PHP 5.3. It is built on the shoulders of Symfony2 and Pimple and also inspired by sinatra.

No comment yet.
Scoop.it!

Creating Three Way Data Binding with FireBase and AngularJS

Creating Three Way Data Binding with FireBase and AngularJS | JavaScript for Line of Business Applications | Scoop.it
This article explores how FireBase can be used to create a three way data binding, building on Angular's existing two way binding.

As you may know, FireBase acts as a realtime backend for your apps. Well, we all know how awesome this is. But you know what’s more awesome? It’s AngularJS+FireBase. FireBase has an officially released binding calledAngularFire that brings all the fun and joy of FireBase to AngularJS. As AngularJS developers we love data binding so much that we even dream about it! With AngularFire we can create some seriously awesome stuff by taking advantage of a three way data binding as opposed to the traditional two way data binding in AngularJS. This tutorial will give you an overview of three way binding while creating a simple realtime app using AngularFire. This article assumes that the reader is already aware of FireBase and has done some prior development in AngularJS.

No comment yet.
Scoop.it!

List of ECMAScript 6 shims

List of ECMAScript 6 shims Implemented on top of ECMAScript 5 - Links to every available shim for ES5 to ES6 features.

No comment yet.
Scoop.it!

Crater.io - RealTime Meteor.js newsfeed

Crater.io - RealTime Meteor.js newsfeed | JavaScript for Line of Business Applications | Scoop.it

A news aggregator with sources like RSS and Twitter all about MeteorJS.

Built using telescope.

No comment yet.
Scoop.it!

Introduction to Realtime Web with Meteor and Node.js

Introduction to Realtime Web with Meteor and Node.js | JavaScript for Line of Business Applications | Scoop.it

The one framework I always see compared to Derby.js is called Meteor. Similar to Derby, it handles things such as updating views live across multiple clients, though Meteor does it somewhat differently. While Derby is designed to be easier to use with different types of database systems, Meteor works closely with MongoDB. In fact, the client API for accessing the database is almost exactly like what you’d expect on the server-side with something likeMongoose.

While there are some drawbacks and controversies surrounding the framework (see Fibers vs Callbacks), Meteor looks like a pretty interesting option when creating an app that requires realtime feedback. Personally, I’m more attracted to the traditional callback style of programming of Derby, but the lack of robust documentation and a large developer community behind it is a huge blow to Derby’s usefulness. This will change over time, but at a much slower rate than Meteor, which recently received $11M+ in funding. This financial backing ensures that Meteor will remain around and supported, and for developers who need a financially and developmentally stable framework, the funding will only make Meteor more appealing.

Today, I want to go over how to create a really simple Meteor app. Essentially, this is a writeup for Tom’s Vimeo screencast. One major difference between my writeup and Tom’s video tutorial is the way we handle events in Meteor. Rather than copying and pasting code from one of Meteor’s examples, I take you step by step through a custom implementation of handling the enter key press to submit a message. Let’s begin!

No comment yet.
Scoop.it!

Meteor.JS | Fibers/Future For Client Return of Meteor.call()

Meteor.JS | Fibers/Future For Client Return of Meteor.call() | JavaScript for Line of Business Applications | Scoop.it

This would definitely be the most common question that I see asked or people are wondering how to achieve a link between client and server using the Meteor.call() function.

The solution that I have found involves setting up a Future inside the server call and returning the pointer to that future to the client and then when the function call has completed, send the results to the client via the call-back from the Meteor.call() function.

Say you wanted to make a call to a server-side function and then have the result of that stored in a session variable or even used inside a template. If you tried to call Meteor.call('some_function', function(err, ret) { // use the ret variable here }); you would probably be tearing your hair out wondering why it hasn't returned the value you returned in side the call definition on the server...

The trick is using a Future on the server and then you are able to pass back the result of the call via the future making it available in the call-back method. Example is below and you can download the project via the GIST:

No comment yet.
Scoop.it!

Wanted: An Unobtrusive Javascript Framework

Wanted: An Unobtrusive Javascript Framework | JavaScript for Line of Business Applications | Scoop.it

I decided to spend the last couple of weeks introducing myself to some of the big MVC Javascript Frameworks that have gotten so much traction over the last couple of years. I sadly, have found the field littered with frameworks that happily violate the principle of Unobtrusive Javascript and am wondering — is there any solid MVC Javascript Framework that is clean and unobtrusive, will I need to keep rolling my own, or am I just a Luddite?

No comment yet.
Scoop.it!

Embular series - Comparing Ember and Angular

Embular series - Comparing Ember and Angular | JavaScript for Line of Business Applications | Scoop.it

Stuck In The Middle...

I'm in a sort of unique position to discuss this subject. I have a lot of experience with Angular, and I'm now working at Netflix with an Ember core team member, Erik Bryn.


What this series is

  • It's meant to to be an honest comparison between two frameworks. 
  • A love affair with both frameworks. 
  • A plea to those with bias to toss that bias aside and examine the frameworks more carefully and appreciate them for what they are. Brilliant. 


What this series is NOT

  • This series will not make everyone happy. 
  • This is not a "which should you choose?" examination. 
  • This is not a contest or an attempt to convert anyone from one framework to another. 
  • This is not meant to be an indictment of either one of these frameworks as being flawed. 
  • This is not an attempt to proclaim one of these frameworks to be perfect.


Part 1 - Comparing Ember and Angular
Part 2 - What's Great About Angular
Part 3 - What's Great About Ember
Part 4 - What Angular Could Learn From Ember
Part 5 - What Ember Could Learn From Angular
Part 6 - Two Paths Up The Same Mountain

No comment yet.
Scoop.it!

Node.js Connect middleware for .NET using OWIN

Node.js Connect middleware for .NET using OWIN | JavaScript for Line of Business Applications | Scoop.it

OWIN itself is not a technology, just a specification to decouple Web applications from the Web server. The goal of connect-owin is to implement this specification to use node.js, through connect framework, as the Web Server.

The connect-owin exports a function that returns a connect middleware. The function takes the path of the OWIN .NET assembly file as a parameter.

No comment yet.
Scoop.it!

An angular.js event bus with postal.js

An angular.js event bus with postal.js | JavaScript for Line of Business Applications | Scoop.it

Ideally in an angular application, controllers are independent units of code that have no reference to any other controllers. There are cases though in which you may need to communicate with other controllers in your application. For example you may have an Orders controller, that needs to tell a Cart controller that a new item has been added.

One of the best ways of accomplishing this type of communication is through the use of an event bus.

My favorite event bus framework is postal.js.

Jan Hesse's insight:

http://jonathancreamer.com/building-decoupled-javascrip-applications-with-postal-js/

No comment yet.