Challenge Overview
Project Overview
IBM is building a versatile, extensible Mail and Calendaring interface on top of their existing infrastructure. As part of this contest, you will make use of Strongloop’s Loopback Framework to create an API server and expose some API endpoints. These endpoints will be used by an Angular application and native mobile clients to be built in subsequent challenges.
This challenge is part of the *IBM Castle* Challenge Series. Competitors who win challenges in this series will compete in a leaderboard of points for additional prizes. We have lots of contests coming in this series so it is best that you participate early and frequently. More information, rules, and leaderboards available here.
Competition Task Overview
In the UI Prototype, there are areas that they want plugins to be installed that can add functionality to the UI. We want recommendations from the angular community as to how we make the ui extensible and build a PoC.
Current Mobile UI Prototype is here and we'll also share the source code in the forum:
http://ibmcastle-ui.herokuapp.com/index.html#/home
If you click on the first guy - Dennis, a blue bar shows up underneath him with LinkedIn, Facebook, etc. The use case here is that a 3rd party developer creates a new connection - let’s say Stack Overflow - on that business card. We need to know how in angular a 3rd party dev can add something to the UI with an extension.
Please see the following screenshot:
Basically we want you to:
- Add an icon so users can connect new plugins like Stack Overflow
- Add the new plugin should be added to that blue bar as well
- The plugin must be added to the UI in a non-hacky and non-destructive way. We need it done in a 1.x way that can be upgraded to angular 2 easily later.
- You need to provide steps to install a plugin so that a change shows up in the UI. Using Stack Overflow plugin / service on the business card (blue area) would be good for this PoC.
- Pick another place on the UI and do the same described above.
Timeline
This challenge has shorter timeline, please make sure you don't miss the deadlines.
Technology Overview
- Angular.js
- HTML
Final Submission Guidelines
Submission Deliverables
-
1. Double check your submission follows the exisitng coding standard / style.
-
2. Upload complete code as well as documentation for how to run your submission, we'd also need details on how to make this plugin system extensible.
-
3. Add huangqun as a member of your forked repository
-
4. Winner will be required to submit a merge request on gitlab against the branch specified and provide merge conflict support.
Final Submission
For each member, the final submission should be uploaded via the challenge detail page on topcoder.com.