Hi Ayola,

This webpage describes the architecture: 
http://helix.apache.org/Architecture.html

Here are some concepts: http://helix.apache.org/Concepts.html

For the tutorial, I would first do the quick start: 
http://helix.apache.org/0.6.3-docs/Quickstart.html

and then go through each page of the tutorial: 
http://helix.apache.org/0.6.3-docs/Tutorial.html

In particular, take a close look at the Helix admin documentation: 
http://helix.apache.org/0.6.3-docs/tutorial_admin.html

Our sample code is in the recipes module: 
https://github.com/apache/helix/tree/helix-0.6.x/recipes

documentation for recipes: http://helix.apache.org/0.6.3-docs/index.html

The source for the Helix admin java implementation is here: 
https://github.com/apache/helix/blob/helix-0.6.x/helix-core/src/main/java/org/apache/helix/manager/zk/ZKHelixAdmin.java

and the javadocs are here: 
http://helix.apache.org/javadocs/0.6.3/reference/org/apache/helix/HelixAdmin.html

The command line source code is available here: 
https://github.com/apache/helix/blob/helix-0.6.x/helix-core/src/main/java/org/apache/helix/tools/ClusterSetup.java

The REST API implementation is all available here: 
https://github.com/apache/helix/tree/helix-0.6.x/helix-admin-webapp/src/main/java/org/apache/helix/webapp

I wouldn't worry about the Helix controller implementation; it is out of scope 
for the dashboard. Fundamentally, what you want is a viewer that presents a 
current snapshot of the cluster in terms of Helix concepts. In addition, it 
should provide some UI elements for admin operations (i.e. the operations 
exposed by HelixAdmin, ClusterSetup, and the REST API).

Thanks,
Kanak

