This is an automated email from the ASF dual-hosted git repository.

harbs pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/royale-docs.git


The following commit(s) were added to refs/heads/master by this push:
     new 094fd3f  what is royale
094fd3f is described below

commit 094fd3f87b024afde7bb8093f1ee4d71e0fa8493
Author: Harbs <[email protected]>
AuthorDate: Thu Dec 30 00:07:45 2021 +0200

    what is royale
---
 _data/toc.json            |  3 +++
 index.md                  |  2 +-
 welcome/what-is-royale.md | 53 +++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 57 insertions(+), 1 deletion(-)

diff --git a/_data/toc.json b/_data/toc.json
index 000c869..e864c34 100644
--- a/_data/toc.json
+++ b/_data/toc.json
@@ -5,6 +5,9 @@
             "path": "index.md",
             "children": [
                 {
+                    "path": "welcome/what-is-royale.md"
+                },
+                {
                     "path": "welcome/high-level-view.md"
                 },
                 {
diff --git a/index.md b/index.md
index ac5c9e7..e5793cb 100644
--- a/index.md
+++ b/index.md
@@ -33,7 +33,7 @@ With Royale, you can create a single code base that can be 
compiled to work like
 
 This is the main documentation for Apache Royale. If you are looking for the 
API Reference, [click 
here](http://royale.apache.org/asdoc/index.html){:target='_blank'}.
 
-The documentation ranges from a [high-level view](welcome/high-level-view) 
that gives an overview of Royale, through a review of Royale's [features and 
concepts](features-and-concepts) to help you be more productive. 
+The documentation ranges from an [intro](welcome/what-is-royale) and a 
[high-level view](welcome/high-level-view) that gives an overview of Royale, 
through a review of Royale's [features and concepts](features-and-concepts) to 
help you be more productive. 
 
 Use the table of contents to learn how to lay out your application's [user 
interface](user-interface), how to [work with data](working-with-data), and how 
to [unit-test](testing) your application. 
 
diff --git a/welcome/what-is-royale.md b/welcome/what-is-royale.md
new file mode 100644
index 0000000..d49d8dd
--- /dev/null
+++ b/welcome/what-is-royale.md
@@ -0,0 +1,53 @@
+---
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+# 
+# http://www.apache.org/licenses/LICENSE-2.0
+# 
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+layout: docpage
+title: What is Royale
+description: How Royale fits into the Javascript ecosystem
+permalink: /welcome/what-is-royale
+---
+# What is Royale?
+
+How Royale fits into the Javascript ecosystem
+
+When evaluating a framework or project, the first question you might ask is 
how is it the same or different as "x". How does this relate to other options? 
This document attempts to answer those questions.
+
+## It's a language
+At the heart of Royale, it's a language. Royale is the current shepherd of the 
ActionScript programming language. The most obvious language you would compare 
ActionScript to would be Typescript. The general goals of both are similar -- 
to add type protection for an ECMA language. There are differences between the 
approach taken by Typescript and ActionScript [which are discussed on a 
dedicated page](features/as3/actionscript-vs-typescript).
+
+## It's a compiler
+Royale compiles ActionScript for multiple run-times. The ActionScript compiler 
is an important piece of Royale. Currently, the targets are for Flash (mostly 
AIR applications today) and Javascript applications. However the architecture 
was designed to be platform agnostic and other native platforms can be targeted 
in the future.
+
+## It's a bundler
+You might compare Royale to Webpack, ES Build or Parcel. Royale compiles your 
app both for debugging and into a single JS file for deployment.
+
+## It's a toolbox
+Royale has a huge library of functionality. Because Royale is very smart about 
only including in your application parts actually used, Royale is able to 
include a very large library of functionality.
+
+## It's an ecosystem
+Royale does not use npm. That's both an advantage and a disadvantage. npm give 
you access to a huge amount of code. That's both a blessing and a curse. If 
you've ever tried to stay on top of auditing npm modules and keeping them up to 
date, you know it's a nightmare of dependencies. Even knowing what your code 
depends on is very difficult with npm.
+
+Royale tries to offset this by making a lot of functionality built in, so 
there's much less need for third party packages. If you do need third party 
libraries, you will need to include the pre-built js files explicitly.
+
+Libraries can be included in Royale projects. These are included as SWC files. 
The SWC files need to be compiled using Royale, but much open source 
ActionScript code can be compiled with little or no work for Royale.
+
+## It's a framework
+You might compare Royale to React, Angular or Vue. Royale gives you the 
building blocks to create complex Javascript applications using both 
declarative and imperative code. Royale differs from most frameworks in that 
it's very un-opinionated about **how** you build your apps. How you control 
state is up to you. Royale is also laser focused on performance. Read about 
[PAYG](features/payg) and [Beads](features/strands-and-beads) to learn more 
about the solutions we take to common problems.
+
+Royale tries to be as close to "vanilla" code as possible while giving you the 
tools you need when and where you need them.
+
+## It has component sets
+Whether you want to style everything yourself, want themed components or want 
to use third party styling like MDL or Spectrum, Royale has you covered.
\ No newline at end of file

Reply via email to