[Cdash] rewriting CDash's frontend

Sebastien Jourdain sebastien.jourdain at kitware.com
Thu Mar 19 19:21:04 UTC 2015


Hi Zach,

That's great. I'm looking forward to see that evolution.

Seb

On Thu, Mar 19, 2015 at 1:11 PM, Zack Galbreath <zack.galbreath at kitware.com>
wrote:

> Hi everybody,
>
> I think we should rewrite CDash's frontend using AngularJS.  The
> overarching goal is to make it easier to add new features, visualizations,
> and plugins to CDash.  We want you to be able to get more value out of your
> build data, and we want to make it easier for you to interact with CDash.
>
> To accomplish this, we should define a REST API for sending & receiving
> data to & from CDash.  Internally CDash should use this API exclusively so
> we don't have to maintain two separate data paths.  Another benefit of this
> change would be making development easier & more pleasant by removing XSLT
> from CDash.  Once we have a stable API in place, we could safely make
> sweeping changes to CDash's backend without fear of breaking the app.
>
> Here's a link to a proof-of-concept branch where I've converted the
> viewBuildError page to use AngularJS instead of XSLT:
> https://github.com/Kitware/CDash/compare/viewBuildError_angular
> Notice how this transition could safely occur one page at a time.
>
> Your probably thinking at this point, why Angular?
>
> For frontend development, I like the idea of writing code as close to HTML
> as possible, but with the added power of dynamically loaded data,
> conditionals, and loops.
>
> I looked into other client-side templating engines and they didn't seem as
> simple or clean to me.  For more on this point, here's a relatively old
> blog post that sums up my feelings pretty well:
> http://thesmithfam.org/blog/2012/12/02/angularjs-is-too-humble-to-say-youre-doing-it-wrong/
>
> Angular also comes with two-way binding.  This means that new builds could
> appear on index.php as they roll in without you having to refresh your page.
>
> I realize that Angular 2.0 is on the horizon.  That's scary, but I don't
> think it should prevent us from using the best tools at our disposal.
> Perhaps it's misguided, but my plan is to use Angular primarily for its
> templating engine, and keep as much logic as possible in PHP.  My hope is
> that by minimizing the amount of Angular-specific code that we write,
> upgrading to 2.0 (if we decide to do that) won't be as difficult as feared.
>
> Thanks for reading this far.  Please share any ideas, questions, or
> concerns that you might have at this point.
>
> _______________________________________________
> Cdash mailing list
> Cdash at public.kitware.com
> http://public.kitware.com/mailman/listinfo/cdash
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/cdash/attachments/20150319/00385160/attachment-0001.htm>


More information about the CDash mailing list