# US 10,769,231 B2 · System integrating a mobile device application creation, editing and distribution system with a website design system

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,769,231 B2
- Document ID: US10769231B2
- Status: Granted
- Kind: B2
- Application number: 15/224,616
- Filed: 2016-07-31
- Published: 2017-02-02
- Granted: 2020-09-08
- Earliest claimed: 2015-07-30
- Assignees: Wix.com Ltd.
- Applicants: Wix.com Ltd.
- Inventors: Tal Kol; Noam Cocos; Noam Almog; Reuven J. Sherwin
- Web page: https://patentgrep.com/patent/US10769231B2

## CPC

- G06F 8/36: Software reuse
- G06F 3/0482: Interaction with lists of selectable items, e.g. menus
- G06F 16/9577: {Optimising the visualization of content, e.g. distillation of HTML documents}
- G06F 16/958: Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
- G06F 16/986: {Document structures and storage, e.g. HTML extensions}
- G06F 40/106: Display of layout of documents; Previewing
- G06F 40/143: Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
- G06F 40/151: Transformation
- G06F 40/154: Tree transformation for tree-structured or markup documents, e.g. XSLT, XSL-FO or stylesheets
- G06F 40/197: Version control (for software G06F8/71)
- G06F 8/20: Software design
- G06F 8/40: Transformation of program code
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

An application generating website building system (AGWBS) converts a website to an application which operates on a mobile device. The system includes a website building system (WBS) to enable a user to build a website, and to host the website, a database to store website data that includes at least a structure of the website, an application generator repository to store at least several per-vertical base apps, where each per-vertical base app is a template app for one type of business, and an application generator to determine the website type of business, to generate an initial extended application content file (XACF) at least from an associated per-vertical base app for the type of business, to analyze the structure of the website to generate a graph of elements of the website and to use the graph to modify the associated per-vertical base app into an XACF defining the mobile application.

## Claims

### Claim 1

A system comprising:
at least one computer hardware device;
an application generating website building system (AGWBS) running on said at least one computer hardware device for converting a website to an application which operates on a mobile device, the AGWBS comprising:
a website building system (WBS) to enable a user to build a website, said WBS also to host-said website, said WBS comprising at least one database to store at least templates for data of said website, said data comprising website elements, said website elements further comprising at least pages, components, component instance attributes and at least a structure and a vertical of said website;
an application generator repository to store at least a plurality of per-vertical base apps, wherein each per-vertical base app is per one type of business, said application generator repository to also store mobile app subgraphs representing page and component interconnections in mobile app sub-sections; and
an application generator integrated with said WBS to generate an application for said website, said generator: to determine a type of business of said website at least according to an analysis of said website elements, to select a vertical base-app from said application generator repository for said determined type of business and to generate an initial extended application content file (XACF) accordingly, to analyze page and component interconnections of the instances of the components within said structure of said website from said data, to generate a graph of elements showing said interconnections, to match sub graphs of said graph with at least one of said mobile app subgraphs from said application generator repository, and to use said graph to modify at least a layout of said initial XACF into a modified XACF defining said application.

### Claim 2 (depends on 1)

The AGWBS of claim 1, wherein said data also comprises metadata about said website, business intelligence (BI) collected on said website, business information of said website, editing related information of said website and operational data of said website.

### Claim 3 (depends on 2)

The AGWBS of claim 2, said application generator to analyze said data and to modify said XACF according to said analysis.

### Claim 4 (depends on 2)

The AGWBS of claim 2, wherein said business information comprises at least one of editing history of said website by designer and WBS usage information.

### Claim 5 (depends on 2)

The AGWBS of claim 2, wherein said metadata comprises at least one of: attributes and hints including palettes, style guides, vertical type information and sub vertical type information.

### Claim 6 (depends on 2)

The AGWBS of claim 2, wherein said application generator further comprises a site usage analyzer to analyze said BI.

### Claim 7 (depends on 1)

The AGWBS of claim 1, wherein said application generator further comprises an app editor to edit said XACF.

### Claim 8 (depends on 1)

The AGWBS of claim 1, wherein said application generator further comprises a complex component convertor to identify components in said structure of said website, to identify relationships between said components and to automatically create corresponding structures for said application.

### Claim 9 (depends on 1)

The AGWBS of claim 1, wherein said application generator further comprises a backend elements handler to connect to a website operational database (ODB) and to use operational information stored in said ODB to modify said XACF.

### Claim 10 (depends on 1)

The AGWBS of claim 1, wherein said application generator further comprises a color and themes setter to automatically assign colors to components and screens of said application according to pre-defined aesthetic rules.

### Claim 11 (depends on 10)

