Giter Club home page Giter Club logo

ares-project's Introduction

Ares 2 Overview

Updated: 4/30/2012

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.

Basic architecture

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.

Current status

Here are the main features you can start looking at today:

  • De-centralized file storage
    • Ares currently connects to a Dropbox Hermes component for file storage on a user's Dropbox account
    • We plan to add Hermes components for things like local filesystem storage, FTP, and Box.net in the future
    • 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
    • Upon opening/editing a JavaScript file, Ares will parse the file and display a semantic outline of the code in the right-hand panel (for purposes of demonstrating parser)
    • In the future, this will be used for advanced features such as code-completion, context-sensitive documentation, etc.

Note: The current Dropbox interface was implemented with an authentication mechanism that has since been deprecated by Dropbox and for which API keys are no longer available, so most users will not be able to run their own Hermes Dropbox component at the moment. However, those wishing to test drive the functionality above can open ares/index.html which points to a temporary hosted version of the Dropbox Hermes component using a valid API key. We will be migrating the Dropbox authentication mechanism to the currently recommended scheme. Note there is not yet a publicly hosted version of Ares.

Future plans

The following features are in the works, and you should see them added as we move forward:

  • The UI designer for drag and drop UI editing
  • Code completion and context-sensitive documentation
  • Additional Hermes components to extend the local and cloud file storage options
  • โ€ฆ and more!

Setup

For Ares to run, it simply expects the enyo and lib folders (including onyx, layout, and extra) from the 2.0b4 SDK or latest from Github to be present next to ares-project, as follows:

	* ares-project		[email protected]:enyojs/ares-project.git
	* enyo				[email protected]:enyojs/enyo.git
	* lib
		* onyx			[email protected]:enyojs/onyx.git
		* layout		[email protected]:enyojs/layout.git
		* extra			[email protected]:enyojs/extra.git

To run, simply open ares-project/ares/index.html from a web browser.

ares-project's People

Contributors

dfreedm avatar kevinpschaaf avatar

Stargazers

Oz avatar

Watchers

Oz avatar James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.