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!

Object Oriented JavaScript

In this article I will discuss multiple ways of creating objects in JavaScript. And in the next part of this article, I will cover Inheritance in JavaScript.

Part 1:

* Factory Pattern

* Constructor Pattern

* Prototype Pattern

 

Part 2:

* Prototype Chaining

* Construtor Inheritance

* Combination Inheritance

 

Part 3:

* Problem solving

Jan Hesse's insight:

http://prasanthnath.wordpress.com/2013/11/01/object-oriented-javascript-part-1/

http://prasanthnath.wordpress.com/2013/11/04/object-oriented-javascript-part-2/

http://prasanthnath.wordpress.com/2013/11/08/object-oriented-javascript-part-3/

No comment yet.
Scoop.it!

TagPro Capture the Flag

Amazing HTML5 networking game using WebSockets and a good gameplay.

No comment yet.
Scoop.it!

Enteye - Reactive Device Cloud

Enteye - Reactive Device Cloud | JavaScript for Line of Business Applications | Scoop.it

enteye is a first fully reactive Device Cloud that easily allows developers to integrate devices with a web application. You can program your boards directly from the browser, with automatic code pushes and real time data synchronisation. Based on the rapidly growing Meteor Framework it allows to change any real life thing into a reactive data source. Now your applications can have new senses that leads to totally new possibilities.

No comment yet.
Scoop.it!

Replacing (most of) d3.js with pure SVG + AngularJS

Replacing (most of) d3.js with pure SVG + AngularJS | JavaScript for Line of Business Applications | Scoop.it

Over the last few months, I've been feeling increasingly unsatisfied around the options we have for integration between d3.js and AngularJS. In my earlier projects, I used Brian Ford's approach of creating a directive for the visualisation I need, and adding the d3 code in the link function of the directive. This is simple and works, but it feels like a very superficial integration. Effectively the Angular directive creates a hole in the DOM processing cycle within which d3 can work.

The good guys at skybluetrades came out with an alternative approach called Radian, that felt closer to what I wanted. They rely heavily on small, pre-existing Angular directives to declaratively create d3 visualisations. This means that a lot of the information about how to configure the graph lives in the HTML, as it should.

Thinking about it further though, what Radian is doing is using directives (masterfully) to trigger d3, to create SVG tags, so that the browser can finally render a visualisation. But if the browser already contains a declarative language that allows specifying visualisations in SVG, why do we have to jump through so many hoops?

No comment yet.
Scoop.it!

Reimplementing JavaScript To Understand How It Works

Reimplementing JavaScript To Understand How It Works | JavaScript for Line of Business Applications | Scoop.it

Nobody truly understands how the world works. It is too complex. Instead, we build models that we believe are close to how the real thing works. We then use those models to discover new things and expand our understanding of how the world works.

Following the same line of reasoning, I want to show you a model of how JavaScript work inside. It will not be the real thing, because the real thing is too complex to learn in a short article. But it will help you create a model in your mind of how it works. It will help you understand how objects, variable scopes and functions work. So that you no longer program by blindly applying rules, but by understanding how things work inside.

No comment yet.
Scoop.it!

Life of JS - Awesomeness in JavaScript

Life of JS - Awesomeness in JavaScript | JavaScript for Line of Business Applications | Scoop.it
Life of JS is a collection of not all but awesome resources of JavaScript in a programmatically manageable JSON format
No comment yet.
Scoop.it!

CRUD Grid Using AngularJS, WebAPI, Entity Framework (EF), Bootstrap in C#, HTML for Visual Studio 2013

CRUD Grid Using AngularJS, WebAPI, Entity Framework (EF), Bootstrap in C#, HTML for Visual Studio 2013 | JavaScript for Line of Business Applications | Scoop.it
Here’s how I built a quick single entity CRUD grid with AngularJS, WebAPI, Entity Framework, Bootstrap, Font Awesome & Toastr. I spent a more time than I should have getting this all wired up, so I thought I’d share the code to save you some time.

As you can see, the CRUD Grid loads data from EF and Works with sort by columns, is easy to ADD, UPDATE, DELETE new registries.

No comment yet.
Scoop.it!

Software & Game Developmet

Software & Game Developmet | JavaScript for Line of Business Applications | Scoop.it

It is easy to create computer game with any language. For example let’s consider JavaScript. It is a script language, it has garbage collector and it is possible to output an image with it. But the main advantage of JavaScript: it runs at any browser and you don not to use such heavy tools like MS Visual Studio to develop on it.

Let’s make a simplest roleplaying game where a hero walking through a labyrinth killing an enemy. Let the labyrinth will be 10x10 squares. Let the square will be 64px. No line of sight, no fog of war (how to implement such features I will probably tell in the one of future blog posts).