The AGWBS of claim 10, wherein said color and themes setter further comprises:
a brand determiner to extract a set of brand colors from said website and to set an associated color theme for said brand colors;
a color assigner to assign multiple colors within said theme to a plurality of user interface elements of the said application; and
a background designer to create a background to said plurality of user interface elements within said theme.

### Claim 12 (depends on 11)

The AGWBS of claim 11, wherein said color assigner to generate a plurality of color adjacency graphs (CAG) and a CAG analyzer to analyze said graphs.

### Claim 13 (depends on 1)

The AGWBS of claim 1, wherein said application generator also comprises: a main screen determiner to select a subset of screens of said application as main screens.

### Claim 14 (depends on 13)

The AGWBS of claim 13, wherein said AGWBS also comprises a screen preview creator to render all screens or only said main screens of said application.

### Claim 15 (depends on 14)

The AGWBS of claim 14, wherein said screen preview creator uses a client side rendering framework to render said user interface elements.

### Claim 16 (depends on 15)

The AGWBS of claim 15, wherein said client side rendering framework is at least one of Scalable Vector Graphics (SVG), WebGL or HTML5 Canvas.

### Claim 17 (depends on 14)

The AGWBS of claim 14, wherein said screen preview creator also comprises a field content determiner (FCD) to provide data for fields of said user interface elements.

### Claim 18 (depends on 13)

The AGWBS of claim 13 and also comprising a communication unit to provide only said main screens to run on external preview servers.

### Claim 19 (depends on 13)

The AGWBS of claim 13 and also comprising a communication unit to provide said XACF to external preview servers and to indicate to said preview servers to navigate to said main screens within said XACF.

### Claim 20 (depends on 13)

The AGWBS of claim 13 and also comprising a communication unit to provide said XACF to external preview servers and a field content determiner to provide data for fields of said user interface elements of said XACF.

### Claim 21 (depends on 1)

The AGWBS of claim 1, wherein said AGWBS also comprises a mobile visualizer app (v-app) to provide a preview of user interface elements of said application on a mobile device.

### Claim 22 (depends on 21)

The AGWBS of claim 21, wherein said v-app adds a watermark to said application to indicate that it is not a standard application.

### Claim 23 (depends on 1)

The AGWBS of claim 1, wherein said AGWBS also comprises a mobile WBS gateway app (w-app) to provide a user interface to display a plurality of websites built by said WBS and to select one of said websites as input for said application generator.

### Claim 24 (depends on 1)

The AGWBS of claim 1, wherein said AGWBS also comprises a mobile multi app (m-app) to execute a plurality of sub apps (s-apps), wherein each said s-app comprises said XACF for a different website.

### Claim 25 (depends on 24)

The AGWBS of claim 24, wherein said m-app is operative for s-apps of a single type of business.

### Claim 26 (depends on 24)

The AGWBS of claim 24, wherein said m-app also comprises a localized app store.

### Claim 27 (depends on 26)

The AGWBS of claim 26, wherein said m-app also communicates with a recommender engine to recommend said s-apps.

### Claim 28 (depends on 24)

The AGWBS of claim 24, wherein said AGWBS also comprises an s-app installer to install a selected one of said plurality of s-apps on said mobile device, and wherein a trigger to activate said installer is a location detected by said mobile device, wherein said location is associated with said s-app to be installed.

### Claim 29 (depends on 28)

The AGWBS of claim 28 wherein said location is detected by one of satellite-based positioning system, Wifi, Beacon or inertial navigation.

### Claim 30 (depends on 1)

The AGWBS of claim 1, also comprising a common app engine (CAE) to execute said XACF.

### Claim 31 (depends on 30)

The AGWBS of claim 30, wherein said AGWBS also communicates with a plurality of external preview servers located on the cloud to preview said application.

### Claim 32 (depends on 31)

The AGWBS of claim 31, wherein a server adapted CAE cloud server of said preview servers comprises a server-adapted CAE directly executable on top of its server operating system.

### Claim 33 (depends on 32)

The AGWBS of claim 32, wherein said server adapted CAE cloud server comprises a server-adapted CAE to concurrently execute a plurality of XACFs.

### Claim 34

A method for converting a website to an application which operates on a mobile device, the method comprising:
enabling a user to build a website using a website building system (WBS), storing data of said website, said website data comprising website elements further comprising at least pages, components, component instance attributes and at least a structure and a vertical of said website;
storing at least a plurality of per-vertical base apps, wherein each per-vertical base app is per one type of business; said storing to also store mobile app subgraphs representing page and component interconnections in mobile app sub-sections;
generating an application for said website, said generating comprising:
determining a type of business for said website at least according to an analysis of said website elements;
selecting a vertical base-app from said storing for said determined type of business; and
generating an initial extended application content file (XACF) accordingly;
said generating further comprising:
analyzing page and component interconnections of the instances of the components within said structure of said website from said data;
generating a graph of elements showing said interconnections;
matching sub graphs of said graph with at least one of said mobile app subgraphs from said application generator repository; and
according to said graph modifying at least a layout of said initial XACF into a modified XACF defining said application.

