Marketplace Client Project (MPC)

The project has been created. Please visit the project page.

Marketplace Client Project (MPC)

Eclipse Marketplace Client Project (MPC) is a proposed open source project under the Eclipse Packaging Project (EPP) project. MPC will be open-sourced under the EPL.

This proposal is in the Project Proposal Phase (as defined in the Eclipse Development Process document) and is written to declare its intent and scope. This proposal is written to solicit additional participation and input from the Eclipse community. You are invited to comment on and/or join the project. Please send all feedback to the MPC forum.

Background

The Eclipse community has hundreds, if not thousands, of third-party plugins that users can add to their Eclipse installation. Unfortunately, there is not easy way to discover and install these solutions from within Eclipse.

The Eclipse Foundation has recently launched a new website, called Eclipse Marketplace, that provides a listing of Eclipse-based solutions. The listings allow each solution provider to specify a p2 update site for their solution. Eclipse users now have a central repository to find Eclipse solutions but the install process is still not tightly integrated with the Eclipse workspace.

MPC will provide the tight install integration between the Eclipse workspace and Eclipse Marketplace, plus other third party solution listings.

Scope

The scope of MPC is to:

  • Provide an Eclipse-based rich client for installing solutions listed in the Eclipse Marketplace.

  • Provide a workflow for finding and installing solutions, layering on top of the Eclipse P2 and providing a streamlined and simplified workflow that does not require users to enter and manage update sites.

  • Support different external sources of solution listing catalogs (ex. Eclipse release train catalog, third party catalog, internal corporate catalog)

  • Awesome end-user experience for uninstalling eclipse solutions

Description

The following are the goals and plan items for the MPC project:

1. Awesome end user experience for finding and installing Eclipse solutions

  • Easily ability to navigate up to 5000 different catalog entries:

    • support for browsing different markets and categories of MP

    • search-based navigation and filtering, including 1) license types, 2) maturity of product, 3) provider name and 4) maybe some others?

    • Navigation by recently added and updated

    • Navigation by community favorite

    • Find by same author/vendor

  • Display relevant information

    • Each solution listing in the MP client should be able to present the following: 1) logo of listing, 2) Solution name, 3)Provider name, 4) short description and 5) a link to more detailed information.

    • Optionally show screen shots and/or videos; depending on bandwidth this might be just

  • Guaranteed Single click install

    • One click install button will result in the solution being added to Eclipse

    • MP Client needs to be smart enough to only show solutions that can successfully install into the existing Eclipse installation. This includes checking for valid update sites, version compatibility, pre-requisites, etc. We need to get as close as possible to a guaranteed install.

    • A user should be able to select multiple solutions for installation.

    • When multiple solutions are picked for integration, their compatibility should be checked.

    • After a user has installed a solution, they should have the option to add the solution to their favorite list on MP. This would require the user to log into MP.

    • If a solution listing doesn't have an install option, there should be an option to be able to show the listing but for 'more info' redirect to the listing web site.

2. Support for different external sources of solution listings (ex. Eclipse release train repo, third party repos)

  • Client should have an option to switch to different listing providers. This would be list switching search providers in a browser.

  • If the provider is changed, the provider UI and data would be presented.

  • The client search functionality should be able to work with other providers. Getting more information after the search results, like a browse more or more details, would take the user to the external provider UI.

  • the MP client needs to have the ability to accept incoming requests from external providers to install a solution. This needs to include support from an html page.

3. Awesome end-user experience for uninstalling Eclipse solutions

  • MP Client should be able to remember what solutions have already been installed. Previously installed solutions should visually show this in the listings.

  • MP Client should allow the user to uninstall a solution.

Contribution

The initial contribution will be made by Tasktop.

Committers

  • Project Leader: Ian Skerrett, Eclipse Foundation

  • Steffen Pingel (Tasktop)

  • Mik Kersten (Tasktop)

  • David Green (individual)

  • Henrik Lindberg (Cloudsmith)

  • Thomas Hallgren (Cloudsmith)

Mentors

  • Wayne Beaton, Eclipse Foundation
  • Chris Aniszczyk, EclipseSource

Interested Parties

The following individuals, organisations, companies and projects have expressed interest in this project:

  • Ian Bull (EclipseSource)
  • Pascal Rapicault (Sonatype)

Project Scheduling

  • March 19, 2010. Feature complete beta available (Helios M6)
  • June 23, 2010. Production release (Helios GA)