Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
GraphStudio is not perfect, like any other software. The following issues are known and will be fixed in the future.
GraphStudio v2.4 changes internal loading job generation. Older version data mappings are deprecated. Please contact TigerGraph support if you need to migrate them from an earlier version.
Read more at https://stackoverflow.com/questions/307179/what-is-javascripts-highest-integer-value-that-a-number-can-go-to-without-losin.
In the future, GraphStudio will use BigInt to solve this problem.
Since we upgraded the color picker library to new version, we find that if you set color to grey (left or bottom border of the color picker), then it will be locked to red as its pivot color. In this case when you try to change the pivot color, like this:
When you release mouse, it will be back to red:
You need first drag the indicator in the above panel to leave the border:
Then change the pivot color in the color stripe. Like this:
When there are edges very close to one another, their click response areas may overlap, making it hard to select the edge you want. This happens after zoom-in / zoom-out or connecting to another screen sometimes. Workaround: click a blank place in the working panel then zoom-in and zoom-out. The response area will back to normal.
Currently GraphStudio doesn't support fixed binary type attributes in schema. If you create your graph schema from GSQL with such attributes, GraphStudio will refuse to work. We will support this feature in future releases.
GraphStudio can only recognize data mapping procedures created through GUI. If you create loading jobs from GSQL, they won't be shown in GraphStudio.
Currently you cannot map data to map and UDT type attributes in GraphStudio. We will support this feature in future releases.
Currently you cannot modify your schema in GraphStudio if there are more than one graph in TigerGraph system.
Workaround: you can still change the schema in GSQL and GraphStudio will work smoothly with your modified schema.
If you find any bugs, please report them to support@tigergraph.com. We really appreciate it!
Sometimes when you double-click a vertex, the graph exploration result disappears. This is only a front-end rendering issue. The data is still there. Workaround : click the change layout button, and choose any layout. Everything will be rendered.
The TigerGraph GraphStudioâ„¢ UI (User Interface) provides an intuitive, browser-based interface that helps users get started quickly with graph-based application development tasks: designing a graph schema, creating a schema mapping, loading data, exploring the graph, and writing GSQL queries. This guide serves as an introduction and quick-start manual for the GraphStudio UI.
As of May 2019, the GraphStudio UI is certified on following browsers:
Not all features are guaranteed to work on other browsers.
Please make sure to enable JavaScript and cookies in your browser settings.
If you are using GraphStudio in the TigerGraph cloud environment, you can directly access GraphStudio via a browser.
For on-premise deployment, the system by default is listening to port 14240. Any machine connected to the server can access GraphStudio from a browser with the following address:
In v1.2, the default TCP/IP port for GraphStudio has changed from 44240 to 14240, to avoid possible port conflicts with Zookeeper.
If the GraphStudio UI does not show, the visualization service might be off. To verify, in a linux shell of the server, type
If it is off, turn it on:
If you still cannot access GraphStudio, check your firewall rules and open 14240 port to public. For example, if your Linux OS uses firewalld:
GraphStudio has a default session timeout of 1 week. If, during this time, the user has no interaction with the page, the session will expire and the user will be logged out automatically. The timeout can be configured with:
Visit TigerGraph Test Drive demos at: https://testdrive.tigergraph.com/
The GraphStudio online Test Drive features several instances of the TigerGraph system, each one targeting a different use case. Each copy of TigerGraph has a GraphStudio interface and is preloaded with application-specific queries and synthetic data. These demo applications are provided in a read-only mode. Users can explore and play with pre-installed queries. Users on these demo systems cannot save changes to the graph schema, the loading job, or queries. The corresponding buttons are disabled.
Some features which are available in GSQL are not available in GraphStudio.
Fixed binary data types are not supported.
Edges from a set of vertex types to a set of vertex types are not supported.
There are limitations for MultiGraph. See User Access Management
Cannot load JSON data.
Cannot create a data mapping for a MAP type and UDT type attribute.
Data loading jobs written in a GSQL console are not shown in GraphStudio.
USING options are not available.
Concurrent loading is not available.
You cannot define a user-defined function (you can use the user-defined functions created from TigerGraph server).
GraphStudio operation requires a valid license. The GraphStudio license is independent from the TigerGraph database license; some TigerGraph product editions come with a GraphStudio license pre-installed. The GraphStudio license expiration date might be different from that of the TigerGraph license.
Without a license, it is not possible to navigate to the Design Schema, Map Data To Graph, Load Data, Explore Graph or Write Queries pages.
The Developer Edition package includes a pre-installed license. Please note that Developer Edition may not be used for production use.
After mapping data files to the graph schema, you can start loading data. Click "Load Data" on the left side menu bar to go to the Load Data page.
The "Load Data" interface is separated into three parts:
Data Mapping Overview
Provides a general view of the graph and the data mapping.
Shows the loading progress of each data file.
Toolbar (above Data Mapping)
Start/pause/resume/stop data loading and clear graph data buttons.
Statistics
Graph statistics: displays the numbers of vertices and edges in total and per type, with real-time loading progress.
Loading statistics: displays the total number of vertices and edges loader vs. time.
To display real-time graph statistics, this page checks the number of vertices and edges every 10 seconds, which adds overhead. To maximize loading performance, move to a different page after starting loading, and only come back here occasionally to check on progress.
GraphStudio provides two types of loading:
Partial Loading: load a subset of the data files which the user selects.
Complete Loading: load all of the data files.
Similar to Start Loading, you can pause loading some of the data files, or all loading data files.
You can resume loading some or all loading data files which have been paused.
The Statistics panel contains two tabs: Graph Statistics (1st tab) and Data Loading Statistics (2nd tab).
By default if no data file is selected, the Statistics panel will show Graph Statistics.
The table at the top shows the total number of vertices and edges in the current graph, and the number of each vertex type and edge type as well. The line chart at the bottom shows the number of vertices and edges over time, when loading is in progress.
If you click on one data file, the Statistics panel will change to show Data Loading Statistics:
The table at the top shows the detailed loading information of the selected data file, including:
Status (RUNNING, PAUSED, STOPPED, etc)
Loaded percentage (for files on server) or loaded size (for S3 file)
Loading speed
Average loading speed
Number of loaded lines
Number of missing token lines
Number of oversize lines
Loading start time
Loading duration
The area chart in the middle shows the real-time loading speed (lines per second) for this data file.
The pie chart at the bottom shows the distribution of data lines, among three categories:
Loaded lines
Missing token lines (the lines contain fewer tokens than required by the data mapping)
Oversize lines (some tokens are too large)
The number of loaded lines doesn't mean all these lines are successfully loaded. Some issues during Data Mapping (like mapping a non-numeric column to an integer attribute) or because of dirty data may cause some of these lines not to be loaded.
If data file loading encounters any issues and gets an error message, the error message will be shown at the bottom:
Caution: Clear Graph Data deletes all data from your database. The schema and queries will remain. This deletion is irreversible. Please confirm the impact before you proceed with clearing graph data operation.
Tip: Only users with superuser role can clear graph. You can consider assigning other roles to your team to avoid accidental data deletion.
After the clear operation, the graph vertex and edge number statistics will both drop to 0.
After data has been loaded, you can go to the Explore Graph or Write Queries pages.
After login, the user is assigned to one of the graphs for which he has access to.
TigerGraph uses role-based access control with several pre-defined roles. Each role is a logical collection of data access privileges, such as querywriter or admin. Each user is assigned one or more roles by a graph admin user or by a superuser. Roles are also graph-specific. For example, user Pat could be an admin on graph G1 but a querywriter on graph G2.
Current Limitation
Currently, role assignments can only be made in the GSQL shell. In the future Admin Portal will support user management functionality.
When a user logs in and/or selects a graph, GraphStudio will disable certain actions based on the user's role on that graph. On each working panel, a warning note will alert the user to features which are disabled. For example, in the current version of GraphStudio, users with querywriter, queryreader, or observer role will see the following warnings on the Design Schema working panel:
The table below summarizes the built-in roles and of their key privileges on GraphStudio:
Current Limitations
Currently, not all of the TigerGraph capabilities for creating and using multiple graphs are available through GraphStudio; some operations can only be performed from the GSQL shell. Below is the list of current MultiGraph-related limitations.
Creating a New Graph Schema:
A superuser can create a graph schema only if no graphs currently exist.
Admin and designer users cannot create a graph schema in GraphStudio.
Modifying a Graph Schema:
A superuser can modify a graph schema if and only if exactly one graph exists.
Admin and designer users cannot modify a graph schema in GraphStudio.
Only superusers can modify visual styling of schemas – color , vertex icons, and layout. Visual styling is supported even when there are multiple graphs.
A graph admin user or superuser grants each user access to particular graphs. Currently, granting and revoking privileges must be done as GSQL commands; user roles cannot be managed in GraphStudio yet.
Designing the graph schema is the first and most important step of solving a business problem. The graph schema is the model of the problem, and all of the subsequent steps depend on the graph schema. If you are not already in Design Schema mode, click "Design Schema" on the left side menu bar.
Current Limitations
Only users with superuser privilege can use Design Schema to modify a graph schema.
If there is already more than one graph, then the superuser can only modify the visual style of the graphs.
When there is no graph schema in the system, this page will show some hints:
Otherwise this page will visualize the schema:
Each circle represents a vertex type, and each link represents an edge type. You can drag the circles to change their positions. There are two ways to zoom in and out. If you have a touchpad, two-finger moving up zooms out; two-finger moving down zooms in. Similarly, if your mouse has a scroll wheel, spinning forward zooms out; spinning backward zooms in.
Note: The relationship between a vertex type and a vertex instance of a graph is like the relationship between a table and one record of a table in the relational database world. The relationship between an edge type and an edge instance is similar. In the Design Schema step, the user defines vertex types and edge types to model the data schema. After the schema has been created, the next two steps, Map Data To Graph and Load Data, are for loading data into the graph.
In this window you specify a vertex type name, primary id name. GraphStudio will automatically select a color for your vertex type icon. You can change the vertex type color by clicking the value under the "Color hex" label. A color palette window will pop up allowing you to choose a new color:
You can also upload your own icons by clicking the Upload Icon button, choosing a PNG image, giving a name and click Upload:
Then you can use your uploaded icons:
Adding and Deleting Attributes To add an attribute, click the green plus sign at the right of the Attributes section:
Provide a name and data type for your new attribute. Optionally, you can specify a default value for the attribute. (If you do not specify, every data type has a system default value. For example, the default value for an integer is 0.)
To delete an attribute, click the red minus sign to the right of the attribute to delete an existing attribute.
Each edge type has a source vertex type and a target vertex type. First, click the source vertex type. A hint will appear on the vertex type circle:
Then click the target vertex type. The add edge type window will pop up:
You must specify an edge type name. The source vertex type and target vertex type are selected based on your clicking action. However, you can change that by choosing another vertex type in the dropdown list.
By default, the edge type is undirected. To make the edge type directed, mark the Directed checkbox:
If Directed is checked, another checkbox will appear for you to choose whether the edge type should include reverse edges. Including reverse edges provides more flexibility when designing queries. Unselect the Reverse edge checkbox ONLY IF your machine memory is very tight, because if there is no reverse edge, queries will not be able to traverse backwards along this directed edge type, from the target vertex to the source vertex.
Editing edge type attributes is the same as editing vertex type attributes.
You can add multiple edge types between the same source vertex type and target vertex type pair. Moreover, an edge can use the same vertex type for both its source vertex type and its target vertex type, e.g., a Friendship edge from Person vertex to Person vertex.
Note that Publish Schema applies to both creating a new schema as well as modifying an existing schema. If you have already loaded data into or created queries for an existing graph, please note that GraphStudio's Publish Schema is only able to retain your existing data in some circumstances. Read the following section carefully.
Developer Edition: SCHEMA_CHANGE is not supported. Publish Schema will always "DROP ALL" (erase all data) before creating your new schema.
Enterprise Edition: If you are editing an existing graph schema, GraphStudio will analyze your changes. If the change to a vertex or edge type is to remove some attributes and / or to add some new attributes, GraphStudio will employ a GSQL SCHEMA_CHANGE job, in order to retain the graph data you already loaded.
All other types of changes, including renaming the vertex or edge type, changing attribute name or data type, changing edge direction, adding or removing reverse edge will result in removing the old vertex or edge type and then adding the new one with your desired configurations. In that case, the loaded data to that vertex or edge type will be erased. Please think twice before you do that kind of changes.
If a vertex type will be removed in order to change the schema, all edge types connected to that vertex type will also be removed.
When you are editing a graph schema, a warning message in the top-right side of the working panel will show which old vertex and edge types will be removed. Make sure to check the message periodically to make sure it is as you expect:
Click continue button, and GraphStudio will start changing your schema:
If you have already created a data mapping and written queries, GraphStudio will try its best to preserve your work when you publish your modified schema:
All your queries will be saved as query drafts, so you can install the queries again after you change your schema. If a query has a conflict with the new schema (e.g., referring to a vertex type that is deleted), you need to fix it before installing the query.
GraphStudio will migrate your data mapping based on your changes to the schema. Since GraphStudio records your whole operation history, the migration is smart enough to cover most cases. The basic migration rules are the following:
Rename vertex types and edge types
Remove mappings to deleted vertex types and edge types.
Remove mappings to deleted or modified attributes.
New vertex types, edge types and new attributes won't be mapped.
After the schema is successfully published, GraphStudio will instruct you to go to the Map Data To Graph page to verify and publish the revised data mapping. If any mapping is not correct, you can fix it. You must publish the migrated data mapping; otherwise, it will be lost.
If you have published some data mapping through GraphStudio, then after schema is changed successfully, a pop up window will guide you to go to the Map Data To Graph page to confirm and publish the migrated data mapping:
After you have created a graph schema, the next major step is to map your data to the schema. Click "Map Data To Graph" on the left side menu bar. The working panel is split into a left panel and a right panel. Initially when there is no data mapping yet, the left panel will display only the graph schema.
The main steps are
Select a data source.
Add data file(s)
Map data file(s) to vertex/edge types
Map data file columns to vertex/edge fields
Publish data mapping
Beginning with v2.4, GraphStudio supports loading data from a variety of different data sources. Originally, data could only be loaded from local files. TigerGraph 2.4 adds support for using Amazon S3 data files directly through the GUI. In future releases, GraphStudio will support loading from other data sources.
Click the data file type selector button on the banner of Add Data File window, and choose either File or S3 from the list:
This section contains a subsection for each of the different data sources. Read the section which pertains to your data source:
Initially, there are no data files in the server data folder.
There is a limit of 500MB on file size. If you are using on-premises deployment, you can bypass this limit by directly putting the data files or their softlinks in the server data folder, located at <TigerGraph_root_dir>/loadingData.
Once the file is uploaded to the server, it will appear in the "Files on server" list on the left side of the Add Data Files window.
Data Files must be .csv files
The Add Data File box will only upload files which end in ".csv". If you manually place files in the <TigerGraph_root_dir>/loadingData folder, please don't put any files into subfolders because they will be ignored.
In this step, you tell GraphStudio how to parse your data file. If your data file is in tabular format, the parser will split each line into a series of tokens. Click on one file from the file list to choose it. The parsing result for the first line of data is shown as a preview table on the right side:
If the parsing is not correct, click on the down arrow in a table column to choose a different option for file format, delimiter, or end of line. The file will immediately be re-parsed when you change a setting. The enclosing character is used to mark the boundaries of a token, overriding the delimiter character. For example, if your delimiter is comma (,), but you have commas in some strings, then you can define either double quotes (") or single quotes (') as the enclosing character to mark the endpoints of your string tokens. It is not necessary for every token to have enclosing characters; the parser will use enclosing characters when it encounters them.
After you click the S3 data source icon, you should see the following window:
Initially, there are no S3 data sources in the system.
A data source is an appropriately configured connection to some remote source of data file(s). When the data file type is switched to S3, you can configure connection to your S3 buckets.
The data source will be created and shown in the Data Source list:
For security reasons, user-created data sources won't be exported when you export solutions. If you import a solution with S3 data sources, you will need to manually create the data sources again (either though GraphStudio Map Data To Graph page or through the GSQL shell).
Data files, after decompression, must be in either csv or parquet format.
TigerGraph supports loading from archived and compressed S3 files directly. Currently supported file extensions includes zip, tar.gz, tgz and tar. GraphStudio detects the file extension and automatically chooses the corresponding file format. If the file is encoded with one of these formats but has a non-standard file extension, you can manually specify the File format.
After clicking the ADD button, an S3 file icon will appear on the working panel:
Then, click the data file icon. A hint will appear over the icon:
Next, click the target vertex type circle or edge type link. A dashed link will appear between the data file and the target vertex or edge type:
A red hint will appear if the target type has not yet received a mapping for its primary id(s).
In this step, you link particular columns of a data file to particular ids or attributes of a vertex type or edge type. First, choose one data mapping from one data file to one vertex or edge type (represented as a dashed green link on the left working panel). When selected, the dashed line becomes orange (active), and the right working panel will show two tables. The left table shows the data file columns along with the first row's tokens as sample data. The right table shows the fields of the target vertex or edge. For a vertex, its fields are primary id and attributes. For an edge, its fields are source vertex, target vertex, and attributes.
In order to a column in the data file to a vertex or edge field, first click the row representing the data column in the left side data file table:
Then, click the row representing the target field in the right side table. A green arrow appears to show the mapping. Repeat as needed to create all the mappings for this table-to-vertex/edge pair. Since many-to-one mapping is allowed, it is not necessary for one table to provide a mapping for every field in the target vertex/edge.
GraphStudio gives you access to both a set of built-in functions and user-defined token functions to preprocess data file tokens before loading them in to the graph. For example, you can concatenate two columns in the data file and load them as an attribute. This section describes how to use these token functions.
GraphStudio currently does not support creating new user-defined functions. If a user-defined function has been added via the GSQL interface, it will be listed here. To use a user-defined token function, you must manually specify the number of input parameters. The C++ code is shown in the right hand side for your reference:
A token function table will be added to the attribute mapping panel. You can drag the tables to rearrange them. Token functions act as an intermediate step in the mapping. Create mappings from the data file table to the token function table, and then from the token function table to the vertex/attribute table The final result looks like below:
Sometimes, a user may need to load a constant value to an id or attribute. Here we show how to do this in GraphStudio.
In the right working panel, double-click on the target id or attribute (in the left column of the right table). In the example below, the attribute "label" has been double-clicked:
This will cause the Load Constant window to pop up. Type in the constant value, and click the Add button to apply the mapping.
After adding the constant value, the attribute's label will change to id/attribute = "(your valid input value)" .
To modify or remove a constant mapping, double-click the id/attribute again. In the Load Constant window, enter the new value, or erase the value if you want to remove the mapping. Click the Add button to apply.
First add the token function. Then double-click on the target input (in the left column of the token function table). In the example below, "Input 0" has been double-clicked.
This will cause the Load Constant window to pop up. Type in the constant value and click the Add button to apply the mapping. After adding the constant value, the input's label will change to Input = "(your input value)" .
The constant value can be modified or removed by double-clicking the label and editing the value in the Load Constant window.
You can add a data filter to a data mapping so that only data records which meet conditions that you specify will be loaded into the graph. This is equivalent to the WHERE clause in a GSQL load statement.
You can add one data filter for each data mapping from a data file to a vertex type or edge type, and the data filter only applies to that one mapping. Consider the following data mapping:
The top section shows one row of sample data from your file, as a handy reference to the file's contents.
The bottom section is where you define your data filter. The data filter will be converted to a GSQL WHERE clause and shown in real time.
A data filter condition is a Boolean expression, which can be a nested set of conditions. GraphStudio evaluates the condition for each line in your input file. If the condition evaluates to true, then the line is loaded.
First, click the Build Data Filter chooser (with default value "None"). A menu will appear, with many Boolean expression templates. Choose one of the options. If you plan to build a nested condition, start with your top level. The first several options are for comparison expressions:
After this are several more options, using operators such as AND, OR, NOT, IN, BETWEEN...AND, IS NUMERIC, and IS EMPTY.
Note that each of these expressions calls for 1, 2, 3, or a list of operands, and the operands themselves can be expressions. When you select an expression, additional choosers will appear below, for you to specify the operand expressions. The operand choices are context-sensitive, but typically they include
a Data Column from the input file
A constant value
If the operator is AND, OR, or NOT, then the operand can be another condition. Thus is how conditions can be nested.
Suppose you are loading friendship edges where the input data fields are (person1, person2, friendship_start_date). You want to load only the records where person1 is Tom and the friendship began on or before 2017-06-10. The data filter looks like the following:
After adding the data filter, the right working panel will look like this:
To remove a data filter, select "None" at the top level dropdown of Build Data Filter section and then click Add. The data filter will be deleted.
Select the data file icon(s), then click the delete button.
Select the dashed green link(s) between data file and mapped vertex/edge type, then click the delete button.
Select the green arrow(s) between data file table and vertex/edge attributes table, then click the delete button.
Select the token function table(s), then click the delete button.
By default, the two windows have equal widths. Click the left button to widen the left working panel, or click the right button to widen the right working panel.
After data has been loaded, the Explore Graph page allows you to search for vertices in a graph, to discover nearby vertices which satisfy conditions of your choice, and to find the paths between vertices.
Below is an example of an exploration result:
The Explore Graph page is vertically divided into three parts, from left to right:
The menu options, from top to bottom, are the following:
Set filters, conditions and other parameters for the selected option from the Inner Navigation Bar.
The exploration result is displayed in this panel.
Adjust the results display, take a snapshot of the display, and modify selected data objects in the result.
The menu buttons, from left to right, are the following:
Open exploration history : Open a previously saved graph exploration result.
Save exploration : Save the current visualization result.
If the graph schema is modified after the exploration result is saved, the result cannot be opened any more.
Save screenshot : Save the current visualization result as a png file.
Change layout : Arrange the vertices according to one of the built-in layout patterns, such as sphere, tree, circle, or force.
Locate vertices in result : Search the exploration result by vertex id or attribute value.
Only show selections : First select one or more objects. Clicking the button will hide all the objects which are not selected.
Hide : First select one or more objects. Clicking the button will hide the selected vertices and edges (or all if none is selected).
Undo : Undo the last change to the visualization result set (that is, changes to which objects are included in the result set).
Redo : Redo the most recent undone change to the visualization result set (that is, changes to which objects are included in the result set).
Database changes (adding or deleting vertices/edges, editing attributes) cannot be undone with the Undo feature. Also, Undo/Redo do not include layout and display change (e.g., positioning of objects and display of attributes).
Add new vertex : Add a new vertex into the visualization result as well as to the graph database .
Add new edge : Add a new edge into the visualization result as well as to the graph database .
Edit attributes : Change the attributes of the selected object in the visualization result as well as the graph database .
Delete selected elements : Delete the selected elements from the visualization result as well as the graph database .
Change settings : Select which attribute values to display with each vertex or edge type. Enable/disable popup display of all attributes when the cursor hovers over a vertex or edge.
The Parameter Panel can be hidden by clicking its corresponding button in the Explore Graph Menu.
Choose vertex type from the Vertex type dropdown list, and enter the vertex id in the Vertex id input box, then click Search button. If there is one vertex that matches the vertex type and id, it will be shown in Graph Exploration panel.
The Configuration section in the Parameter Panel specifies which types of vertices you want to include in your selection. By default, all vertex types are selected. Uncheck some boxes if you want to narrow your selection.
Click ADD, then the filter condition is shown below Company vertex type:
If your graph contains a large number of vertices, searching vertices with attribute filters can be extremely slow. Attributes indexing support in TigerGraph is in our roadmap.
NOTE: If you keep exploring the graph in the Explore Graph page, the previous exploration result won't be automatically erased. Instead, your new exploration result will be merged together with the previous visualized graph. The objects from the most recent exploration action will be selected (highlighted with a thick gray border) to distinguish them from the previous visualized graph.
Shortcut: double-clicking on a vertex will expand to up to 200 neighbors of that vertex.
There may already be some selected vertices from the previous action. A vertex that is selected has a thick gray border around it. The standard click and shift-click behaviors for selecting one or multiple objects applies:
Click on a vertex to select it. Any previously selected objects are unselected.
Shift-click on an unselected object to add it to the selection set.
Shift-click on a selected object to remove it from the selection set.
To unselect all vertices, click on a blank area of the panel.
GraphStudio lets you expand multiple steps from the target vertices, as long as the resulting number of vertices and edges does not exceed the limit for visualization (default limit is 5000 vertices and 10000 edges). The conditions for each expansion step are specified independently.
In the Parameter Panel, set the conditions for each expansion step:
Maximum number of edges include for each vertex. The effect is that vertices which have more neighbors than this limit will not have all their neighbors included in the expansion.
Edge types and the attribute filter for each edge type to include.
Target vertex types and the attribute filter for each vertex type to include.
Initially, the expansion conditions panel for only one expansion step is shown. Click "Add Expansion Step" to add more expansion steps.
Similarly, you can remove expansion steps by clicking the "Remove Expansion Step" button.
The top section of the Parameter Panel asks for your desired starting vertex and destination vertex.
There are two ways to provide this information. Each of the two vertices can be selected by either method.
If you know the ID and vertex type for a vertex, you can choose vertex type from dropdown list and type vertex id in the input box. The vertex does not need to be currently displayed in the Graph Exploration Panel.
If the vertex you want is already displayed in the Graph Exploration Panel, a more convenient way is the following:
Click on the input box.
Click on the desired vertex in the Graph Exploration Panel. Then, GraphStudio will automatically fill in the values for you.
You can click the swap icon (two green arrows) at right to switch the starting vertex and the destination vertex.
GraphStudio provide three types of path searches:
One shortest path: search for and highlight a shortest path between the two vertices.
All shortest paths: search for and highlight all shortest paths between the two vertices.
All paths: search for and highlight all valid paths between the two vertices.
Since path-finding queries may have high computational cost if the graph is very large, a parameter is available to limit the path length.
In addition to the search type and the maximal length, you can also specify the valid vertex types and edge types and their attribute conditions which may be included in the paths.
For each pair of vertices in the vertex set, if there is a shortest path no longer than the maximum path length parameter, include that path in the result.
The final result is the union of all of these shortest paths (one path per vertex pair).
This feature is equivalent to running the "Show One Shortest Path" option for each pair of vertices in the selected set.
Click on a vertex to select it. Use shift-click to select more than one object. Each time you select another vertex, it will be added to the list in the Parameter Panel.
Since this query may have high computational cost if the graph is very large, a parameter is available to limit the path length.
You can also specify the valid vertex types and edge types which may be included in the connections.
Allowing running GSQL queries mixed with other graph exploration functionalities enables better data analysis possibilities since you can refer to your previous exploration result, and keep gaining insights from your data.
After you have a subgraph displayed in the Graph Exploration Panel, you can use the buttons in the Explorer View Menu to customize the display. You can even make modifications to the graph database itself.
The vertices with the matching ID or attributes will be selected:
Database changes (adding or deleting vertices/edges, editing attributes) cannot be undone with the Undo feature. Also, Undo/Redo do not include layout and display changes (e.g., positioning of objects and display of attributes).
If you provide a vertex ID that is already used, GraphStudio will ask you whether you want to overwrite the existing vertex. If you say no, then it will not add or update anything.
If you select an edge type that already exists between the two vertices, GraphStudio will ask if you want to overwrite the existing edge. If you say no, nothing will be added or updated. The current TigerGraph system does not support having multiple edges of the same type between two specific vertices.
When you finish editing, click the Update button to apply the change.
"Delete" permanently removes data from the graph database. Deleted vertices and edges cannot be restored with Undo. To restore them, you must manually add them back.
If you delete a vertex, all of its outgoing and incoming edges will also be deleted.
In the example below, the ID and gender for Person vertices are shown. The ID and the registered_capital attribute for Company vertices are shown.
You can also config the label size of vertices and edges.
Other than the above, you can also config vertex and edge size and color to augment the visualization in settings. It is so important that we will use next independent section to introduce.
Click ADD, and the condition and updated color is shown in the Color settings section:
Similarly, you can add another color config that @PageRankScore between [0.5, 1) will be green. The final Color settings section will look like:
Click the APPLY button, then the different vertices will be rendered as different colors based on their page rank score ranges:
Similarly, you can change color of edges.
By default all vertices are of radius 40, and all edges are of thickness 2. You can config vertex radius and edge thickness according to their attributes or numeric accumulator values of GSQL query result. A classical example is page rank. You can set vertices radius proportional to their page rank values, then the importance of each vertex is visually apparent according to its size.
After click ADD button, the radius expression will be shown in Radius section:
After click APPLY button, the vertices will be rendered in different size according to the expression value:
Similarly, you can config different thickness for the edges.
If you want to cancel the vertex radius or edge thickness configuration, click Edit button in Radius or Thickness section, in the pop up window choose None in the top level expression dropdown list:
Click ADD, then click APPLY. The size will be changed back to uniform.
The size and color can be configured at same time. Here is the effect of setting both color and size for page rank vertices:
The home page of GraphStudio contains links to each of the five steps of solving a business problem: Design Schema, Map Data To Graph, Load Data, Explore Graph, and Write Queries. Users can also navigate to each step from the buttons in the left menu bar. Each of these major steps has its own page. To hide/show the left menu bar, click the top-left menu button:. Clicking the logo on the bannerwill take you back to the home page. You can clickto go to the Admin Portal (read more at Admin Portal UI Guide).
GraphStudio provides two themes: dark theme and light theme. By default it uses dark theme. You can click the User iconand then toggle the Dark theme to be Off to switch to light theme:
Clicking the GraphStudio Information iconwill show the current GraphStudio license status. If a GraphStudio license key has not been installed, the license status will look like the following:
Click thelink on the bottom of the license status to be redirected to Admin Portal configuration page to apply a GraphStudio license key:
Enter the license key in the Update License text box, and click update. Clickat the top-right corner to go back to GraphStudio. If you click the Info iconagain, you should see the updated license. Now you can start to use GraphStudio.
Select one or more data files (holding down the "shift" key to select multiple data files), and click on the "start loading" buttonon the toolbar.
Click on a blank space in the data mapping overview panel to unselect the data sources, and click on the "start/resume loading" buttonon the toolbar. While loading is in progress a green hatched bar will appear over each data file to show its real time progress.
Select one or more data files (holding down the "shift" key to select multiple data files), and click on the "pause loading" buttonon the toolbar. In the Paused state, the progress bar will change to a solid orange color.
Select one or more data files (holding down the "shift" key to select multiple data files), and click on the "start/resume loading" buttonon the toolbar. After resuming, the data file loading will continue from where it was paused:
After loading has been started or paused, you can stop loading from these data files by clicking the "stop load" button. Similar to Start Loading, you can stop loading some or all loading data files. After stopping, the loading status of the data files will become "Stopped":
Click on the "clear graph data" buttonon the toolbar to clear the graph data. This operation will take approximately 1 minute or more, depending on the size of your graph and the hardware.
Tip: If you clear graph data by accident, you can reload the data into the database by clicking on the "start/resume loading" buttonon the toolbar. The data files are still in the filesystem, as long as you do not deliberately delete the data files from the filesystem.
GraphStudio follows TigerGraph user authentication and role-based access control model. Read more in the document .
If user authentication is not enabled, i.e., GSQL tigergraph superuser password hasn't been changed, then no user login is needed for GraphStudio. If user authentication has been enabled, then users must provide credentials (e.g., username and password) to enter GraphStudio. In addition, your system administrator can integrate TigerGraph with other user access management systems (e.g., LDAP, Active Directory, or SAML-based Single Sign On). See the for how to set up LDAP or SSO.
To logout, click the User iconand then the Sign Out icon.
Beginning with Version 1.2, the TigerGraph system can support multiple graphs within one TigerGraph instance. Read more at . If you have access to more than one graph, at the top of the Menu Bar an arrow will appear. Click the arrow to expand the graph list and select a graph.
Click the add vertex type buttonto add a vertex type. The add vertex type window will pop up:
Once you are satisfied with the color, click anywhere outside of the color palette window to set the color. You can also choose an icon for the vertex type by clicking the Select Icon button. Then a Select Icon window will pop up. Select an icon that fits the vertex type semantic best. You can type in keywords to help filter the icons and find the best match faster.
Once you are satisfied with the vertex type settings, click the Add buttonto add the vertex type. A new circle will appear in the working panel. You can drag the circle to any desired position.
Click the add edge type buttonto add an edge type. The working space will enter Add Edge mode and the button color will change to green. Click the button again to exit Add Edge mode.
Once you are satisfied with the edge type settings, click the Add buttonto add the edge type. A new link between the selected source vertex type circle and target vertex type circle will appear in the working panel.
You can edit the vertex types or edge types at any time after you add them. Just click one vertex type circle or one edge link, and then click the edit button(double clicking on the selected vertex/edge will have the same effect), to make the Edit Attributes window pop up:
Once you are satisfied with the change, click the Update button.
You can delete a vertex type or an edge type by first choosing the vertex type circles or edge type links, then clicking the delete button. In order to delete multiple vertex types and edge types, hold down the "Shift" key while you click, to select multiple items.
You can redo and undo your changes by clicking the two buttons:. The whole history since the time you entered Design Schema page is recorded.
Once you are satisfied with the graph schema, click the publish schema buttonto publish the schema to the TigerGraph system. If you are publishing a brand new schema, a progress bar will show:
Finally, when you click publish schema button, a pop up window will summarize your changes to the schema. The vertex and edge types that will be removed are highlighted. Make sure you confirm the changes before continue:
If you select File, no more configuration is needed. Skip the sections for external sources and go to .
If you select S3, then read the section .
Local File System -
AWS S3 -
In this step, you inform GraphStudio about your data files. A data file is a file containing structured data to be loaded into the graph, creating vertex and/or edge instances. The first step for data mapping is to specify your data files. Click the Add Data File buttonto add data files. The Add Data File window will pop up:
Click the Upload File button . A file selection window will appear. Choose the data file you want to use. The file will be uploaded to the server data folder:
Once you are satisfied with the file parsing configuration, click the add buttonto add the data file into left working panel. The data file will be shown as a file icon on the working panel:
Once you think a file is no longer needed, you can remove it from server by clicking the delete buttonto the left of each file. Please note that you also need to manually remove data mapping using this file as data file, otherwise when you load data later, a "file not found" error will be triggered.
After adding all your data files, continue with
Click the Add new data source button , then the new S3 data source window will pop up. Give a name to the data source, and provide the access key id and secret access key to connect to S3. Then click the ADD button:
Click the data source to list all the buckets the credentials can access, and click the Expand icon to see all the buckets or folders within the buckets. The file hierarchy will be shown as a tree. Choose the file you want to add, and change the parsing options if necessary. (See )
After adding all your s3 data files, continue with
In this step, you link (map) a data file to a target vertex type or edge type. The mapping can be many-to-many, which means one data file can map to multiple vertex and edge types, and multiple data files can map to the same vertex or edge type. Click the map data file to vertex or edge buttonto enter map data file to vertex or edge mode. When you are finished mapping data files, click the button again to exit this mode.
First click the add token function button. The Add Token Function window will pop up. Click the down arrow to see the list of available token functions and select one. For some functions, you may also specify the number of input parameters. (Most token functions have a fixed number of input parameters; gsql_concat can accept any positive number of inputs). Click Add.
If the data file columns and the vertex/edge attributes have very similar names (only capitalization and hyphen differences), you can click the auto mapping button. All similar columns will be mapped automatically.
By default, there is no data filter. Click the Data Filter buttonto start creating a data filter. The Add Data Filter window will appear. The window contains three parts:
The middle sections shows what the data filter looks like when it is converted a to GSQL WHERE clause. For more details, see the WHERE Clause section in the
Hovering the mouse over the data filter indicatorwill make the data filter condition appear. If you want to modify the data filter, click the Data Filter buttonor double-click the data filter indicator​. The Add Data Filter panel will appear.
In the Map Data To Graph page, you can delete anything that you added. Choose what you want to delete, then click the delete button. Press the "Shift" key to select multiple icons you want to delete. Note that you cannot delete vertex or edge types in this page.
You can undo or redo changes by clicking the Back or Forward buttons, respectively:. The whole history since the time you entered the Map Data To Graph page is recorded.
Once you are satisfied with the data loading procedure, click the publish schema buttonto publish the data loading procedure to the TigerGraph system. It takes about 2 to 3 seconds for publishing each data file mapping.
The following three buttons allow you to select the relative sizing of the left and right working panels:.
The first button in the Explore Graph Menu is the "search vertices" option. This option lets you select an initial set of vertices for your exploration. It is also the default option when you first enter the Explore Graph page. Clicking the button again will hide the Parameter Panel to increase space for the Graph Exploration Panel.
If you don't have a particular vertex ID in mind, you can have GraphStudio pick some vertices for you. In the Parameter Panel, enter a number of vertices to pick, and click on Pick vertices button. The explorer will pick this number of vertices for each vertex type included in your search.
You can control vertex search in finer granularity by creating attribute filters. Click the filter buttonto the right of any vertex type. In the pop up window, you can create a condition involving attributes of the vertex type. The user experience is same as creating data filters when you do data mapping. Here is an example attribute filter for searching Company vertices with registered_capital >= 50,000:
Click Pick vertices button​ again, TigerGraph will search for up to 5 Company vertices with a registered_capital >= 50,000.
The second button in the Explore Graph Menu is the "Expand from vertices" option. "Expand" in this context means find 1-step or multi-step neighbors of the selected vertices. Clicking the button again will hide the Parameter Panel to increase space for the Graph Exploration Panel. To expand from vertices, you need to have at least one selected vertex in the Graph Exploration Panel. If no vertices are visible, please refer to the previous section "Search Vertices in Graph" to search for some vertices.
After setting the conditions for each expansion step, click on the "Expand" buttonto perform the expansion. The Graph Exploration Panel will be updated to include the expansion result. The expansion starting vertices will be highlighted with a white border. Here is a sample two-step expansion starting from 2 vertices:
The third button in the Explore Graph Menu is the "Find paths" option. This option finds paths between two vertices with your specified conditions. Clicking the button again will hide the Parameter Panel.
After selecting the endpoint vertices and setting the search conditions, click on the "Find Paths" buttonto start the search.
The fourth button in the Explore Graph Menu is the "Find connections" option. Given a set of starting vertices, this feature finds a "connection community" which is defined as follows:
After selecting the vertices and setting the search conditions, click on the "Find Connection Paths" buttonto start the search.
If you have written and installed some GSQL queries (see more at ), you can run the queries mixed with the graph exploration functionalities mentioned above.
Click the fifth button in the Explore Graph Menu, which is the "Run queries" option​. In the dropdown list, choose the query you want to run. Input the parameters and click Run query button. The query execution result subgraph will be merged with previous graph exploration result and highlighted:
Click the Change Layout buttonto select one of the built-in layout styles for systematic arrangement of the vertices. The Change Layout popup menu shows a sample of each layout style, for a dummy graph.
The Locate Vertex In Result featuresearches for and then zooms in on vertices which match the given value for ID and/or attribute. For example, if you type "Mary" in the Locate Vertices in Result popup window, and have both of the checkboxes selected, then this feature will look for any vertices where "Mary" is an exact match for either the ID or any of the attribute values. Those vertices will be selected (and all other objects will be unselected). The display will zoom in to focus on the selected objects.
Click the Show Selections buttonto hide all the vertices and edges which are not currently selected. However, if the two endpoints of an edge are selected, the edge will be selected as well. Also, if nothing is selected, nothing will be hidden.
Click the Hide buttonto hide the currently selected vertices and edges. If nothing is selected, all vertices and edges in the Graph Exploration Panel will be hidden.
The Explore Graph page records the whole history of the current session's changes to the visualization result set. Click the Undo and the Redo buttons to go back or forward in the history.
Click the Add New Vertex buttonto add a new vertex to the graph database. The Add New Vertex window will pop up. Choose a vertex type and then fill in values for the ID and the attributes. Click ADD and the vertex will be inserted into the TigerGraph database. It will also be shown in the Graph Exploration Panel.
Click the Add New Edge buttonto add a new edge to the graph database. Next, click the source vertex of the edge in the Graph Exploration Panel, and then click the target vertex of the edge. Then the Add New Edge panel will pop up. Choose the edge type from the dropdown menu. Only types that match the two vertices you selected are shown. (It is possible that there are no eligible edge types). Fill in values for attributes and click ADD. Your new edge will be inserted into the TigerGraph database. It will also be shown in the Graph Exploration Panel.
To edit the attributes of one vertex or edge, select one object and then click the Edit Attributes button. The edit attributes panel will pop up.
To delete vertices or edges, select the objects you want to delete, and click the Delete Selected Elements button.
When you find something interesting during exploration and want to save the result as a picture, you can click the Save Exploration button. In the popup window, you can give the result a file name and an optional description, then click Save:
In the future, you can open a previously saved exploration result by clicking the Open Exploration History buttonand choose one result from the list:
When you find something interesting during exploration and want to save the result as a picture, you can click the Save Screenshot button. The exploration result will be saved as a PNG picture to your local file system.
To change graph exploration settings by clicking Settings button. Currently you can select what attributes to show for each vertex type and edge type, and set whether to show an object's detailed information in a popup tooltip when the cursor hovers over it. Click Apply and the new settings will take effect.
By default each vertex and edge is rendered as the color you selected in Schema Design page. However, if you want to emphasize some vertices and edges in your visualization result, you can config a different color for them by creating a set of conditions, and assign a different color for each condition. Then vertices and edges satisfying the conditions will be rendered as the newly assigned color. In the Color section of Settings panel, first choose the vertex or edge type you want to set colors, then click the add button. A new color config entry appears:
Click the Edit color config button, in the pop up window choose red color, and build a condition specifying @PageRankScore >= 1.0:
If you want to cancel one color configuration, just click the remove buttonto the right side of that configuration.
First choose the vertex type you want to config its radius, then click the Edit buttonin Radius section. In the popup window you can create the radius expression:
Browser
Chrome
Safari
Firefox
Opera
Supported version
54.0+
11.1+
59.0+
52.0+
superuser | admin | designer | querywriter | queryreader | observer |
Create a new graph schema | YES |
Modify a graph schema | YES | GSQL - yes; GraphStudio - not yet supported | GSQL - yes; GraphStudio - not yet supported |
View a graph schema | YES | YES | YES | YES | YES | YES |
Create a data mapping | YES | YES | YES |
View a data mapping | YES | YES | YES | YES | YES | YES |
Load data | YES | YES | YES | YES | YES |
Explore a graph | YES | YES | YES | YES | YES |
Write a query | YES | YES | YES | YES |
Run a query | YES | YES | YES | YES | YES |
menu option | functionality |
Search vertices: select specific vertices with conditions. |
Expand from vertices: find neighborhood of the specified vertices. |
Find paths: find paths between the selected source vertex and target vertex. |
Find connections: find connecting paths between a set of vertices. |
Run queries: run installed GSQL queries. |
On the Write Queries page, you can design and run custom queries with TigerGraph's powerful graph query language – GSQL.
The Write Query page is horizontally divided into two parts:
Query Editing Panel
Result, Log and Visualization Panel
The Query Editing panel is divided into two subpanels: the left subpanel is used to select a query to edit, and the right, larger subpanel displays the selected query for editing. Here you can edit, save, delete, install and run the query. The query editor features syntax highlighting customized for the GSQL language. Also, the query editor performs real-time semantic checking.
Above the query editing pane is a toolbar, with the following buttons, from left to right:
Expand/Collapse : Expand or collapse the Query Editing panel to or from full page mode. The icon changes depending on whether the panel is currently expanded or collapsed.
Save : Save the current query draft.
Install : Install the query into the database.
Run : Run the installed query.
Delete : Delete the selected query.
Show query endpoint: Show the RESTFul endpoint to execute the query. Only installed queries can see their RESTFul endpoints.
A query draft will be created with a template:
To edit an existing query, click on the query name in the list in the left sub panel:
A query has to be installed before you can run it.
The query will be executed, and the results will be shown in the Result Panel.
Click INSTALL button, then the listed queries will be installed:
The Result panel shows the result of the last run query. Each query generates up to three types of result: visualized graph, JSON text, or log messages. On the left is a toolbar with buttons for changing the the panel size or for switching to a different type of result. The buttons, from top to bottom, are the following:
Viewing graph schema makes it more convenient for developers to refer to the schema topology logic and easier to write correct GSQL queries.
If the query execution result contains a graph structure, the result will be visualized in this panel as a graph. The panel is the same as the Explore Graph panel. Please refer to the documentation for the Explore Graph panel. The only difference is that each time you run a query, the previous result will be erased. In Explore Graph the results are added incrementally.
You can switch to the JSON Result panel to see the result in JSON format.
If there is no graph structure in the result, the result will be displayed in this panel as a JSON object.
You can learn about the JSON format in the GSQL Language documentation , and integrate it with your applications. In this fashion, the TigerGraph system can serve as a backend or embedded graph data service.
If a query ran successfully, the Query Log message will be "query ran successfully" or something similar. If there was anything wrong when executing your query, such as invalid parameters or runtime errors, an error message will be shown in the Query Log panel:
If you expand the Query Editing panel, it looks like this:
If you expand the Result panel, it looks like this:
v2.2, January 2019
U.S. Pat. No. 9953106, 9977837, 10120956. Patents pending.
This TigerGraph software program uses some third-party software components that are licensed under their own terms.
This list of software components uses abbreviations to refer to common licenses, e.g., "MIT". A dictionary for these abbreviations is provided at the end of this document.
The following table explains the license abbreviations used in the list of TigerGraph Third Party Software. A link is provided to an official source for each license. The copy of each license is also available from TigerGraph and is included in the doc/legal folder of the product package.
These two features can be found in the GraphStudio Home page. You can return to the Home page by clicking "Home" the Menu Bar on the left or clicking the "GraphStudio" logo at the top.
Click on the "Export Current Solution" link to export the whole solution and download it as a tarball, including the schema, the loading jobs and the queries.
ATTENTION:
The graph data and data files will not be exported.
If a query has been modified since it was last installed, GraphStudio will export the modified draft instead of the version that have been installed in the TigerGraph engine.
Click on the "Import an Existing Solution" will upload a previously exported tarball of a solution.
In order to optimize the time required for Import, the imported queries will not be installed but saved as drafts. You need to install them manually.
For security reasons, user-created data sources won't be exported. If you import a solution with S3 data sources, you will need to manually create the data sources again (either though GraphStudio Map Data To Graph page or through GSQL shell). In GraphStudio, you can delete the previously created data sources and create new data sources to avoid duplicate data sources and ensure proper data loading.
To create a new query, simply click on the "New GSQL Query" buttonat the bottom-right corner of the left subpanel, and type in the name of the new query in the popup window:
Once you made some changes to the query code and want to save it as a query draft, click on the "save" buttonin the toolbar.
If you saved a query, the "install query" buttonwill be enabled. Click it to install the query. The installation process may take about 1 minute:
To run the query, click on the "run" buttonin the toolbar. If the query has no parameters, it will run directly and the result will be shown in the Result panel.
If the query requires parameters, the Enter Query Parameters panel will appear. Enter your parameter values and then click the "Run Query" buttonat the bottom of the panel. If there are several parameters, you might need to scroll the panel to the bottom to find the Run Query button.
Choose the query you want to delete and click on the "delete" button. The query will be deleted permanently.
After finishing writing the GSQL queries and installing the queries, you can access the queries via REST endpoints. By clicking the "show query endpoint" button, you can see the format of the endpoint to access this query, so that you can integrate the query with your applications.
If you want to install all queries that you haven't installed yet, you can click "Install all queries" buttonin GSQL Queries list. After some verification time, a pop up window listing all queries to be installed will show:
If you just want to focus on developing your query, or want to have more space to view your result, click the Expand button in either the Query Editing panel or the Result panel.
When the panel is expanded, the Expand button becomes the Collapse button. Clicking it will return the display to the split panel view.
License Abbreviation
License Detail
AGPL3
GNU Affero General Public License version 3
Apache2
Apache License version 2.0
BOOST
Boost Software License
BSD2
2-Clause BSD (Berkeley Standard Distribution) License
BSD3
3-Clause BSD (Berkeley Standard Distribution) License
CC0
Creative Commons CC0 1.0 Universal
CURL
Curl License
FCGI
FastCGI2 License
https://github.com/FastCGI-Archives/fcgi2/blob/master/LICENSE.TERMS
GPL2
GNU General Public License version 2.0
GPL3
GNU General Public License version 3.0
ISC
Internet Systems Consortium
https://www.isc.org/downloads/software-support-policy/isc-license/
JSON
JSON License
LGPL3
GNU Lesser General Public License version 3.0
MIT
MIT (Massachusetts Institute of Technology) License
MPICH
MPICH License
OPENSSL
OpenSSL License
Python2
Python 2.7 License
SLI_OFL1.1
SIL Open Font License version 1.1
ZLIB
zlib License
menu option
functionality
Expand/Collapse: Expand or collapse the Result panel.
View Schema: Show the graph schema.
Visual Result: Show the visual result of the last run query.
JSON Result: Show the raw text result in JSON format of the last run query.
Query Log: Show the log for the last run query.
Third Party Component
License
Copyright (c) 2018 Data Visualization Software Lab
https://zoomcharts.com/en/legal/
Licensed under OEM license
angular/animations
angular/cdk
angular/common
angular/compiler
angular/core
angular/flex-layout
angular/forms
angular/http
angular/material
angular/material-moment-adapter
angular/platform-browser
angular/platform-browser-dynamic
angular/router
angular/zone.js
aws-sdk
Copyright (c) 2012-2017 Amazon.com, Inc. or its affiliates
https://github.com/aws/aws-sdk-js
Licensed under Apache2
cgjs/fs
chalk
chart.js
codemirror
Copyright (c) 2017 Marijn Haverbeke marijnh@gmail.com and others
https://github.com/codemirror/CodeMirror
Licensed under MIT
crypto
CssColorParser.js
d3.js
echarts 3.4.0
hammerjs
jinder/path
Copyright (c) 2015 Joyent, Inc. and other Node contributors.
https://github.com/jinder/path
Licensed under MIT
js-yaml
jsbn
jshttp/cookie
Copyright (c) 2012-2014 Roman Shtylman, 2015 Douglas Christopher Wilson
https://github.com/jshttp/cookie
Licensed under MIT
jsrsasign
koa-body
Copyright (c) 2014 Charlike Mike Reagent and Daryl Lau
https://github.com/dlau/koa-body
Licensed under MIT
koa-bodyparser
Copyright (c) 2014 YiYu He heyiyu.deadhorse@gmail.com
https://github.com/koajs/bodyparser
Licensed under MIT
koa-multer
Copyright (c) 2014 Hage Yaapa, 2015 Fangdun Cai
https://github.com/koa-modules/multer
Licensed under MIT
koa-router
koa-send
koa-static
koajs
Leaflet.js
Copyright (c) 2010-2018 Vladimir Agafonkin, 2010-2011, CloudMade
https://github.com/Leaflet/Leaflet/blob/master/LICENSE
Licensed under BSD2
lodash
Copyright (c) 2017 JS Foundation and other contributors
https://github.com/lodash/lodash
Licensed under MIT
material-design-icons
Copyright (c) 2016 Material Design Authors
https://github.com/google/material-design-icons
Licensed under Apache2
moment
Copyright (c) 2016 JS Foundation and other contributors
https://github.com/moment/moment
Licensed under MIT
moment timezone
Copyright (c) 2016 JS Foundation and other contributors
https://github.com/moment/moment-timezone/
Licensed under MIT
mysqljs
ng2-nouislider
ngx-image-cropper
ngx-color-picker
node-ip
node-jsonwebtoken
nouislider
randomcolor
reactivex/rxjs
Copyright (c) 2015-2018 Google, Inc., Netflix, Inc., Microsoft Corp. and contributors
https://github.com/reactivex/rxjs
Licensed under Apache2
request
resumablejs
Copyright (c) 2011 Steffen Tiedemann Christensen
https://github.com/23/resumable.js
Licensed under MIT
roboto-fontface
Copyright (c) 2013 Christian Hoffmeister
https://github.com/choffmeister/roboto-fontface-bower
Licensed under Apache2
roboto-mono-webfont
Copyright (c) 2016 Christian Robertson
https://github.com/Dilatorily/roboto-mono
Licensed under MIT AND Apache2
sqlite3
websockets/ws
winston-daily-rotate-file
Copyright (c) 2015 Charlie Robbins
https://github.com/winstonjs/winston-daily-rotate-file
Licensed under MIT
winstonjs
zloirock/core-js
Zoomcharts