### Claim 35 (depends on 34)

The method of claim 34, wherein said data comprises metadata about said website, business intelligence (BI) collected on said website, business information of said website, editing related information of said website and operational data of said website.

### Claim 36 (depends on 35)

The method of claim 35, and also comprising analyzing said data and modifying said XACF according to said analysis.

### Claim 37 (depends on 35)

The method of claim 35, wherein said business information comprises at least one of editing history of said website by designer and WBS usage information.

### Claim 38 (depends on 35)

The method of claim 35, wherein said metadata comprises at least one of: attributes and hints including palettes, style guides, vertical type information and sub vertical type information.

### Claim 39 (depends on 35)

The method of claim 35, and also comprising analyzing said BI.

### Claim 40 (depends on 34)

The method of claim 34, and also comprising editing said XACF.

### Claim 41 (depends on 34)

The method of claim 34, and also comprising identifying complex components in said structure of said website, identifying relationships between said components and automatically creating corresponding structures for said application.

### Claim 42 (depends on 34)

The method of claim 34, and also comprising connecting to a website operational database (ODB) and using operational information stored in said ODB to modify said XACF.

### Claim 43 (depends on 34)

The method of claim 34, and also comprising automatically assigning colors to components and screens of said application according to pre-defined aesthetic rules.

### Claim 44 (depends on 43)

The method of claim 43, and also comprising:
extracting a set of brand colors from said website;
setting an associated color theme for said brand colors;
assigning multiple colors within said theme to a plurality of user interface elements of the said application; and
creating a background to said plurality of user interface elements within said theme.

### Claim 45 (depends on 44)

The method of claim 44, and also comprising generating a plurality of color adjacency graphs (CAG) and analyzing said graphs.

### Claim 46 (depends on 34)

The method of claim 34, and also comprising selecting a subset of screens of said application as main screens.

### Claim 47 (depends on 46)

The method of claim 46, and also comprising rendering all screens or only said main screens of said application.

### Claim 48 (depends on 47)

The method of claim 47, and also comprising using a client side rendering framework to render said user interface elements.

### Claim 49 (depends on 48)

The method of claim 48, wherein said client side rendering framework is at least one of Scalable Vector Graphics (SVG), WebGL or HTML5 Canvas.

### Claim 50 (depends on 47)

The method of claim 47, and also comprising providing data for fields of said user interface elements.

### Claim 51 (depends on 50)

The method of claim 50, wherein said previewing comprises adding a watermark to said application to indicate that it is not a standard application.

### Claim 52 (depends on 46)

The method of claim 46 and also comprising a running only said main screens on external preview servers.

### Claim 53 (depends on 46)

The method of claim 46 and also comprising communicating with external preview servers and indicating to said preview servers to navigate to said main screens within said XACF.

### Claim 54 (depends on 46)

The method of claim 46 and also comprising a communicating with external preview servers and providing data for fields of said user interface elements of said XACF.

### Claim 55 (depends on 34)

The method of claim 34, and also comprising previewing of user interface elements of said application on a mobile device.

### Claim 56 (depends on 34)

The method of claim 34, and also comprising providing a user interface to display a plurality of websites built by said WBS and selecting one of said websites as input for said app generating.

### Claim 57 (depends on 34)

The method of claim 34, and also comprising executing a plurality of sub apps (s-apps), wherein each said s-app comprises said XACF for a different website.

### Claim 58 (depends on 57)

The method of claim 57, and also comprising executing a selected s-app for a single type of business.

### Claim 59 (depends on 57)

The method of claim 57, and also comprising a localized app store.

### Claim 60 (depends on 59)

The method of claim 59, and also comprising communicating with a recommender engine to recommend said s-apps.

### Claim 61 (depends on 57)

The method of claim 57, and also comprising installing a selected one of said plurality of s-apps on said mobile device, and triggering said installing according to location detected by said mobile device, wherein said location is associated with said s-app to be installed.

### Claim 62 (depends on 61)

The method of claim 61 and also comprising location detecting by one of satellite based position system, Wifi, Beacon, inertial navigation.

### Claim 63 (depends on 34)

The method of claim 34, and also comprising executing said XACF using a common app engine (CAE).

### Claim 64 (depends on 63)

The method of claim 63, and also comprising communicating with a plurality of external preview servers located on the cloud to preview said application.

### Claim 65 (depends on 64)

The method of claim 64, and also comprising executing a server adapted common app engine (CAE) directly on top of its server operating system.

### Claim 66 (depends on 65)

The method of claim 65, and also comprising said CAE concurrently executing a plurality of XACFs.
