Ares 2 Overview
Ares 2 is a browser-based code editor and UI designer for developing Enyo 2 applications. Although Ares is still a work in progress, we have reached the point where we are opening the repo and will do further development in the open, so we encourage you to follow our progress and give us feedback as we push Ares forward.
The Ares project architecture is divided into several main pieces:
- Ares - The front-end designer/editor web application, with the following main components:
- Harmonia - File system layer
- Phobos - Document management
- Deimos - Visual designer
- Hermes Components - Pluggable server-side components that provide interfaces to Ares clients for cloud-based services such as file storage and build services. We're leveraging node.js, but Hermes components can use any server-side tech.
Here are the main features you can start looking at today:
- De-centralized file storage
- Ares currently connects to a "filesystem" component, to edit local files
- Key goals with this approach are to avoid forcing users to store files and/or credentials on Ares servers and allow freedom to choose the preferred storage location, whether cloud or local.
- Code editor
- Ares integrates the Ace (Cloud9) code editor for code editing
- Code intelligence
- Code completion using symbols from:
- the current project
- the Enyo version that comes with Ares
- the libraries included in the project
- In the future, this will be used for advanced features context-sensitive documentation, etc.
- UI designer for drag and drop UI editing
- Component definitions are round-tripped from the Editor to the Designer, meaning that changes made in one will immediately appear in the other.
- Integration with PhoneGap online build
The following features are in the works, and you should see them added as we move forward:
- Code completion and context-sensitive documentation
- Additional Hermes components to extend the local and cloud file storage options: We plan to add Hermes components for Dropbox (implementation in progress), FTP, Box.net and more
- Improvements to the Designer component for greater ease of use
- ... and more!
There is not yet a packaged (installable) version of Ares or a publicly hosted version. You need to get the source, using the procedure below.
####Install Node.js 0.8 or later#### Preferably from the Official Download Page.
####Install git (or a graphical git client)#### See the Github.com help for hints
####Clone the ares-project repository from GitHub#### Using git, clone the repository using either the HTTPS or SSH urls (depending on how you have setup Git):
$ git clone https://github.com/enyojs/ares-project.git
$ git clone firstname.lastname@example.org:enyojs/ares-project.git
Then update the submodules (required):
$ cd ares-project $ git submodule update --init
If you are using a graphical Git client, there may or may not be a way to update the submodules from the GUI. If not, then use the commands above.
Optionally, configure the
root of your local file-system access in
ide.json. By default, the local filesystem service serves the files from your Home or My Documents directory, depending on your operating system. You might want to change this to point to the location of your project files, to make navigation faster & easier.
For instance, you can change
@HOME@/Documents or to
D:\\Users\\User (if using backslashes [i.e. on Windows], use double slashes for JSON encoding)
% vi ide.json [...] "command":"@NODE@", "params":[ "hermes/fsLocal.js", "-P", "/files", "-p", "0", "@HOME@" ], [...]
Start the IDE server: (e.g. using the Command Prompt, navigate to the ares directory and type 'node ide.js')
C:\Users\johndoe\GIT\ares-project> node ide.js
Normally, your default browser will start to this URL http://127.0.0.1:9009/ide/ares/index.html. You can start multiple browser to the same URL.
For all contributions on Ares project and before commit, please execute the available Ares Test Suite and make sure this Ares Test Suite is not broken.
See README.md under ares-project/test.