JavaScript for Line of Business Applications
550.6K views | +29 today
Follow
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...
Scoop.it!

React application data-flow: Where and how to store your data?

React application data-flow: Where and how to store your data? | JavaScript for Line of Business Applications | Scoop.it

In this article, we’re going to look at some best practices on how data should be modeled in a React app. Typically, this is when we would start talking about Flux, Redux and all that, but in this case we won’t. Instead, we’re going to start by implementing a light-weight data store mechanism and use that instead. I’ll tell you why in a moment.

more...
No comment yet.
Scoop.it!

Styling in React

Styling in React | JavaScript for Line of Business Applications | Scoop.it
Learn how to style content in React using both old-school CSS and React's inline approach.

For generations, mankind (and probably really smart dolphins) have styled their HTML content using CSS. Things were good. With CSS, you had a good separation between the content and the presentation. The selector syntax gave you a lot of flexibility in choosing which elements to style and which ones to skip. You couldn't even find too many issues to hate the whole cascading thing that CSS is all about.

Well, don't tell React that. While React doesn't actively hate CSS, it has a different view when it comes to styling content. As we've seen so far, one of React's core ideas is to have our app's visual pieces be self-contained and reusable. That is why the HTML elements and the JavaScript that impacts them are in the same bucket we call a component.

more...
No comment yet.
Scoop.it!

Wrapping jQuery with React

Are you interested in migrating your existing jQuery project to React?

Maybe you’re just interested in using a jQuery plugin in your project and there’s no React component that handles your needs.

Using a lot jQuery plugins in your React project is not something that I would encourage, but in these situations wrapping a jQuery plugin with React might be your best option.

more...
No comment yet.
Scoop.it!

Making your JavaScript Pure

Making your JavaScript Pure | JavaScript for Line of Business Applications | Scoop.it

Apply the principles of purely functional languages to your JavaScript to gain more reliable, self-documenting codebases.

Once your website or application goes past a small number of lines, it will inevitably contain bugs of some sort. This isn’t specific to JavaScript but is shared by nearly all languages—it’s very tricky, if not impossible, to thoroughly rule out the chance of any bugs in your application. However, that doesn’t mean we can’t take precautions by coding in a way that lessens our vulnerability to bugs.

more...
No comment yet.
Scoop.it!

Containers Are Dead. Long Live Observable Combinators

Containers Are Dead. Long Live Observable Combinators | JavaScript for Line of Business Applications | Scoop.it

I really like Cycle.js. It is simple and declarative. But it has two caveats. First it has hard RxJs dependency and that is too much: if I select a rendering library then I don’t want it to constrain my state handling! Second, Cycle’s DOM event subscription system is not practical (regardless how functional and “reactive” it may be): the emitted data must be encoded into DOM (e.g. by using data attributes like data-id=”myId”). Just ugly.

Single source of Truth. And its problems
The state of your whole application is stored in an object tree inside a single store.

That is a direct quote from Redux website. The most of the current Flux libraries use combined reducer and this has locked the developers’ mindsets to the fact that the state should be like a mega sized “blob” which is passed to the “dummy” components via props. And there is always an explicit layer which separates the state handling and the UI: the top level “application container”. Perhaps you’ve seen this kind of lines in Redux apps...

more...
No comment yet.
Scoop.it!

Async and Await

Async and Await | JavaScript for Line of Business Applications | Scoop.it

JavaScript, in particular Node.js, has been frequently associated with callback hell. If you've written code that deals with a lot async I/O, you're probably familiar with this pattern:

...

It turns out, this code can be much easier and safer to write.

I'll show you how Promise combined with async / await enables this, but also some of the lessons we've learned from using these new features in production.

more...
No comment yet.
Scoop.it!

How I learned to stop worrying and love the JSX

How I learned to stop worrying and love the JSX | JavaScript for Line of Business Applications | Scoop.it
So you’ve heard the commotion about React, and thought you’d take a look. And you’ve liked what you’ve seen! Or you did, until you saw this: JSX butters my toast OK. You’re happy to give a new technology the benefit of the doubt. But this? Didn’t we escape PHP years ago? And what ever... Continue reading →
more...
No comment yet.
Scoop.it!

