High performing desktop apps built with OpenFin technology


Two years ago we built an app to run in the browser and then the client asked us to create the same app in a desktop version. This app had all the challenging stress characteristics of trader apps: high volume update, and low latency. We had two options to build the desktop app: WPF or OpenFin. WPF was a well-known and proven technology in the industry and at Eikos, whereas OpenFin was a technology we had never used before.

Topics: App development

Can a reusable NPM package help build flexible fintech apps?

This past year we've created a second version of our framework, ScaleJS 2.0. The framework is quite small out of the box, which gives the developer the flexibility in how it is used. Because of that, we've created a number of NPM packages that we think of as extensions to the core framework.

Topics: App development

How to update window styling on the fly using doT.js – Part Two

In the first part of our series, we talked about setting up our application to take a “theme” object (an object with hex colors as properties) and use doT.js to return a compiled CSS file that we can append to the head of our window. We will now learn how we can set up a basic UI like the one below so a user can click on a color in the color palette to update the theme object whereby a new CSS file is generated and applied to all windows.

Topics: App development

How to update window styling on the fly using doT.js

In this post we will discuss how you can use doT.js, a fast and lightweight template engine, to re-render window styling on the fly. We recently used doT.js in a custom theme editor we built for one of our apps. We used doT.js in two ways:

1. We were able to store predefined color themes as JSON objects on the server which could then be converted into CSS on the client side and applied to all windows.

2. We were able to change the color of a specific element in real time as a user dragged their mouse over a color palette. In this post we will go through how to complete part 1 and in a later post we will explain how to complete part 2. 

Topics: Developer Tools

Generating forms dynamically from JSON schema

There are two main parts to creating a form based on a JSON schema: parsing and templating.

Topics: JSON schema

How to make your code more readable using helper functions?

On one of our current projects we began to notice that there are certain sections of the code base that are just plain ugly and hard to read. Some of it we wrote ourselves but it’s been too long for us to recall how it works without diving into it line for line. Here are a couple ways to make your code easier to read and more easily maintainable.

Why do we care about making our code more readable?

  1. Another developer can understand your code faster;
  2. Leverages the existing code base – If your code is well-organized and easy to read, you or another developer can reuse functions or statements without having to reinvent code (aka DRY).