Composite graphical interface with shareable data-objects
Aspects of the present disclosure involve receiving references to application data of applications hosted by the servers. The application data includes information defining an interface of the application (e.g., a set of interface elements), and data types associated with the application. As a part of the process for generating a composite graphical user interface (GUI), the composite interface system receives references to application data of one or more applications at various memory locations (e.g., at both local and third-party servers). In this way, the composite interface system accesses the application data of any referenced application in order to retrieve application data to configure a composite GUI which includes interface elements of each of the referenced application.
1. A system comprising:
one or more processors of a machine; and
a memory storing instructions that, when executed by at least one processor among the processors, causes the system to perform operations comprising:
receiving a reference to application data of an application, wherein the application data includes an interface of the application, a data type associated with the application, an application identifier and a data object, the data object comprising metadata;
instructing a device communicatively coupled to the machine to generate a composite graphical user interface, based on the application data;
receiving a subscription request from a subscriber device, the subscription request including at least the application identifier and a user identifier of a subscribing user;
creating a first artifact referencing the data object, the first artifact comprising at least the application identifier and the metadata;
receiving a selection of the first artifact via the composite graphical user interface;
generating a project based on the selection, the project comprising a set of artifacts including at least the first artifact;
distributing the project to the subscriber device based on the subscription request; and
causing display of the project at the subscriber device.
2. The system of claim 1 , wherein the interface of the application comprises a set of interface elements, and the instructions cause the system to perform operations further comprising:
receiving a selection of a data object of the data type; and
causing display of the set of interface elements of the application within the composite graphical user interface.
3. The system of claim 1 , wherein the application data is first application data, the reference is a first reference, the application is a first application, the interface is a first interface, the data type is a first data type, the graphical element is a first graphical element, and the instructions cause the system to perform operations further comprising:
receiving a second reference to second application data of a second application, the second application data including a second interface of the second application, and a second data type associated with the second application, the second interface including a second set of interface elements;
the sidebar of the composite graphical user interface including the first graphical element associated with the first application, and a second graphical element associated with the second application;
receiving a selection of a new data object of the second data type; and
causing display of the second set of interface elements of the second application within the composite graphical user interface.
4. The system of claim 1 , wherein the application data includes a data object, the data object including metadata, and the instructions cause the system to perform operations further comprising:
creating a first artifact referencing the data object, the first artifact comprising at least the application identifier and the metadata; and
causing display of the first artifact among a set of artifacts within the composite graphical user interface.
5. The system of claim 4 , wherein the composite graphical user interface includes an artifact filter, the artifact filter including a set of artifact attributes, and the instructions cause the system to perform operations further comprising:
receiving a selection of an artifact attribute from among the set of artifact attributes; and
sorting the set of artifacts in the graphical user interface based on the selection of the artifact attribute.
6. The system of claim 4 , wherein the composite graphical user interface includes a search field, and the instructions cause the system to perform operations further comprising:
receiving a search request;
removing at least some artifacts from the set of artifacts within the graphical user interface, based on the search request;
receiving a selection of a first artifact from among the set of artifacts remaining; and
retrieving a first data object associated with the first artifact based on the first artifact.
7. The system of claim 4 , wherein the instructions cause the system to perform operations further comprising:
receiving a selection of the artifact via the composite graphical user interface;
invoking the application in response to receiving the selection of the artifact; and
presenting the data object within the composite graphical user interface, based on the artifact.
8. The system of claim 4 , wherein the client device includes an associated user identifier, the artifact includes user access permissions, and the instructions cause the system to perform operations further comprising:
receiving a selection of the artifact from the client device;
querying a permission system to determine a user permission associated with the client device based on the user identifier and the user access permissions; and
presenting a portion of the content based on the user permission.
9. The system of claim 1 , wherein the composite graphical user interface includes:
a sidebar within a portion of the composite graphical user interface, the sidebar including a graphical elements associated with the application; and
a presentation of the set of interface elements of the application.
10. The system of claim 1 , wherein client device includes an associated user identifier, and the instructions cause the system to perform operations further comprising:
assigning the first composite graphical user interface to the user identifier associated with the client device, based on an assignment request;
receiving a login request from the client device, the login request including the user identifier; and
presenting the composite graphical user interface at the client device.
11. A non-transitory machine-readable storage medium comprising instructions that, when executed by one or more processors of a machine, cause the machine to perform operations comprising:
receiving a reference to application data of an application, wherein the application data includes an interface of the application, a data type associated with the application, an application identifier, and a data object, the data object comprising metadata;
instructing a client device to generate a composite graphical user interface, based on the application data;
receiving a subscription request from a subscriber device, the subscription request including at least the application identifier and a user identifier of a subscribing user;
creating a first artifact referencing the data object, the first artifact comprising at least the application identifier and the metadata;
receiving a selection of the first artifact via the composite graphical user interface;
generating a project based on the selection, the project comprising a set of artifacts including at least the first artifact;
distributing the project to the subscriber device based on the subscription request; and
causing display of the project at the subscriber device.
12. The non-transitory machine-readable storage medium of claim 11 , wherein the interface comprises a set of interface elements, and the instructions further comprise:
receiving a selection of a data object of the data type; and
causing display of the set of interface elements of the application within the composite graphical user interface.
13. The non-transitory machine-readable storage medium of claim 11 , wherein the application data is first application data, the reference is a first reference, the application is a first application, the interface is a first interface, the data type is a first data type, the graphical element is a first graphical element, and the instructions further comprise:
receiving a second reference to second application data of a second application, the second application data including a second interface of the second application, and a second data type associated with the second application, the second interface including a second set of interface elements;
the sidebar of the composite graphical user interface including the first graphical element associated with the first application, and a second graphical element associated with the second application;
receiving a selection of a new data object of the second data type; and
causing display of the second set of interface elements of the second application within the composite graphical user interface.
14. The non-transitory machine-readable storage medium of claim 11 , wherein the application data includes a data object, the data object including metadata, and the instructions further comprise:
creating a first artifact referencing the data object, the first artifact comprising at least the application identifier and the metadata; and
causing display of the first artifact among a set of artifacts within the composite graphical user interface.
15. The non-transitory machine-readable storage medium of claim 14 , wherein the composite graphical user interface includes an artifact filter, the artifact filter including a set of artifact attributes, and the instructions further comprise:
receiving a selection of an artifact attribute from among the set of artifact attributes; and
sorting the set of artifacts in the graphical user interface based on the selection of the artifact attribute.
16. A method comprising:
receiving a reference to application data of an application, wherein the application data includes an interface of the application, a data type associated with the application, an application identifier and a data object, the data object comprising metadata;
instructing a device communicatively coupled to the machine to generate a composite graphical user interface, based on the application data; and
receiving a subscription request from a subscriber device, the subscription request including at least the application identifier and a user identifier of a subscribing user;
creating a first artifact referencing the data object, the first artifact comprising at least the application identifier and the metadata;
receiving a selection of the first artifact via the composite graphical user interface;
generating a project based on the selection, the project comprising a set of artifacts including at least the first artifact;
distributing the project to the subscriber device based on the subscription request; and
causing display of the project at the subscriber device.
17. The method of claim 16 , wherein the interface comprises a set of interface elements further comprising:
receiving a selection of a data object of the data type; and
causing display of the set of interface elements of the application within the composite graphical user interface.
18. The method of claim 16 , wherein the application data is first application data, the reference is a first reference, the application is a first application, the interface is a first interface, the data type is a first data type, the graphical element is a first graphical element, and further comprising:
receiving a second reference to second application data of a second application, the second application data including a second interface of the second application, and a second data type associated with the second application, the second interface including a second set of interface elements;
the sidebar of the composite graphical user interface including the first graphical element associated with the first application, and a second graphical element associated with the second application;
receiving a selection of a new data object of the second data type; and
causing display of the second set of interface elements of the second application within the composite graphical user interface.