Promises: The Sync Problem

Promises: The Sync Problem | JavaScript for Line of Business Applications | Scoop.it
Why our brains need us to write async JavaScript in a sync-looking way, using promises!
more...
No comment yet.
Scoop.it!

16 Opensource EmberJS Projects for Reference

16 Opensource EmberJS Projects for Reference | JavaScript for Line of Business Applications | Scoop.it
A set of open-source EmberJS projects for people who are in their initial stage of learning Ember & are in search for reference projects
more...
No comment yet.
Scoop.it!

Isomorphic TypeScript, fetch, promises, ava and coverage

Isomorphic TypeScript, fetch, promises, ava and coverage | JavaScript for Line of Business Applications | Scoop.it

Writing an API client in JavaScript is a lot of work, you have to write one for Node.js and one for the browser. I found out a way to have both on the same codebase with the same API, all that with only changes to the build scripts. It’s called isomorphic code, and doing it with modern TypeScript isn’t easy, but it’s achievable.

TypeScript brings lots of advantages to the JavaScript world with almost mandatory typings. But TypeScript code is transpiled, and to play well with other libraries that aren’t originally written in TypeScript needs manually written type definition and some hacks to play well with other external tools, like code coverage and test frameworks.

more...
No comment yet.
Scoop.it!

Understanding JavaScript’s async await

Earlier this week we took a look at new features coming in ES2016. Today we’ll learn about async / await.The async / await feature didn’t make the cut for …
more...
No comment yet.
Scoop.it!

Unit testing with Jest: Redux + async actions + fetch

Unit testing with Jest: Redux + async actions + fetch | JavaScript for Line of Business Applications | Scoop.it
Recently, I’ve been writing an app with the React/Redux combo. It uses an external API and I decided to use a fetch polyfill in order to make my network requests. Following the Redux-way, I’ve used Async Action Creators in combination with redux-thunk. Here is how my action looks like:…
more...
No comment yet.
Scoop.it!

Tic-Tac-Toe.js: redux pattern in plain javascript

Tic-Tac-Toe.js: redux pattern in plain javascript | JavaScript for Line of Business Applications | Scoop.it
There’s this thing going on in the Front-End Development community where everybody wants to re-write their applications to use React. Sorry…
more...
No comment yet.
Scoop.it!

Understanding Angular 2 Components for AngularJS Devs

What is it like to build an Angular 2 app, and how is the experience different from AngularJS?

Angular 2 is component based. Components combine concepts that we are already familiar with from AngularJS. The Angular 2 Component combines the AngularJS Directive, Controller, and Scope. My article will attempt to make you more comfortable with components by comparing them to what you already know from AngularJS.

Here are some tutorials that I worked through to prepare this. I will periodically link to code examples from them: Quickstart & Tour of Heroes

TypeScript is recommended for Angular 2. You will see the .ts file extension. I will point out TypeScript syntax where needed.

more...
No comment yet.
Scoop.it!

Functional Reactive Programming for Angular 2 Developers — RxJs and Observables

Functional Reactive Programming for Angular 2 Developers — RxJs and Observables | JavaScript for Line of Business Applications | Scoop.it
In this post, we are going to go over the concept of Functional Reactive Programming from the point of view of an Angular 2 developer. Most of this is applicable for Angular 1 applications, but the examples in this post are in Angular 2.
more...
No comment yet.
Scoop.it!

Fullstack React

Fullstack React | JavaScript for Line of Business Applications | Scoop.it

Fullstack React is a weekly newsletter about the React ecosystem with an emphasis on useful libraries, tutorials and code. Subscribe to read the best articles each week on React, Flux, GraphQL, Relay, and friends.

more...
No comment yet.
Scoop.it!

Cabin - A React/Redux Tutorial Series

Cabin - A React/Redux Tutorial Series | JavaScript for Line of Business Applications | Scoop.it

This example application created by getstream.io teaches you how to to build an Instagram style application with activity streams and newsfeeds.

