uberVU / mozaic

JS Framework for building SPA

Home Page:http://ubervu.github.com/mozaic/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Mozaic Hack Ideas

topliceanu opened this issue · comments

  1. Chrome Dev Tools extension for Mozaic apps, inspired by angular's batarang. It should display channels' meta and data, widgets params.
  2. Package Mozaic.js into one file (or two if we want to split the deps in a file and the core in another) This file should allow users to require classes from the core into their app.
  3. Create a Mozaic-seed repo to contain the core from 2. and a basic folder structure. Also it should contain basic configs, a simple route, a controller, a widget, a collection, etc. to help people get off the ground with mozaic easily.
  4. Generate documentation from the codebase and have a grunt task to do this dinamically. @arcade is working on something similar.
  5. Create a mozaic tutorial, similar to django tutorial, but building, say, an issue tracker. We should probably start by documenting mozaic concepts which we have started to do, then add specific examples. #83 #80
  6. Add support for nested apps in mozaic: apps that use the same core but offer specific, self-contained functionality (eg. a comments system) but which get packaged toghether.
  7. Update Backbone.js CC @valentinzberea
  8. @arcade add profile measurements into the core, we could add these to 1.

Please add ideas in the comments, then I'll add them in the issue desc. And let me know what you think of the current ones.

For 2. I think we should actually make mozaic a package for either Jam (http://jamjs.org/) or *volo.js *(http://volojs.org/). The benefit of doing this is that people would be able to easily pull in mozaic into their app, and they also take care of the bundling part of the problem since they both provide support to define a package/bundle task that should generate a minimized build of the package.

As an added bonus volo supports creating projects from templates so we could define a volo template (e.g. https://github.com/h5bp/html5-boilerplate) for users to use with volo create my-app ubervu/mozaic-app

Also this would have the added advantage that we could keep our external dependencies in sync, and have easier control over them (would probably take care of 7. as well).

And the fun part is that at least for publishing the only thing we need to actually do is add a package.json file to the project and publish it (if we decide to go for Jam, volo doesn't have a package repository, it finds stuff on github instead)

Just my 2 cents

Another ideas:

  • create a demo with slowed down unleashed in order to show off asyncness
    and how rendering is done when changing controllers (very easy and
    potentially spectacular)
  • make modules.js irrelevant by providing better defaults. It's a small
    monster right now :)

@aismail Refactor the folder structure of the core to group files more intuitively.