Moonshine IDE

Moonshine is a free and open source middleweight IDE built with ActionScript 3 for AS3, Apache Flex® and Apache FlexJS® development with Cloud and Desktop support.

Why Moonshine

Works with feature parity on the cloud model

The first IDE developed to provide cloud support for AS3, Apache Flex® and Apache FlexJS®. Now you can create your projects on the cloud and utilize the agility of a cloud based platform using Moonshine.

couldsupport

100% Cross Platform

Moonshine is a cross platform open source application. With Moonshine you will find the luxury of developing anywhere on any platform.

crossplatform

Built specifically to focus on Apache Flex® and Apache FlexJS®

Apache FlexJS® is the next generation Apache Flex® SDK with significantly more capability. We are including the potential of Apache FlexJS with Moonshine. Allowing our MXML and Actionscript 3 code to run on a larger array of platforms than Flash currently. For more information please visit https://cwiki.apache.org/confluence/display/FLEX/FlexJS

flexjs

Subversion support

We are providing SILKSVN for subversion support because they provide a standalone command-line Subversion client for Windows. The installer contains all command line tools (svn, svnadmin, svnsync, svnserve, svnmucc) without application bindings or Apache modules. For more information please visit https://sliksvn.com/

sliksvn

Moonshine Desktop Feature Additions

  • Apache Ant® build
  • FDB debugger for debugging support
  • TourDeFlex component to assist with teaching the Apache Flex® syntax
  • Mobile application development support

What to expect in upcoming releases

  • Code Completion
  • Improved Debugger
  • More project templates

Moonshine Open Source

Moonshine is Open Source and accessible to everyone; we welcome you to download the code from the list of distributions in the Downloads section. For documentation and instructions, please refer to the link below:

Download on your Desktop

Try Moonshine on either Windows or Mac:

Latest Version

Archived Versions

Moonshine is being developed using:

  • Apache Flex® SDK 4.15.0
  • Adobe AIR® SDK 22.0
  • Apache FlexJS® SDK 0.7.0
  • Apache Ant® 1.9.2

Documentation

Complete documentation to help you moving forward and play with Moonshine.

  1. Set Apache Flex® SDK in Moonshine
  • Start Moonshine
  • In Moonshine go to File -> Settings -> MXMLC Compiler Plugin

SettingsSDK

  • If you are using Moonshine that bundled with different SDKs, then you can use any of them to set default Apache Flex® SDK to Moonshine, or even you can downloaded Apache Flex SDK with AIR SDK at http://flex.apache.org/installer.html
  • If you are using OSX El Capitan or higher, make sure your any downloaded SDK’s location is ~/Downloads folder. By many restrictions applied to El Capitan, a sandbox app can execute/use SDK stuff only if it’s in user’s Downloads folder
  • (OSX) If you have setup Apache Flex® SDKs downloaded by Moonshine’s helper application App Store Helper then you should probably see Moonshine’s default SDK already set by a bundled SDK:
    defaultautoset
  • You can also set your own SDK as default, click on Change link inside Default Flex SDK section, this will open a popup named Select Flex SDK consisting of available/added SDK entries
  • To use any SDK from the above entry, simply double-click on it, and it’ll updated to Default Flex SDK section, or you can add your own by clicking on plus  button in Select Flex SDK popup and complete the Define a SDK Path form to add your new SDK to Moonshine
  • When done, click on Save button in MXMLC Compiler Plugin section

 

You can also set SDK to individual project as shown below:

 

  • Right click on your project name and select Settings then at the left Build options
  • Click on Change link inside the Custom SDK section, this will open a file browse dialogue
    • Locate the Apache Flex® / FlexJS® SDK folder (as previously downloaded)  and choose Select Folder
    • You should see Custom SDK is now pointing to Apache Flex® / FlexJS® SDK directory you chose
    • Click Save

FlexJS SDK Setting.jpg

  1. Create and build projects in Moonshine
  • To create a new desktop based Apache Flex® project do one the following:
    • In Moonshine choose File -> New -> Flex Desktop Project (MacOS, Windows) : MXML and ActionScript support
    • In Moonshine choose File -> New -> ActionScript Project (SWF, Desktop) : Choose this if you want pure ActionScript project 
    • Choose New ActionScript Project (SWF, Desktop) in Moonshine splash screen
    • Choose Flex Desktop Project (MacOS, Windows) in Moonshine splash screen
  • Choosing any above option will open the New Project tab:

NewProjectDialogue

In ActionScript Project (SWF, Desktop) options you’ll find an extra option to choose between Desktop or Web as the platform type:

NewProjectDialougeAS

  • Editable fields are:
    • Project Name
    • Project Directory
    • Select Project Type (ActionScript Project only)
  • After entering the necessary fields above, click Create to generate a new project
  • Create option immediately create a new Apache Flex® project, open the project in Moonshine workspace (left-hand tree menu) and it’s application file in Moonshine editor

NewProjectCreated

  • Moonshine generates any project with it’s supported types with demo ‘Hello World!‘ text, so you can immediately build the project and check it’s output; an optional Apache Ant® build script fully configured so you build a desktop package immediately as well!
  • To run the project choose Project -> Build & Run or press F8. You can see command line output in Moonshine’s console window (at the bottom of the interface)

ConsoleCompilation

If your project compiles, an AIR window will open running your code.

  • To create a new web based Apache Flex® project do either one the following things:
    • In Moonshine choose File -> New -> Flex Browser Project (SWF) : MXML and ActionScript support
    • In Moonshine choose File -> New -> ActionScript Project (SWF, Desktop) : Choose this if you want pure ActionScript project 
    • Choose New ActionScript Project (SWF, Desktop) in Moonshine splash screen
    • Choose Flex Browser Project (MacOS, Windows) in Moonshine splash screen
  • Choosing any above option will open new project creation dialogue:

CreateWeb

In ActionScript Project (SWF, Desktop) options you’ll find an extra option to choose between Desktop and Web as output type:

CreateWebAS3

  • Editable fields are:
    • Project Name
    • Project Directory
    • Select Project Type (ActionScript Project only)
  • After necessary in the fields above, click Create to generate a new Apache Flex® Web project
  • Create option immediately create a new Apache Flex® project, open the project in Moonshine workspace (left-hand tree menu) and it’s application file in Moonshine editor

NewWeb

  • Moonshine generates any project with it’s supported types with demo ‘Hello World!‘ text, so you can immediately build the project and check it’s output; an optional Apache Ant® build script fully configured so you build a release SWF immediately as well!
  • To run the project choose Project -> Build & Run. You can see command line outputs in Moonshine’s console window (at bottom)

ConsoleBuild

  • If everything goes fine, Moonshine will generate the SWF and runs inside default browser window
  • To create a new mobile based Apache Flex® project do either one the following things:
    • In Moonshine choose File -> New -> Flex Mobile Project (iOS, Android) : MXML and ActionScript support
    • Choose New Flex Mobile Project (iOS, Android) in Moonshine splash screen
  • Choosing any above option will open new project creation dialogue:

CreateMobile

  • Editable fields are:
    • Project Name
    • Project Directory
  • After necessary inputs in the fields above, click Create to generate a new Apache Flex® Mobile project
  • Create option immediately create a new Apache Flex® project, open the project in Moonshine workspace (left-hand tree menu) and it’s application file in Moonshine editor
  • Moonshine generates any project with it’s supported types with demo ‘Hello World!‘ text, so you can immediately build the project and check it’s output; an optional Apache Ant® build script fully configured so you build a mobile package (.apk or .ipa) immediately as well!
  • To run the project choose Project -> Build & Run. You can see command line outputs in Moonshine’s console window (at bottom)

MobileRun

  • If everything goes fine, an AIR window will open running the current project
  • To create a new Apache FlexJS® project do either one the following things:
    • In Moonshine choose File -> New -> Flex Browser Project (FlexJS) (MacOS, Windows) : MXML and ActionScript support
    • Choose Flex Browser Project (FlexJS) (MacOS, Windows) in Moonshine splash screen
  • Choosing any above option will open new project creation dialogue:

Create New FlexJS Project

  • Editable fields are:
    • Project Name
    • Project Directory
  • After necessary in the fields above, click Create to generate a new Apache FlexJS® project
  • Create option immediately create a new Apache FlexJS® project, open the project in Moonshine workspace (left-hand tree menu) and it’s application file in Moonshine editor