more...
No comment yet.
Scoop.it!

Rebass - ReactJS Stateless Functional UI Components

Rebass - ReactJS Stateless Functional UI Components | JavaScript for Line of Business Applications | Scoop.it

Rebass is a React UI component library that uses inline styles to avoid CSS dependencies and prevent leaky global styles from affecting an application. Rebass components inherit styles where appropriate and can be customized using React Context. Rebass components are built as stateless functional components and modeled as presentational components. With unit tests for each component, Rebass is great for prototyping and ready for production.

more...
No comment yet.
Scoop.it!

React Tutorial using MERN stack

React Tutorial using MERN stack | JavaScript for Line of Business Applications | Scoop.it

This is a step-by-step tutorial that will help you get up to speed with React quickly, and also build a complete app with the MERN (Mongo-Express-React-Node) stack. You'll also learn other tools that you typically use to build an app: Gulp, Browserify, Material-UI and React-Bootstrap.

more...
Joseph Pulaski's curator insight, January 15, 4:06 PM
Share your insight
Scoop.it!

Don't blame the framework: my experience with AngularJS and ReactJS

Don't blame the framework: my experience with AngularJS and ReactJS | JavaScript for Line of Business Applications | Scoop.it

Just as for many front-end developers, our stack used to consist of HTML and jQuery. We would do AJAX requests to our backend, render the new chunk of UI on JavaScript and insert it into the DOM. User actions were tracked by binding events and callbacks to each of the elements. And don’t take me wrong: this is just fine for most applications.

However, when an application grows considerably, a couple of issues start being more frequent than expected: you forget to update all places where a value is displayed in the UI, no events are bound to the content added by AJAX, just to name some — this list can be very long. These are signs that your code is not maintainable, especially when developing together with a team. Using a front-end framework provides a formal way to write collaborative code that you can read, write and update.

more...
No comment yet.
Scoop.it!

Testing Responsive Ember Applications

Testing Responsive Ember Applications | JavaScript for Line of Business Applications | Scoop.it

Making responsive websites that resize and redesign themselves based on the user’s screen size has become standard, and there are many tools that help you do this with Ember applications. However, a common frustration is that this behavior is difficult to test automatically. Developers often write tests exclusively with the desktop screen width in mind, and run into two serious problems:

  1. Bugs in the mobile app are not caught by the build.
  2. Tests may “randomly” fail on the developer’s computer because their browser window is too small.
more...
No comment yet.
Scoop.it!

State of the JavaScript Landscape: A Map for Newcomers

Modern JavaScript development is in constant motion. Build tools that were popular 12 or even six months ago are no longer en vogue. In this article, Bonnie Eisenman gives JavaScript newcomers a map to get started on their JavaScript journey. For more experienced JavaScript developers, Bonnie provides an update on where the community is at and what technologies to use for new projects.
more...
No comment yet.
Scoop.it!

Performance optimisations for React applications

Performance optimisations for React applications | JavaScript for Line of Business Applications | Scoop.it

The main performance hotspot in React applications is redundant processing and DOM diffing in components. In order to avoid this return false fromshouldComponentUpdate as high up in your application as you can.

To facilitate this:

  1. Make shouldComponentUpdate checks fast
  2. Make shouldComponentUpdate checks easy
more...
No comment yet.
Scoop.it!

The Problem with Redux... And How to Fix It

The Problem with Redux... And How to Fix It | JavaScript for Line of Business Applications | Scoop.it
Redux has emerged as the preeminent framework for building React-based web applications. It perfectly complements React's declarative views with a straightforward and elegant architecture that brings some of the best ideas of software engineering theory (immutable global state, functional programming, Event Sourcing, CQRS, etc.) into the web development mainstream. "There
more...
No comment yet.
Scoop.it!

Massively performant, multi-layered React.js table widget Written in TypeScript

Massively performant, multi-layered React.js table widget Written in TypeScript | JavaScript for Line of Business Applications | Scoop.it
GigaGrid - Massively performant, multi-layered React.js table widget Written in TypeScript
more...
No comment yet.