---
title: Create Streamable, High-Performance Web Applications
description: Work with Bitovi to use technologies like streams, fetch, HTTP/2 Push, and NDJSON to make your web experiences better and improve page performance.
---

[Bitovi](https://www.bitovi.com/?hsLang=en-us)

[Contact Us](https://www.bitovi.com/contact?hsLang=en-us)

Menu ****

# Contact Us

(312) 620-0386 | [contact@bitovi.com](mailto:contact@bitovi.com)

![StackStorm](https://www.bitovi.com/hs-fs/hubfs/stackstorm/stack-storm-bkg.jpg?width=1555&height=1037&name=stack-storm-bkg.jpg)

# Streamable Web Apps

We can help you use tools of new browser and server technologies to dramatically improve your app streaming and loading times.

 We’re at the dawn of a new golden age of web development, with technologies like streams, fetch, HTTP/2 Push, and NDJSON waiting to be used to make web experiences better. 

![steamable app example](https://www.bitovi.com/hubfs/streamable/streamable-graphic.svg)

## Why make your app streamable?

### To increase perceived performance

 Instead of waiting for our entire ajax response to complete, we can start showing the data as it arrives. With streams of JSON data, we can start processing and rendering right away. This makes users happy because they are able to see things sooner.

### To save round trips to the server

 HTTP/2 lets you send back multiple responses per single request. For example, we can use it to send back the application JS and CSS along with the initial HTML request, helping your page load faster.

### To improve your app with just minimal changes on your server

 Enabling streamable apps can be done by inserting a Node middleware layer onto performance-sensitive services and enabling streaming data connections.

### To improve your app with just minimal changes on your client

 To improve your app with just minimal changes on your client

 We'll work with you to add a layer to your existing web app that enables streaming - sending data and assets from your server in optimized chunks and rendering on the client incrementally. 

[Talk to Us](https://www.bitovi.com/streamable#hs_cos_wrapper_widget_1485893088244)

## Bitovi’s Relevant OS Projects and Articles

[![](https://www.bitovi.com/hubfs/streamable/streamable-done-srr.jpg)

**Done-SRR**

 A server-side rendering project that supports the use of server-side data streaming 

](https://github.com/donejs/done-ssr) [![](https://www.bitovi.com/hubfs/streamable/streamable-ndjson.jpg)

**ndjsonStream**

 A client-side library that aids in processing NDJSON streams into usable JavaScript objects 

](https://canjs.com/doc/can-ndjson-stream.html?__hstc=12643496.60371631b4b79adc57271e84074c9ed9.1468425966964.1519402679603.1519407891303.363&__hssc=12643496.19.1519407891303&__hsfp=972100392) [![](https://www.bitovi.com/hubfs/streamable/streamable-can-connect.jpg)

**can-connect-ndjson **

 A layer on top of can-ndjson-stream that adds NDJSON support as a behavior in can-connect, making it simple to connect to an NDJSON API endpoint. 

](https://v3.canjs.com/doc/can-connect-ndjson.html) [![](https://www.bitovi.com/hubfs/streamable/streamable-ssr-zones.jpg)

**Bitovi Free Frontend Online Training**

 Get an understanding of what JavaScript is and isn't and its interplay with the DOM and the Browser. 

](https://github.com/donejs/done-ssr/blob/zones/zones.md)

- [![](https://www.bitovi.com/hubfs/Bitovi_July_2016_Theme/Images/bitovi-logo-x2.png) Utilizing HTTP2 PUSH in a Single Page Application ](https://www.bitovi.com/blog/utilizing-http2-push-in-a-single-page-application?hsLang=en-us)
- [![](https://www.bitovi.com/hubfs/Banner_Images/logo-david-walsh-blog.png) Streaming Data with Fetch() and NDJSON ](https://davidwalsh.name/streaming-data-fetch-ndjson)
- [![](https://www.bitovi.com/hubfs/Bitovi_July_2016_Theme/Images/bitovi-logo-x2.png) Faster Page Loads: How to Use NDJSON to Stream API Responses ](https://www.bitovi.com/blog/faster-page-loads-how-to-use-ndjson-to-stream-api-responses?hsLang=en-us)
- [![](https://www.bitovi.com/hubfs/Bitovi_July_2016_Theme/Images/bitovi-logo-x2.png) How To Use NDJSON Streams with can-connect ](https://www.bitovi.com/blog/how-to-use-ndjson-streams-with-can-connect?hsLang=en-us)

#### **Streaming Technologies**

- [![](https://www.bitovi.com/hubfs/stackstorm/logos/logo-mozilla.png) Fetch API ](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API)
- [![](https://www.bitovi.com/hubfs/stackstorm/logos/logo-shimmercat.png) A closer look to HTTP/2 Push ](https://www.shimmercat.com/en/blog/articles/whats-push/#vw0)
- [![](https://www.bitovi.com/hubfs/stackstorm/logos/logo-ndjson.png) ndjson.org ](http://ndjson.org/)
- [![](https://www.bitovi.com/hubfs/stackstorm/logos/logo-mozilla.png) ReadableStream ](https://developer.mozilla.org/en-US/docs/Web/API/ReadableStream)

## Sign up for a free 1 hour strategy call

We'll talk about your app and what type of benefits vs effort streaming may have for your team.

## Company

- [About](https://www.bitovi.com/about?hsLang=en-us)
- [Chicago](https://www.bitovi.com/about/javascript-consulting-chicago?hsLang=en-us)
- [Blog](https://www.bitovi.com/blog?hsLang=en-us)
- [Jobs](https://www.bitovi.com/jobs?hsLang=en-us)

## Services

- [UX Design Consulting](https://www.bitovi.com/ux-design-consulting?hsLang=en-us)
- [JavaScript Consulting](https://www.bitovi.com/frontend-javascript-consulting?hsLang=en-us)
- [React Consulting](https://www.bitovi.com/frontend-javascript-consulting/react-consulting?hsLang=en-us)
- [Angular Consulting](https://www.bitovi.com/frontend-javascript-consulting/angular-consulting?hsLang=en-us)
- [DevOps Consulting](https://www.bitovi.com/devops?hsLang=en-us)
- [StackStorm Consulting](https://www.bitovi.com/stackstorm-consulting?hsLang=en-us)
- [Accessibility Consulting](https://www.bitovi.com/accessibility-consulting?hsLang=en-us)
- [NodeJS Consulting](https://www.bitovi.com/nodejs?hsLang=en-us)
- [Training](https://www.bitovi.com/ux-javascript-training?hsLang=en-us)

## Work

- [Client Work](https://www.bitovi.com/web-application-consulting-work?hsLang=en-us)
- [Open Source](https://www.bitovi.com/open-source?hsLang=en-us)
- [eCommerce](https://www.bitovi.com/ecommerce?hsLang=en-us)
- [Blockchain](https://www.bitovi.com/blockchain-consulting?hsLang=en-us)

## Technology

- [DoneJS](https://donejs.com/)
- [CanJS](https://canjs.com/)
- [StealJS](https://stealjs.com/)
- [FuncUnit](https://funcunit.com/)
- [DocumentJS](https://documentjs.com/)

## Contact

- [contact@bitovi.com](mailto:contact@bitovi.com)
- [(312) 620-0386](tel:3126200386)

- [Twitter](http://twitter.com/bitovi)
- [Github](http://github.com/bitovi)
- [Linked In](https://www.linkedin.com/company/bitovi)
- [Blog RSS Feed](https://www.bitovi.com/blog/rss.xml?hsLang=en-us)

```json
{
  "@context" : "http://schema.org",
  "@type" : "Organization",
  "address" : {
    "@type" : "PostalAddress",
    "addressCountry" : "United States",
    "addressLocality" : "Libertyville",
    "addressRegion" : "IL",
    "postalCode" : "60048",
    "streetAddress" : "1134 Pine Tree Lane "
  },
  "alternateName" : "Bitovi",
  "areaServed" : {
    "@type" : "GeoCircle",
    "geoMidpoint" : {
      "@type" : "GeoCoordinates",
      "latitude" : "41.8781",
      "longitude" : "87.6298"
    },
    "geoRadius" : "5000 km"
  },
  "description" : "Bitovi is a UX, UI design and front-end JavaScript development consulting company",
  "email" : "contact@bitovi.com",
  "image" : "https://www.bitovi.com/hubfs/bitovi-logo-x2.png",
  "logo" : "https://www.bitovi.com/hubfs/bitovi-logo-23-1.svg",
  "mainEntityOfPage" : {
    "@id" : "https://www.bitovi.com/streamable",
    "@type" : "WebPage",
    "description" : "Work with Bitovi to use technologies like streams, fetch, HTTP/2 Push, and NDJSON to make your web experiences better and improve page performance."
  },
  "naics" : "541511",
  "name" : "Bitovi Web App Consulting",
  "sameAs" : [ "https://www.facebook.com/BitoviLLC/", "https://twitter.com/bitovi", "https://www.linkedin.com/company/bitovi" ],
  "telephone" : "312-620-0386",
  "url" : "http://bitovi.com"
}
```