IP Library Granted Patent US 10,606,576
Granted Patent B1
US 10,606,576 · App. 16/264,051 · Granted Mar 31, 2020

Developer experience for live applications in a cloud collaboration platform

Inventors: Julie Tung (Los Altos, CA); Rajeev Nayak (San Francisco, CA); Kevin Gibbs (San Francisco, CA); Bret Taylor (Lafayette, CA); Yang Su (San Francisco, CA); Nate Botwick (San Francisco, CA); Diana Berlin (San Francisco, CA); Pedram Razavi (San Francisco, CA); Scott Goodfriend (Berkeley, CA); Nikrad Mahdi (San Francisco, CA); Andy Chung (Berkeley, CA); Drew Hamlin (San Francisco, CA); Patrick Linehan (San Francisco, CA); Sophia Westwood (San Francisco, CA); Lindsey Simon (San Francisco, CA); Shrey Banga (San Francisco, CA); Dave Engelberg (San Francisco, CA); Dan Willhite (San Francisco, CA)
Assignee: salesforce.com, inc.
G06F8/60G06F8/34G06F8/36G06F8/71G06F9/451G06F9/5072G06F9/5077G06F21/31G06F21/563
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,606,576
App. No.
16/264,051
Filed
Jan 31, 2019
Granted
Mar 31, 2020
Kind
B1
Art Unit
2191
USPC
717/121
Abstract

Disclosed herein are system, method, and computer program product embodiments for providing a developer console to customizable live applications in a cloud collaboration platform. The developer console may support the software development lifecycle for third-party live applications deployed in the cloud collaboration platform in a myriad of fashions. The developer console may vet live applications prior to deployment, provide release and version control mechanisms, and offer a range of configuration options to control third-party live applications. The developer console may provide an initial bundle to developers that include supporting functions and modules enabling the developer to run a development environment on a local server as a local platform. A developer console may allow developers to configure access to third-party data sources that may be harnessed by a live application.

Claims (82)

1. A computer-implemented method, comprising:

displaying, by a cloud collaboration platform, a developer console comprising deployed live applications for an account in the cloud collaboration platform,

wherein the developer console is available via a web browser;

receiving, by the cloud collaboration platform, a request to create a live application via the developer console;

creating, by the cloud collaboration platform, the live application and an application identifier associated with the live application;

building, by the cloud collaboration platform, an initial bundle comprising a template application and tools for running a development environment on a local server based on the application identifier,

wherein the template application comprises a default code base for running the live application in the development environment, and

wherein the development environment comprises components to run a local platform on the local server; and

providing, by the cloud collaboration platform, the initial bundle for deployment on the local server,

wherein the displaying, receiving, creating, building, and providing are performed by one or more computers.

2. The method of claim 1 , further comprising:

receiving, by the cloud collaboration platform, a request to deploy the live application in the developer console;

adding, by the cloud collaboration platform, the live application to the deployed live applications; and

redisplaying, by the cloud collaboration platform, the deployed live applications for the account in the developer console.

3. The method of claim 1 , further comprising:

receiving, by the cloud collaboration platform, an updated bundle from a developer via the developer console; and

deploying, by the cloud collaboration platform, the updated bundle as the live application in the cloud collaboration platform.

4. The method of claim 1 , further comprising:

receiving, by the cloud collaboration platform, an authorization configuration in the developer console, wherein the authorization configuration specifies token-based authentication parameters;

building, by the cloud collaboration platform, an exception for an external resource for the live application; and

adding, by the cloud collaboration platform, the exception to a content-security policy applied to the live application.

5. The method of claim 1 , further comprising:

receiving, by the cloud collaboration platform, an authorization configuration in the developer console, wherein the authorization configuration specifies a login URL;

building, by the cloud collaboration platform, an exception for an external resource for the live application; and

adding, by the cloud collaboration platform, the exception to a content-security policy applied to the live application.

6. The method of claim 1 , further comprising:

tracking, by the cloud collaboration platform, releases for the live application, wherein a release in the releases comprises a version number and a code base; and

displaying, by the cloud collaboration platform, the releases in the developer console.

7. The method of claim 3 , further comprising:

performing, by the cloud collaboration platform, an automated security evaluation of the updated bundle to ensure compliance with security standards.

8. A system, comprising:

a memory; and

at least one processor coupled to the memory and configured to:

display a developer console comprising deployed live applications for an account in a cloud collaboration platform, wherein the developer console is available via a web browser;

receive a request to create a live application via the developer console;

create the live application and an application identifier associated with the live application;

build an initial bundle comprising a template application and tools for running a development environment on a local server based on the application identifier, wherein the template application comprises a default code base for running the live application in the development environment, and wherein the development environment comprises components to run a local platform on the local server; and

provide the initial bundle for deployment on the local server.

9. The system of claim 8 , the at least one processor further configured to:

receive a request to deploy the live application in the developer console;

add the live application to the deployed live applications; and

redisplay the deployed live applications for the account in the developer console.

10. The system of claim 8 , the at least one processor further configured to:

receive an updated bundle from a developer via the developer console; and

deploy the updated bundle as the live application in the cloud collaboration platform.

11. The system of claim 8 , the at least one processor further configured to:

receive an authorization configuration in the developer console, wherein the authorization configuration specifies token-based authentication parameters;

build an exception for an external resource for the live application; and

add the exception to a content-security policy applied to the live application.

12. The system of claim 8 , the at least one processor further configured to:

receive an authorization configuration in the developer console, wherein the authorization configuration specifies a login URL;

build an exception for an external resource for the live application; and

add the exception to a content-security policy applied to the live application.

13. The system of claim 8 , the at least one processor further configured to:

track releases for the live application, wherein a release in the releases comprises a version number and a code base; and

display the releases in the developer console.

14. The system of claim 10 , the at least one processor further configured to:

performing an automated security evaluation of the updated bundle to ensure compliance with security standards.

15. A non-transitory computer-readable device having instructions stored thereon that, when executed by at least one computing device, causes the at least one computing device to perform operations comprising:

displaying a developer console comprising deployed live applications for an account in a cloud collaboration platform, wherein the developer console is available via a web browser;

receiving a request to create a live application via the developer console;

creating the live application and an application identifier associated with the live application;

building an initial bundle comprising a template application and tools for running a development environment on a local server based on the application identifier, wherein the template application comprises a default code base for running the live application in the development environment, and wherein the development environment comprises components to run a local platform on the local server; and

providing the initial bundle for deployment on the local server.

16. The non-transitory computer-readable device of claim 15 , the operations further comprising:

receiving a request to deploy the live application in the developer console;

adding the live application to the deployed live applications; and

redisplaying the deployed live applications for the account in the developer console.

17. The non-transitory computer-readable device of claim 15 , the operations further comprising:

receiving an updated bundle from a developer via the developer console; and

deploying the updated bundle as the live application in the cloud collaboration platform.

18. The non-transitory computer-readable device of claim 15 , the operations further comprising:

receiving an authorization configuration in the developer console, wherein the authorization configuration specifies token-based authentication parameters;

building an exception for an external resource for the live application; and

adding the exception to a content-security policy applied to the live application.

19. The non-transitory computer-readable device of claim 15 , the operations further comprising:

receiving an authorization configuration in the developer console, wherein the authorization configuration specifies a login URL;

building an exception for an external resource for the live application; and

adding the exception to a content-security policy applied to the live application.

20. The non-transitory computer-readable device of claim 15 , the operations further comprising:

tracking releases for the live application, wherein a release in the releases comprises a version number and a code base; and

displaying the releases in the developer console.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 8, 2019
From: TUNG, JULIE; NAYAK, RAJEEV; GIBBS, KEVIN; TAYLOR, BRET; SU, YANG; BOTWICK, NATE; BERLIN, DIANA; RAZAVI, PEDRAM; GOODFRIEND, SCOTT; MAHDI, NIKRAD; CHUNG, ANDY; HAMLIN, DREW; LINEHAN, PATRICK; WESTWOOD, SOPHIA; SIMON, LINDSEY; BANGA, SHREY; ENGELBERG, DAVE; WILLHITE, DAN
To: SALESFORCE.COM,INC.
Reel/Frame 049689/0203 →
Continuity (2)
Provisional Application 62751074 · Oct 26, 2018
Provisional Application 62751058 · Oct 26, 2018
Cited By (14)
US 1,091,615 US 1,103,179 US 1,128,727 US 12,210,735 US 12,231,409 US 12,236,188 US 12,242,834 US 12,244,654 US 12,314,337 US 12,411,697 US 12,429,995 US 12,449,793 US 12,474,893 US 12,524,213