No comment yet.
Scoop.it!

fafafa - Flask / Angular / Foundation Boilerplate

fafafa - Flask / Angular / Foundation Boilerplate | JavaScript for Line of Business Applications | Scoop.it

FaFaFa is meant to get you up and going as soon as possible with user authentication, Facebook integration, database migrations, and deployment.

FaFaFa is a boilerplate application combining the following:
* Flask - Python microframework
* AngularJS - Javascript framework
* Foundation - Responsive front-end framework
* Alembic - Database migrations tool
* Facebook login integration
* Ansible - Provisioning and deployment automation

It also includes a few extras:
* CSRF protection (slightly modified from here)
* Loading bar at the bottom of the header, integrated with all AngularJS POST requests (heavily inspired by ngProgress)
* Profile page for linking / unlinking Facebook, and chaging usernames, passwords, and emails

Benjamin Dean's curator insight, November 30, 2013 10:18 AM
I'm not a huge Python developer, but I bet this has some value to it for those who are.
Scoop.it!

Learning 30 Technologies in 30 Days: A Developer Challenge

Learning 30 Technologies in 30 Days: A Developer Challenge | JavaScript for Line of Business Applications | Scoop.it

I have taken a challenge wherein I will learn a new technology every day for a month. The challenge started on October 29, 2013. Below is the list of technologies I've started learning and blogging about. After my usual work day, I will spend a couple of hours learning a new technology and one hour writing about it. The goal of this activity is to get familiar with many of the new technologies being used in the developer community. My main focus is on JavaScript and related technologies. I'll also explore other technologies that interest me like Java, for example. I may spend multiple days on the same technology, but I will pick a new topic each time within that technology. Wherever it makes sense, I will try to show how it can work with OpenShift. I am expecting it to be fun and a great learning experience.

 

October 29, 2013 – Day 1: Bower—Manage Your Client Side Dependencies. The first day talks about Bower and how you can use it.

October 30, 2013 – Day 2: AngularJS—Getting My Head Around AngularJS. This blog talks about how you can get started with AngularJS. It is a very basic blog and talks about how to build a simple bookshop application.

October 31, 2013 – Day 3: Flask—Instant Python Web Development with Python and OpenShift. This blog introduces Flask–a micro framework for doing web development in Python. It also reviews “Instant Flask Web Development” book and port the sample application to OpenShift.

November 1, 2013 – Day 4: PredictionIO—How to A Build Blog Recommender. This blog talks about how you can use PredictionIO to build a blog recommender.

November 2, 2013 — Day 5: GruntJS—Let Someone Else Do My Tedious Repetitive Tasks. This blog talks about how we can let GruntJS perform tedious tasks on our behalf. It also covers how we can use grunt-markdown plugin to convert Markdown to HTML5.

November 3, 2013 — Day 6: Grails–Rapid JVM Web Development with Grails And OpenShift. This blog talks about how we can use Grails to build web application. Then we will deploy the application to OpenShift.

November 4, 2013 – Day 7: GruntJS LiveReload--Take Productivity To Another Level. This blog talks about how we can use GruntJS watch plugin and live reload functionality to achieve extreme productivity.

November 5, 2013 - Day 8: Harp--The Modern Static Web Server. This blog post will discuss the Harp web server and how to install and use it

November 6, 2103 - Day 9: TextBlob--Finding Sentiments in Text

November 7, 2103 - Day 10: PhoneGap--Mobile Development for the Dummies

November 8, 2013 - Day 11: AeroGear Push Server--Push Notifications Made Easy

November 9, 2013 - Day 12: OpenCV--Face Detection for Java Developers

November 10, 2013 - Day 13: DropWizard--The Awesome Java REST Server Stack

November 11, 2013 - Day 14: Stanford NER--How To Setup Your Own Name, Entity, and Recognition Server in the Cloud

November 12, 2013 - Day 15: Meteor--Building a Web App From Scratch in Meteor

November 13, 2013 - Day 16: Goose Extractor--An Article Extractor That Just Works

November 14, 2013 - Day 17: JBoss Forge--Build and Deploy Java EE 6 AngularJS Applications using JBoss Forge and OpenShift

November 15, 2013 - Day 18: BoilerPipe--Article Extraction for Java Developers

November 16, 2013 - Day 19: Ember--The Missing EmberJS Tutorial

November 17, 2013 - Day 20: Stanford CoreNLP--Performing Sentiment Analysis of Twitter using Java

November 18, 2013 - Day 21: Docker--The Missing Tutorial

November 19, 2013 - Day 22: Developing Single Page Applications with Spring, MongoDB, and AngularJS

