From Fedora Project Wiki

Some thoughts about our best practices for next gen web apps

  • We should have a javascript and css build framework (yui compressor doesn't build in Fedora, jsmin is non-free, but dojo shrinksafe should be possible). lmacken also points to this: https://github.com/mishoo/UglifyJS
  • A GUI toolkit like sproutcore would make rich client applications easier
    • ... but such a toolkit would make search indexing and accessibility harder.
      • For accessibility we could mitigate by mandating a command line app that can do anything that the webUI can do.
      • Search indexing we may need to have data retrieval use normal html and just have administration use html5.
  • jsonrpc-2.0 has multicall (batch) support so it sounds like something that would help speed up many queries.

In a javascript-client setting I'd separate out URLs that deliver the client from URLs that deliver the data. example:

https://a.fp.o/pkgdb/ is a URL to the JavaScript client. The client is loaded and executes. It then downloads data from https://a.fp.o/pkgdb/motd, https://a.fp.o/pkgdb/package-updates https://a.fp.o/pkgdb/recent-comments to populate the page.

If only we could deal with the search engine problem, this would be a viable solution.