----------------------------------------
> Date: Mon, 31 Mar 2014 16:57:54 +0530
> Subject: Re: GSOC Proposal for the dashboard for Apache Helix
> From: [email protected]
> To: [email protected]
> CC: [email protected]; [email protected]
>
> Hi Kanak,
>
> Answers to the questions are as follows.
>
> 1.
>
> Hawtio[8] is a lightweight and modular[8] HTML5 web console with lots of
> plugins for managing your Java stuff. Plus it also has good documentation
> and community (tutorial) than other dashboards and portals.
>
> · various options for running hawtio
>
> o Chrome Extension
>
> o executable jar
>
> o under Application Server
>
> o stand alone Java application
>
> · Predefine API and plugin that can help on the building
> dashboard[9]
>
> · Rest API exploring Supporting[10]: Endpoint browsing (Swagger
> support for rest APIs)
>
> · Server Side Plugins in hawtio will help to get server side JVM
> details (Nodes) to UI (need to try some existing sample for this)
>
> · hawtio is a single page application, so much better for a
> dashboard.
>
> · It is highly modular and capable of dynamically loading plugins
> (JavaScript Libraries)
>
>
>
>
> *Some JS libs I will use*
>
>
>
> · AngularJS Directives and angularjs API (Below I have given few
> things to know to go for it)
>
> · bootstrap API (Mainly for UI css, It is a front-end framework for
> faster and easier web development)
>
> · d3 API (chatting)
>
> · ng-grid API (Grid/Template purpose)
>
> · javascript API (web support - used all time )
>
> · icons from Font Awesome (basically for ICONS)
>
>
>
> Need go through some codes in here[14] regard to UI of hawtio-web
>
>
>
> I am planning to check some pluggings that had done for jclouds[11] from
> hawtio. As it has the same requirements and those will be full filled, This
> is also one reason to pick hawtio as there are a lot people that have used
> it. Some have our same requirements so those have done in here. Thus it is
> possible to achieve it.
>
>
> *Here is reason for AngularJS importance in hawtio*
>
> AngularJS[1] is a toolset for building dynamic views in web-applications.
> It supports extend HTML components. It is quick to develop
> (Model-View-Controller design pattern) as lot of things are predefined and
> clear API[2].
>
> eg:
>
> · Think some those more help full to give better user experience on
> UI dashboard.
>
> · 'ngDblclick' allows you to specify custom behavior on a dblclick
> event.
>
> · 'ngController' attaches a controller class to the view
>
> · few that can help more user experience on dashboard 'ngShow',
> 'ngMouseenter'
>
> · For future work 'ngTouch' for touch device also can be used and
> the same dashboard can be improved over multiple devices.
>
>
>
>
>
> *Some dashboard and portal servers, that I researched.*
>
>
>
> · JavaScriptMVC[3] is a JavaScript framework for lightweight
> applications developing and easily maintainable framework. jQuery supports.
> Not much easy access for JVM.
>
>
>
> · Backbone.js[4] gives structure to web applications. It provides
> custom events binding facilities plus event handling. It connects existing
> API over a RESTful JSON interface. (JVM limitation plus Java API
> incompatibilities )
>
>
>
> · jPorta[5] is a fully functional portal engine, It use Gadget, JSP
> page. (Not powerful API and docs)
>
>
>
> · jetspeed[6] supports web browser and can be considered as central
> hub where information from multiple sources are made available in an easy
> to use manner. It is mainly for XML portal and not for dashboard UI stuff.
>
>
>
> · jPortlet[7] different modes of viewing such as VIEW, EDIT,
> CONFIGURE or HELP. It have Skinnable look & feel (No much documentation or
> clear APIs)
>
>
>
>
>
> · I Read some on Portlet Specification[7] to get some basic idea on
> java portal concepts.
>
> [1] http://angularjs.org/
>
> [2] http://docs.angularjs.org/api
>
> [3] http://javascriptmvc.com/
>
> [4] http://documentcloud.github.io/backbone/
>
> [5] http://jporta.sourceforge.net/
>
> [6] http://portals.apache.org/jetspeed-1/
>
> [7] https://www.jcp.org/en/jsr/detail?id=168
>
> [8] http://hawt.io/plugins/index.html
>
> [9] http://hawt.io/plugins/dashboard/
>
> [10] http://hawt.io/plugins/api/
>
> [11] http://hawt.io/plugins/jclouds/
>
> [12] http://hawt.io/plugins/jboss/
>
> [13] http://hawt.io/plugins/karaf/
>
> [14]
> https://github.com/hawtio/hawtio/tree/master/hawtio-web/src/main/webapp/app/ui
>
>
> 2. I would like an explanation on the architecture of helix or a diagram
> explaining the Helix Architecture. Also if you can point where the relevant
> code of REST json, JVM api and CLI appears in Helix source code it would be
> much useful. If you can share with me some sample code to try or any
> diagram related it would make my work easy.
>
> Here are some DOC I am referring[1], are those up to date or much better
> tutorial that will be helpful for me to understand helix core and API
> -Helix API (Java API, REST, CLI) scope is there? or grouping and limitation
> over each APIs
> Helix Controller[2] implementation.
>
> [1] http://helix.apache.org/apidocs/reference/packages.html
> [2] http://helix.apache.org/0.6.3-docs/tutorial_controller.html
>
> Could you give me a good introduction to Helix. Also some sample code that
> I can try to get exposed to REST API, CLI and some sample code / tutorial
> to practice Java API & Interface would be much help.
>
>
> 3. I'm in my final year at University and don't have any other commitments
> and projects going on at the moment. My previous programming experience
> include mainly Microsoft Technologies (Visual Studio / MS Server / C# /
> ASP.NET). Several of those projects included Crystal Reports as A Reporting
> Tool. Thus as a component of HCI I'm familiar with Reporting Tools. Since I
> have not much experience/exposure to open source and industrial exposure of
> java I decide on applying for GSOC with the intention that it will broaden
> my horizons giving me advantage over my colleagues when applying for jobs
> after the exams. Therefore I find it a refreshing new experience to
> interact with the open source community and to contribute to it.
>
>
>
> On 30 March 2014 10:25, Kanak Biscuitwala <[email protected]> wrote:
>
>>
>> Hi Ayola,
>>
>> I'm just checking in. I had a few questions:
>>
>> 1. Could you describe why you picked hawtio and AngularJS as the
>> frameworks for the dashboard? It's fine to select whichever frameworks you
>> think are best; I'm just curious about what led you to decide on these.
>>
>> 2. Are there any Helix concepts that you would like any clarification on?
>> Would it be helpful to chat for a bit on IRC to discuss requirements?
>>
>> 3. What is your time commitment to this project? Will you also be working
>> on other projects this summer?
>>
>> Thanks,
>> Kanak
>> ________________________________
>>> Date: Wed, 26 Mar 2014 23:23:11 +0530
>>> Subject: Re: GSOC Proposal for the dashboard for Apache Helix
>>> From: [email protected]
>>> To: [email protected]
>>> CC: [email protected]; [email protected]
>>>
>>> Hi Kanak,
>>>
>>> Thanks. I just send the subscription request for the mailing list.
>>>
>>>
>>> On 26 March 2014 23:11, Kanak Biscuitwala
>>> <[email protected]<mailto:[email protected]>> wrote:
>>>
>>> Hi Ayola,
>>>
>>> Can you subscribe to the dev and user mailing lists for Helix? Your
>>> emails are currently bouncing.
>>>
>>> Instructions here: http://helix.apache.org/mail-lists.html
>>>
>>> Thanks,
>>> Kanak
>>> ________________________________
>>>> Date: Wed, 26 Mar 2014 23:05:35 +0530
>>>> Subject: Re: GSOC Proposal for the dashboard for Apache Helix
>>>> From: [email protected]<mailto:[email protected]>
>>>> To: [email protected]<mailto:[email protected]>
>>>> CC: [email protected]<mailto:[email protected]>;
>>> [email protected]<mailto:[email protected]>;
>>> [email protected]<mailto:[email protected]>
>>>>
>>>> Hi Kanak,
>>>>
>>>> Thanks for replying and for looking to my proposal. Sure I will ask any
>>>> questions regarding the project when I have. Right now I'm going
>>>> through Helix & Hawtio and I'm writing some blog posts in my personal
>>>> blog regarding this. Looking forward to communicate and work with you
>>>> which is an opportunity for me of a life time.
>>>>
>>>> Thanks
>>>>
>>>>
>>>> On 26 March 2014 22:08, Kanak Biscuitwala
>>>>
>>> <[email protected]<mailto:[email protected]><mailto:
>> [email protected]<mailto:[email protected]>>>
>>> wrote:
>>>>
>>>> Hi Ayola,
>>>>
>>>> Great! I have reviewed your proposal and have acknowledged it. Once
>>>> Apache gives the go-ahead, the voting phase will start.
>>>>
>>>> Let me know if you have any questions.
>>>>
>>>> Thanks,
>>>> Kanak
>>>> ________________________________
>>>>> Date: Wed, 26 Mar 2014 17:01:18 +0530
>>>>> Subject: GSOC Proposal for the dashboard for Apache Helix
>>>>> From:
>>> [email protected]<mailto:[email protected]><mailto:
>> [email protected]<mailto:[email protected]>>
>>>>> To:
>>> [email protected]<mailto:[email protected]><mailto:
>> [email protected]<mailto:[email protected]>>;
>>>>
>>> [email protected]<mailto:[email protected]
>>><mailto:[email protected]<mailto:
>> [email protected]>>
>>>>> CC:
>>> [email protected]<mailto:[email protected]><mailto:
>> [email protected]<mailto:[email protected]>>
>>>>>
>>>>> Hi,
>>>>>
>>>>> I'm Ayola Jayamaha from Sri Lanka. I'm a final year undergraduate
>>>>> student at the University of Moratuwa Computer Science & Engineering
>>>>> Department. I have sat for my exams and I'm waiting for results.
>>>>>
>>>>> When going through the GSOC Projects the project of a Dashboard for
>>>>> Apache Helix caught my eyes. So I submitted a proposal for this
>>>>> project.I'm attaching my proposal with this email and hope you would
>>>>> consider it favorably for gsoc 2014.
>>>>>
>>>>> Thank you.
>>>>>
>>>>> --
>>>>> Best Regards,
>>>>> Ayola Jayamaha
>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Best Regards,
>>>> Ayola Jayamaha
>>>>
>>>> http://ayolajayamaha.blogspot.com
>>>
>>>
>>>
>>>
>>> --
>>> Best Regards,
>>> Ayola Jayamaha
>>>
>>> http://ayolajayamaha.blogspot.com
>>
>>
>
>
>
> --
> Best Regards,
> Ayola Jayamaha
>
> http://ayolajayamaha.blogspot.com
                                          

Reply via email to