PureMVC Architects Lounge

Announcements and General Discussion => General Discussion => Topic started by: piotrzarzycki on March 20, 2017, 01:48:23 PM

Title: FlexJS version of MultiCore PureMVC
Post by: piotrzarzycki on March 20, 2017, 01:48:23 PM
Hi Cliff,

My names is Piotr Zarzycki and I am one of the PMC member of Apache Flex project. With the Team we are working on next generation Flex framework FlexJS. [1] One of our users Prashant created interesting demo when he was able to use MultiCore version of PureMVC to build application. He basically creates from sources of MultiCore PureMVC swc using FlexJS compiler. [2] (swc is in bin folder)

I like his demo cause it's simply showing that we are able to use PureMVC to build FlexJS applications. I would like to put this demo in our examples - make it available for each user who would like to use FlexJS.

We are building our examples and framework itself using Ant or Maven. I would like to prepare Prashant's demo to be buildable by Maven and make FlexJS version of PureMVC downloadable from Maven central.

- Would it be possible to put our FlexJS version of PureMVC.swc in maven central ?

[1] https://cwiki.apache.org/confluence/display/FLEX/FlexJS
[2] https://www.dropbox.com/s/2h2cdfyje5lojlh/PureMVC.zip

Thank you in advance,

Title: Re: FlexJS version of MultiCore PureMVC
Post by: puremvc on April 06, 2017, 03:25:30 PM
Hi Piotr,

Sounds cool. Is there a repo where I can look at the code, and/or a running demo where we can see the demo running? I'd like to see the source code and understand more about how it works.

I'm glad to hear that the FlexJS work is continuing and that PureMVC is working well with it. I'm excited to hear more news from this realm!


Title: Re: FlexJS version of MultiCore PureMVC
Post by: openoli on April 19, 2017, 12:30:00 AM
This is the related "Flex Users List" thread:

I've started to port the EmployeeAdmin demo to FlexJS a while ago, hope I'll have some free cycles and can pull myself to finish it soon ;-)


Title: Re: FlexJS version of MultiCore PureMVC
Post by: openoli on April 19, 2017, 01:40:03 AM
Cliff, if you'd like to check out FlexJS+PureMVC by yourself, it's pretty easy:

1) Download and install the FlexJS SDK and setup your favorite IDE [1]
    (It's recommended to install the nightly build, bugs are expected!)
2) Create a FlexJS example project. Take a look at [2] to get an idea of the basic FlexJS app structure.
    (The "model" and "controller" beads are optional)
3) Copy your awesome PureMVC AS3 lib source to your example project (or use the swc from previous link)
4) Implement your PureMVC actors as you are used to
5) Your InitialView of your example project could look like this:

<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
width="100%" height="100%"
import core.as3.ApplicationFacade;

public var facade:ApplicationFacade  = ApplicationFacade.getInstance("MySuperCore");

private function onInitComplete():void {

<js:Group width="800" height="600">


6) Compile your project
    (The compiler creates a Flash version and a JS/HTML5 version)
7) Done, hope it works well ;-)

Some hints if you would like to port Flex code to FlexJS:
You have to remove all flex/flash dependencies from your AS3 code and you have to replace your mx/spark components by FlexJS components.
Remember the popular Flex ArrayCollection (mx.collections.ArrayCollection) is also part of the Flex framework and has to be replaced by e.g. the FlexJS ArrayList.
The FlexJS component sets are not yet as rich as Flex mx/spark but FlexJS makes great progress.
Thanks to some smart guys FlexJS has captured the MaterialLight lib [3] which is available in the nightly build.
This could also be helpful [4].


[1] https://cwiki.apache.org/confluence/display/FLEX/Getting+Started+With+FlexJS
[2] https://cwiki.apache.org/confluence/display/FLEX/Application+Structure
[3] https://getmdl.io/started/
[4] https://nextgenactionscript.com/

Title: Re: FlexJS version of MultiCore PureMVC
Post by: puremvc on April 25, 2017, 10:49:29 AM
Hi Olaf,

Looks pretty familiar. :)

I'll give it a look see!