November 20, 2013 - Day 23: TimelineJS--Build Beautiful Timelines

November 21, 2013 - Day 24: Yeoman Ember--The Missing Tutorial

November 22, 2013 - Day 25: Tornado--Combining Tornado, MongoDB, and AngularJS to Build an App

November 23, 2013 - Day 26: TogetherJS--Let's Code Together

November 24, 2013 - Day 27: Restify--Build Correct REST Web Services in Node.js

November 25, 2013 - Day 28: OpenShift Eclipse Integration for Java Developers

November 26, 2013 - Day 29: Yeoman Chrome Generator--Write Your First Google Chrome Extension

November 27, 2013 - Day 30: Play Framework--A Java Developer Dream Framework

Benjamin Dean's curator insight, November 30, 2013 10:24 AM
I love a good challenge...accepted!
Scoop.it!

Modular JavaScript with RequireJS & Browserify

Modular JavaScript with RequireJS & Browserify | JavaScript for Line of Business Applications | Scoop.it

1. Who's talking?
2. The dark past
3. CommonJS & AMD? What is this??
4. RequireJS
5. Browserify
6. UMD
7. What's next?

Scoop.it!

Building your own vanilla JS framework

I’ve started dropping jQuery in favor of vanilla JavaScript. It’s resulted in some pretty dramatic performance improvements.

There are two things I’ve done to make writing scripts easier:
* I use progressive enhancement. Modern browsers and IE 9 and up get the enhanced, interactive features. Older, less capable browsers get a simpler, content-only experience. This allows me to take advantage of modern API’s.
* I include my own vanilla JS micro-framework to handle some of the repetitive, boring stuff.

Today, I want to show you how to create your own micro-framework for your vanilla JavaScript projects.

No comment yet.
Scoop.it!

Meteor Boilerplate: includes Iron Router, Bootstrap 3, Font Awesome, LESS and Coffeescript

A starting point for meteorjs applications, includes Iron Router, Bootstrap 3, Font Awesome, LESS and Coffeescript.

What's included:
* File Structure
* Coffeescript
* LESS
* Iron Router
* Accounts-Entry
* Bootstrap 3
* Font Awesome 4

No comment yet.
Scoop.it!

Web Components / Shadow DOM

Building blocks of Web Components:

Shadow DOM

* DOM & style encapsulation

Custom Elements

* Create new HTML elements, extend existing DOM objects

HTML Imports

* Package and Share HTML/CSS/JS.

No comment yet.
Scoop.it!

List.js - Search, sort, filters, flexibility to tables, list and more!

List.js - Search, sort, filters, flexibility to tables, list and more! | JavaScript for Line of Business Applications | Scoop.it
Perfect library for adding search, sort, filters and flexibility to tables, lists and various HTML elements. Built to be invisible and work on existing HTML.
No comment yet.
Scoop.it!

Large modular JavaScript Applications with Mediator Design Pattern

A solution to work in large JavaScript projects with Mediator Design Pattern in a modular way.

While working in grown projects you may try to find a solution to structure your JavaScript in a maintainable way. One possibility is to use a MV* framework like Backbone, Ember or Angular. A different/extended solution tries to be modular. With the Mediator Design Pattern this is easily achieveable.

Because it is good to not reinvent the wheel everytime you code something, download/clone mediator.js from Github. It is a free MIT licensed library with the Design Pattern already implemented.

Let me show you an example usage with a simple module that calculates the square of a rectangle. Let us start with the following HTML...


No comment yet.
Scoop.it!

minimal-ember.js-sample

minimal-ember.js-sample | JavaScript for Line of Business Applications | Scoop.it

The purpose of this project is to help you learn the core function of ember.js.
You can learn following five functions:
* how to use basic templates.
* the basic way to use views.
* how to integrate properties in controllers and generate new properties.
* how to bind properties in controllers and transmit them to views.
* how to generate unique helpers for templates.

If you read the source code in this projcet, you will be able to make practical use of ember.js in easiest and fastest way.

 

No comment yet.
Scoop.it!

Introduction to Objects in JavaScript

Introduction to Objects in JavaScript | JavaScript for Line of Business Applications | Scoop.it
Get a fun introduction to objects in JavaScript and learn how to create them and modify their properties.