FlexJS Project Structure

  • To run the project choose Project -> Build & Run. You can see command line outputs in Moonshine’s console window (at bottom)

Buld & Run Output

  • If everything goes fine, an AIR window will open running the current project
  • To create Html/JS choose Project->Build & Run as JavaScript.you can see command line outputs in Moonshine’s console window (at bottom)

Build & Run as Javascript

  • It creates Html & Javascripts files into Project->bin->js-debug directory

    FlexJS Output dir

  1. Debug a project in Moonshine
  • Open the project in Moonshine that you wants to debug
  •  To set breakpoint (optional), open the class file in Moonshine editor and click once at far-left numbered bar to set breakpoint to any line – line’s numbered bar will change color to mark set as breakpoint – click again to remove breakpoint:

breakpointSET

(In the image above the breakpoint is set to line# 14)

  • To start a debug choose Debug -> Build & Debug from top menus. Moonshine will start a debug session, all the debug command line output can be viewable in bottom Moonshine console window, Moonshine will add a new Debug View at left panel, too. Debugger will halt where breakpoint raised and current memory items will be shown in Debug View panel:

Debug

  • To step over while debugging you can press F6 in keyboard or choose Debug -> Step Over
  • To resume while debugging you can press F8 in keyboard or choose Debug -> Resume
  • To stop/terminate debug process choose Debug -> Stop
  1. Apache Ant® build
  • Starting an Apache Ant® build requires Ant installed in your system and setup as environment variable (http://ant.apache.org  – ensure Ant version meets minimum requirement of 1.9.2)
  • Moonshine sources supplies with it’s Ant build scripts and configured. Upon completion, the process will output desktop installer files for Windows and MacOS. You can immediately start an Ant build process if you already setup Ant in your system; to start an Ant build process we need to locate the Ant build script file (build.xml) prior to run the process. Moonshine supplies Ant build script file in it’s project’s build folder.
  • If you have already ANT_HOME setup then you can immediately build your script file by choosing Ant -> Configure from top menu, in opening file browser dialogue navigate to your Apache Flex® project’s folder and select build/build.xml file; click Open in browser dialogue; lastly Ant -> Build. Ant build should produce .SWF and it’s HTML wrapper file set
  • If you did not have ANT_HOME setup already, choose Ant -> Build. This will open following window where you can set your Ant binary location and optionally set path to your build.xml file
    antconfig
  • Upon successful completion of the process, installer files can be located at DEPLOY folder inside build folder

Support the Moonshine Project

We are passionate and driven to improve Moonshine IDE.  And are working tirelessly to improve the current working set as well as introduce new features to be made available to the Apache Flex® community.

Moonshine is completely open source and licensed with Apache License 2.0.  We would love you to join us in developing the platform to ensure its success as the best IDE option for Apache Flex®, Apache FlexJS®, and ActionScript 3.

Interested developers can download the Moonshine source code and additionally join in an ongoing conversation regarding features and support at the LinkedIn group.

Moonshine F.A.Q.

Moonshine is a free IDE built with Adobe AIR. You can create ActionScript 3, Apache Flex®, Apache FlexJS® and AIR projects from Moonshine. It also provides cloud support.

Moonshine is 100% crossplatform allowing you to develop supported frameworks on either Windows or OSX.

We want to provide a free IDE to our community for ActionScript projects. An IDE which is cross platform and provides Apache Flex®, Apache FlexJS®, and cloud support.

Moonshine IDE is built using AS3.

Editor built with FTE. Compiling with fish & AIR2 NativeProcess (through mxmlc)

Yes, We have created LinkedIn group for interested community members.

You can join it from here.

You can also join apache mailing list from here.

Yes, you can download source code, installers, and documentation from this website.

You can report any found issues with Moonshine in either the Apache mailing list or the Linkedin Group.  Please see above mailing list question for links.

Absolutely. Moonshine is an open source product and we gladly take suggestions.  Please let us know your thoughts at either the Apache mailing list or on the Linkedin group.

It is licensed under Apache License 2.0

There is no such forum as of today. But we will create it soon.

For now, you can ask us via Apache mailing list or the LinkedIn group created for Moonshine. We will build a separate page for your questions in the near future.