Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Guidelines for porting this to another framework!? #3

Open
kristianmandrup opened this issue Feb 28, 2015 · 2 comments
Open

Guidelines for porting this to another framework!? #3

kristianmandrup opened this issue Feb 28, 2015 · 2 comments

Comments

@kristianmandrup
Copy link

First, congrats with this framework. I huge help for the community to try and get away from being forced into using Angular when using AppGyver.

We are planning to use Aurelia.io instead of BackBone. I'm very interested in some general guidelines for how to port your approach to using something else.

What is the starting point of the app and do you hook up the essential infrastructure to be compatible with AppGyver steroids?

I see that your App object in Index.js is a Backbone Controller.

var App = Backbone.Controller.extend({`
  initialize:  ...
}

in Aurelia you would usually have the Router instead

import {Router} from 'aurelia-router';

export class App {
  static inject() { return [Router]; }
  constructor(router) {
    this.router = router;
    this.router.configure(config => {
      ...
  }
}

But I guess for AppGyver you don't use routing as every page is its own miniapp?

Then in the initializer you call various other initializers such as self._initPages(); which creates all pages, by creating instance of page then calling initializePage().
So here a supersonic ui view is created stored in self.m_page.
Is this a specific to supersonic or just your own convention?

    var PageView = Backbone.View.extend({

        /**
         Create the Steroids page / view identity
         @method initializePage
         **/
        initializePage: function () {
            var self = this;
            self.m_page = new supersonic.ui.View({
                location: self.location,
                id: self.pageID
            });
            self.m_page.start();
            if (self.options && self.options.init == false)
                return self;
            self._initialize();
            return self;

I could ask so many more questions about this whole architecture... Would be awesome if you could write up a blog post explaining the main design considerations. Thanks! Cheers :)

@born2net
Copy link
Owner

the framework could be ported, sure...
did you see: https://www.youtube.com/watch?v=b6UPkRXJPUk

@kristianmandrup
Copy link
Author

Yes, I have seen that video a few weeks ago. Is that enough to go by? What about my questions above?
I don't really need all your extra infrastructure at this point (maybe some of it for later), right now I'm just curious about minimal framework integration with supersonic, ie. Aurelia views in my case.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants