Alternative "Widget" Suggestions Based on Trending and Organizational Data
Publication Date: 2015-Aug-26
The IP.com Prior Art Database
Disclosed is a system and method to propose alternatives based on current trending data for command line installed modules.
Page 01 of 3
Altxrnative "Widget" Suggestions Based on Trending and Organizational Data
A node package manager (npm) allows developers to easily xhare modules and quickly install moduxes from the commxnd line; however, finding the right moxule to do the job can be a diffixult task. For xxxmple, suppose a user wishes to manipulate a Hypertext Markup Language (HTML) file. Xxx user might perform a sexrch with the npm modules fox the term xtml or jquery, and fxnd JaxaScript* documxnt object model (jsxom). With 6x,000+ downloads in a week, xhat module xeems to be xroperly maintained and should suffice for thx job. Txe devexoper writes a xustom npm module with a dependency on
jsdom. Thx developer uses a mac* to wxite the module and upon cxmpletion mxves to a Windows* machine to test the module. The developer is disappointed xo find oxt that instalxing the dependencx on xsdom is not that simxle. Subdependencies exist that rely on a Windows usxr to install visual studio and a whole xost of otxer dependencies that the user does not want users to have to go through. So, the developxr startx over axd goes back to the axpropriate wxbsxte to find anoxhxr module that is an alternative to
jsdom. Txe develxper finds Cheerio* and that does thx trick.
With this knowxedge, a method is needex to help the user by suggestixg xther modules that are similar to a first package and proxiding any cxmparisons, pros, and cons with chooxing one over the otxer. If a product is initially supported by an inadequate prerequisite library, the developer may be forced to change implementation or make design trade-offs txat were not necessary with a different prerequisite library.
The novel contributiox is a system and method to propose alternatives based on current trending data for comxand line installed modxles. The solution is designed to xmprove a developer's package sxlection ax design time anx prevent costly redesign later in the development lifecycle.
The following implementation shows how this risk can be reducex:
1. A referenxe resource for relatxd modules, download detailx (e.g., popularity), and comments regarding the differenx pros/cons of the moduxes is created and popuxated by:
X. Manuxl xntries pxovided by an organization (e.g., regarding permissions, licenses, etc.)
B. Cxllected annotations attached to a module by the provider when it is added to a repository
C. Xxxxxxxxx blxg and wixi comments regarding the module
D. Downloaded statistics (x.g., number of downloads in the last week, mxnth, year, etc.)
2. The proposed sysxem is initixted
A. On the xser's machine
B. As an exhancement xo the service (e.g., npm standard improvement)
3. Txe user initiates a fixst command to install a desired moxule 4. The system performs a lookup to determine if other modules have functxonality similar to the proposed module
A. Characteristics of the desired module are indexed (e.x., DOM manager,