Skip to content

Why ArtEngine

Shane Brinkman-Davis Delamore edited this page Jun 20, 2017 · 1 revision

There is no UI framework that works well on iOS, Android, Windows, OSX and Web. Targeting the web restricts the language choice to Javascript. That leaves only two options for UI framework: the DOM or a custom solution using HTML5 Canvas. The ArtEngine is a custom UI framework designed from the ground up for app development.

See Art.Suite for overall project goals.

ArtEngine vs HTML

ArtEngine
  • Designed for apps
  • Clean, simple, modern feature-set
  • Elements are proper modules. Each Element fully encapsulates all its descendants.
  • Layout is powerful, predictable and extensible.
  • Styles can be implemented with the full range of powerful Javascript/Coffeescript abstractions.
  • Drawing is designed for the graphic designer. It is powerful, efficient, extensible, and provides full access to the underlying Canvas/WebGL toolkit.
  • Element properties can be strings, numbers, arrays, JSON-structures or custom types like Art-Atomics.
  • Entire apps can be written in pure, syntax-light CoffeeScript.
HTML/DOM/CSS
  • Designed for documents
  • Contains decades of obsolete features
  • Elements are leaky. Any element can escape all its enclosing elements. Any element's layout can effect all parent or children elements without parents or children having any say.
  • Layout is unpredictable and not extensible.
  • CSS Styles are leaky, limited, and non-extensible
  • Drawing is not extensible.
  • Element properties must be strings
  • Requires three syntax-heavy "languages" to program: HTML, CSS, Javascript

Clone this wiki locally