IP Library › Granted Patent US 11,470,142
Granted Patent B2
US 11,470,142 · App. 17/650,842 · Granted Oct 11, 2022

Network browser engine

Inventors: Eric Simons (San Francisco, CA); Albert Pai (San Francisco, CA); Dominic Elm (Stephanskirchen, DE); Kwinten Pisman (Zelzate, BE); Tomek Sulkowski (Kalinowa, PL); Sam Denty (Mayo, IE)
Assignee: StackBlitz, Inc.
H04L67/01G06F8/61H04L67/02
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,470,142
App. No.
17/650,842
Granted
Oct 11, 2022
Kind
B2
Abstract

An improved computing system is arranged for cross-origin network communications on a single computing device. The system includes a processor, a networking module, and memory with software instructions arranged to operate a local computing server resource on a first local domain, instantiate a relay mechanism that has an iFrame and an invisible window, instantiate a local web server on a second local domain, install a service worker on the invisible window, receive a request for information at the local web server, verify a presence of the local computing server resource on the first local domain, communicatively connect the second local domain to the iFrame, and directly communicate, via the at least one networking module, at least one message between the local computing server resource on the first local domain and the local web server on the second local domain using the relay mechanism.

Claims (58)

1. An improved computing system, comprising:

at least one processor;

at least one networking module;

memory having stored thereon software instructions formatted for execution by the at least one processor, said software instructions arranged to:

operate a local computing server resource on a first local domain;

instantiate a relay mechanism that has an iFrame and an invisible window;

instantiate a local web server on a second local domain;

open a first browser window on the first local domain, the first browser window associated with the local computing server resource;

open a second browser window on the second local domain, the second browser window associated with the local web server;

collect certain data from one of the first and second browser windows;

install a service worker on the invisible window

receive a request for information at the local web server;

verify a presence of the local computing server resource on the first local domain;

communicatively connect the second local domain to the iFrame;

directly communicate, via the at least one networking module, at least one message between the local computing server resource on the first local domain and the local web server on the second local domain using the relay mechanism and display at least some of the certain data at the other one of the first and second browser windows, said at least some of the certain data passed with the at least one message.

2. The improved computing system of claim 1 wherein the local computing server resource is arranged as a transmission control protocol (TCP) server.

3. The improved computing system of claim 1 wherein the local web server is instantiated inside a secure container.

4. The improved computing system of claim 3 wherein at least a portion of the relay mechanism is included inside the secure container.

5. The improved computing system of claim 3 wherein the secure container is arranged to host at least one Node.js process.

6. The improved computing system of claim 1 wherein the local web server is arranged to process hypertext transfer protocol (HTTP) communications.

7. The improved computing system of claim 1 wherein the local web server is arranged to process web socket communications.

8. The improved computing system of claim 1 wherein the local web server is arranged to process JavaScript commands.

9. The improved computing system of claim 1 wherein the local computing server resource is accessible via a first browser window and the local web server is accessible via a second browser window.

10. The improved computing system of claim 1 wherein the local computing resource is arranged with at least one kernel-level interface arranged to direct operations of one or more kernel-level functions.

11. An improved computing method, comprising:

providing a single local computing resource that has at least one networking module;

operating, within the single local computing resource, a local computing server resource on a first local domain;

instantiating, within the single local computing resource, a relay mechanism that has an iFrame and an invisible window;

instantiating, within the single local computing resource, a local web server on a second local domain;

installing a service worker on the invisible window

receiving a request for information at the local web server;

verifying a presence of the local computing server resource on the first local domain;

opening a first browser window on the first local domain, the first browser window associated with the local computing server resource;

opening a second browser window on the second local domain, the second browser window associated with the local web server;

collecting certain data from one of the first and second browser windows;

communicatively connecting the second local domain to the iFrame;

directly communicating, via the at least one networking module, at least one message between the local computing server resource on the first local domain and the local web server on the second local domain using the relay mechanism and

displaying at least some of the certain data at the other one of the first and second browser windows, said at least some of the certain data passed with the at least one message.

12. The improved computing method of claim 11 wherein providing the single local computing resource includes arranging the single local computing resource as a transmission control protocol (TCP) server.

13. The improved computing method of claim 11 , further comprising:

performing at least one kernel level act at the local web server, said kernel level act directed by a command received from the single local computing resource.

14. The improved computing method of claim 11 , wherein at least some of the certain data is a JavaScript command.

15. An improved computing system, comprising:

at least one processor;

at least one networking module;

memory having stored thereon software instructions formatted for execution by the at least one processor, said software instructions arranged to:

initialize an improved web browser, the improved web browser including an improved browser engine;

instantiate, via the improved browser engine, a transmission control protocol (TCP) server on a first domain;

instantiate, via the improved browser engine, a local computing server resource on a second domain, the second domain having a different network identifier than the first domain;

instantiate, via the improved browser engine, at least one local runtime environment container;

allocate certain local computing resources, including memory, to the at least one local runtime environment container;

grant access to the certain local computing resources to the local computing server resource and to the at least one local runtime environment container;

isolate the allocated certain local computing resources from other functions of the improved computing system; and

directly communicate, through the at least one local runtime environment container, messages between the local computing server resource on the first local domain and the local web server on the second local domain using the relay mechanism.

16. The improved computing of claim 15 , wherein the improved computing has no internet access when at least one message is directly communicated between the local computing server resource on the first local domain and the local web server on the second local domain.

17. The improved computing of claim 15 wherein the at least one local runtime environment container is arranged to host a Node.js runtime environment.

18. The improved computing of claim 15 wherein the improved computing is a desktop computer or a laptop computer.

19. The improved computing of claim 15 wherein a JavaScript interpreter of the improved web browser can determine if JavaScript is handled locally or remotely.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 22, 2022
From: SIMONS, ERIC; PAI, ALBERT; ELM, DOMINIC; PISMAN, KWINTEN; SULKOWSKI, TOMEK; DENTY, SAM
To: STACKBLITZ, INC.
Reel/Frame 060212/0759 →
Continuity (2)
Provisional Application 63149664 · Feb 16, 2021
Related Publication 20220263917A1 · Aug 18, 2022