The concept of objects in a programming language like JavaScript maps nicely to its real-world equivalents. In the real world, you are literally surrounded by objects. Your computer is an object. A book on a shelf is an object. A potato is (arguably) an object. Your alarm clock is an object. The autographed Cee Lo Green poster you got on Ebay is also an object! I could go on forever, but (for everyone's sake :P) I'm going to stop here.

No comment yet.
Scoop.it!

A practical guide to web resource caching

A practical guide to web resource caching | JavaScript for Line of Business Applications | Scoop.it

In this second blog post, we will provide actual caching value recommendations for client browsers and edge servers. We categorize each resource by time sensitivity, list the main observed use cases for each of them, and propose TTL values for the client as well as for the edge server. When appropriate, we differentiate recommendations based on the edge invalidation policy.  

No comment yet.
Scoop.it!

pjscrape: A web-scraping framework written in Javascript, using PhantomJS and jQuery

pjscrape: A web-scraping framework written in Javascript, using PhantomJS and jQuery | JavaScript for Line of Business Applications | Scoop.it

pjscrape is a framework for anyone who's ever wanted a command-line tool for web scraping using Javascript and jQuery. Built to run with PhantomJS, it allows you to scrape pages in a fully rendered, Javascript-enabled context from the command line, no browser required.

Features:
* Client-side, Javascript-based scraping environment with full access to jQuery functions
* Easy, flexible syntax for setting up one or more scrapers
* Recursive/crawl scraping
* Delay scrape until a "ready" condition occurs
* Load your own scripts on the page before scraping
* Modular architecture for logging and writing/formatting scraped items
* Client-side utilities for common tasks
* Growing set of unit tests


No comment yet.
Scoop.it!

sDashboard - A simple & light weight dashboard framework in javascript

sDashboard - A simple & light weight dashboard framework in javascript | JavaScript for Line of Business Applications | Scoop.it

Dashboard is a jQuery plugin that converts an array of objects into a dashboard. Each object in the array would be rendered as a dashboard widget that can be rearranged by dragging around.

sDashboards has built in support for rendering datatable's and flotr2 charts. It also has support to listen for events such as table row click, chart data click and data selection built-in.

Benjamin Dean's curator insight, November 30, 2013 10:19 AM
This type of "JSON-->UI" implementation using a data-bound back-end is what I consider "nextgen" of development practices.
Scoop.it!

chai-jq - jQuery Assertions for Chai

Chai is a wonderful JavaScript test assertion library that I rely on extensively (usually using it in conjunction with the Mocha test framework library). Chai has an intuitive, natural-language approach to assertions that enables you tests to read almost like an English narrative. Chai also supports plugins which extend the base assertion API.

Chai is quite often used for frontend JavaScript testing, and specifically for testing jQuery elements in an application web page. There is an existing chai-jquery plugin for Chai, which is extensive and really quite neat. Unfortunately, it has a few issues with overriding built-in Chai assertions like have and length in ways that changes the underlying Chai API.

With that motivation in mind, I hacked together a quick jQuery plugin, chai-jq for Chai that has a separate $-prefixed namespace to avoid collisions with existing Chai assertions, and put the project up on GitHub.

No comment yet.
Scoop.it!

Memory leak patterns in JavaScript

Memory leak patterns in JavaScript | JavaScript for Line of Business Applications | Scoop.it

Plugging memory leaks in JavaScript is easy enough when you know what causes them. In this article authors Kiran Sundar and Abhijeet Bhattacharya walk you through the basics of circular references in JavaScript and explain why they can cause problems in certain browsers, especially when combined with closures. After seeing some of the common memory leak patterns you should watch out for, you'll learn a variety of easy ways to work around them.

No comment yet.
Scoop.it!

Live Programming, Walkabout.js

Live Programming, Walkabout.js | JavaScript for Line of Business Applications | Scoop.it

That’s all cool… except you can’t just run code all the time. It works for code that produces basically the same output every time it is run, that requires no input, that isn’t reactive or interactive. This is all true forProcessing.js programs which Khan Academy and the other live programming environments I’ve seen use (and Khan Academy even disables random numbers to ensure consistency). Processing.js is focused on drawing pictures, and drawing via code is okay, but… it doesn’t excite me. What excites me about code is its emergent properties, how the execution of the program evolves. When you write interesting code you can enable things you didn’t realize, things that you won’t realize until you explore that same code. What happens when you interact with it in a new order? What happens when you give it new input? When a program always produces the same output it makes me feel like the program could be substituted by its output. Who needs to program a drawing when you can just use a drawing program?

No comment yet.
Scoop.it!

UI-less Polymer Elements

UI-less Polymer Elements | JavaScript for Line of Business Applications | Scoop.it

When I think of web components, I normally think of creating new UI elements. But I think one of the more intriguing things that is possible with them is the ability to create UI-less features that simply serve as a convenient way to get access to streams of information. Instead of creating JavaScript objects that receive AJAX responses, create a Polymer element that does and then bubbles events in the document like an HTML element.

To explore the idea, I am going to try to create a JavaScript Polymer element that listens for click events on a web page. I start with the usual <script> setup and a custom <click-sink> element in the body...