Reorganize README with clearer messaging and calls to action

Closes #1493
This commit is contained in:
TJ VanToll
2016-02-04 10:53:31 -05:00
parent 630daa03e9
commit 75d693a288

View File

@ -1,70 +1,53 @@
[![Build Status](https://travis-ci.org/NativeScript/NativeScript.svg)](https://travis-ci.org/NativeScript/NativeScript) # NativeScript [![Build Status](https://travis-ci.org/NativeScript/NativeScript.svg)](https://travis-ci.org/NativeScript/NativeScript)
# Welcome to the NativeScript framework repository
## What is the NativeScript framework ![NativeScript logo](http://i.imgur.com/YmNIMqS.png)
With the NativeScript framework you can use your JavaScript and CSS skills to write native mobile applications for [iOS](https://www.apple.com/ios/), [Android](https://www.android.com/) and (soon) [Windows Phone](http://www.windowsphone.com/en-us). There is no *WebView* involved in rendering the app, as the UI is rendered by the native platform's rendering engine. Because of that, the app's entire UX **is** native. [NativeScript](http://www.nativescript.org) is a framework for building native iOS and Android apps using JavaScript and CSS. NativeScript renders UIs with the native platforms rendering engine—no [WebViews](http://developer.telerik.com/featured/what-is-a-webview/)—resulting in native-like performance and UX.
The NativeScript framework enables you to use a complete stack of cross-platform APIs to write your application code or, if you need to, you can directly access all platform-specific native APIs using JavaScript only. Thats right—you can access all native APIs, not only the ones we thought would be useful! NativeScript provides a best-of-both-worlds development experience. Our cross-platform JavaScript modules give you the convenience of writing iOS and Android apps from a single JavaScript codebase, while our runtimes give you the power of accessing native APIs, SDKs, and frameworks when you need them—all without needing to open Xcode or Android Studio. NativeScript was created and is supported by [Telerik](http://www.telerik.com/).
We did not want to create just yet another ecosystem around a native cross-platform framework. We wanted to integrate and play well with all existing JavaScript and native iOS/Android/Windows ecosystems. That is why we also support using existing JavaScript libraries, as well as existing native Objective-C, Java and .NET libraries. We want to stress that you *don't need to know Objective-C, Java or .NET* in order to reuse these libraries—their entire APIs are available in JavaScript with no changes. You can read more about [why NativeScript may be a good fit for your next project](https://github.com/NativeScript/NativeScript/wiki/Why-NativeScript%3F), or check out the links below to get started.
Because of the features listed above you get some important functionality right out of the box. The first is that applications built using the NativeScript framework support the same accessibility models as native apps. This is important for anyone creating apps that need to meet certain accessibility standards before going live. This is also very useful when you start implementing functional or unit tests for your app. Several existing cross-platform tools like [Appium](http://www.appium.io) already work directly with the NativeScript framework and provide accessibility automation.
The second major feature you get out of the box is 0-day support for new native platforms. Because the NativeScript framework exposes unmodified native APIs and UI components, you can use the latest native APIs and new UI components when Apple, Google or Microsoft updates their mobile platforms.
So lets summarize what the NativeScript framework enables you as of today:
- Build 100% native cross-platform apps, with a declarative UI, and the ability to implement platform-specific UIs. * [Getting Started and Installation](#getting-started-and-installation)
- Share 100% of your code or use platform-specific APIs, depending on the app youre building. * [Quick Links](#quick-links)
- Code in standards-based ECMAScript 5 JavaScript. ES6 support is coming soon. * [Repositories](#repositories)
- Use standards-based CSS syntax for styling. * [Contributing](#contributing)
- Use rich data binding and existing UI patterns to easily build complex user interfaces. * [Angular 2](#angular-2)
- Reuse any native library available in Objective-C, Java or .NET.
- Reuse any JavaScript library that is not browser-dependent.
- Reuse the QA tools for accessibility automation to write tests.
- Use the latest native platform features to create an amazing native user experience.
- Code in any IDE of your choice to implement your applications code using the [NativeScript framework's CLI](http://npmjs.org/nativescript).
- Use [Telerik Platform](http://platform.telerik.com) and AppBuilder products and the full Visual Studio integration to get a rich development experience. Paid support is also available.
We hope this gives you a good idea about what you can expect from the NativeScript framework.
To learn more about the NativeScript framework, you can check the following resources: ## Getting Started and Installation
- [The NativeScript framework web site](http://www.nativescript.org) Our [Getting Started Guide](http://docs.nativescript.org/start/getting-started) is a hands-on tutorial that walks you through installing NativeScript and building a real iOS and Android application.
- [The NativeScript framework blog](http://www.nativescript.org/blog)
## Angular 2.0 ## Quick Links
NativeScript is working together with the Google Angular JS team to make Angular 2.0 work on top of NativeScript. To check our progress please see the following links
- **[NativeScript Angular 2.0 plugin](https://www.npmjs.com/package/nativescript-angular)** - This plugin is the only thing you need to install in order to enable Angular 2.0 in NativeScript
- **[TodoMVC sample](//github.com/NativeScript/sample-ng-todomvc)** - The classic TodoMVC sample implemented with NativeScript and Angular 2.0
## Most popular repositories: - [NativeScripts home page](http://nativescript.org)
- **[The current repo](//github.com/NativeScript/NativeScript/)** - Stores the code of the cross-platform modules, written in TypeScript - [NativeScripts documentation](http://docs.nativescript.org/)
- **[iOS Runtime](//github.com/NativeScript/ios-runtime/)** - Holds the runtime, allowing the JavaScript code of your application to be executed on an iOS device - [@NativeScript on Twitter](http://twitter.com/NativeScript)
- **[Android Runtime](//github.com/NativeScript/android-runtime)** - Holds the runtime, allowing the JavaScript code of your application to be executed on an Android device - [NativeScripts blog](http://nativescript.org/blog)
- **[NativeScript CLI](//github.com/NativeScript/nativescript-cli)** - Contains the Command-Line Interface for creating an application using the NativeScript framework - [NativeScripts community forum](https://groups.google.com/forum/#!forum/nativescript)
- **[Docs](//github.com/NativeScript/docs)** - Contains the NativeScript framework documentation (available on http://docs.nativescript.org/) in MarkDown format - [NativeScript on Stack Overflow](http://stackoverflow.com/questions/tagged/nativescript)
- **[TelerikNEXT conference app](//github.com/NativeScript/sample-TelerikNEXT)** - Stores the code of a complete sample application using user authentication and cloud storage.
- **[Hello-World Template](//github.com/NativeScript/template-hello-world)** - Contains the code of the application the CLI creates by default
## Getting Started and How to Install the NativeScript framework ## Repositories
Please follow this [article to get started with the NativeScript framework](http://docs.nativescript.org/getting-started).
## Documentation The NativeScript framework is made up a number of components, all of which are open source and on GitHub. Here are the major ones:
Comprehensive documentation is available at [docs.nativescript.org](http://docs.nativescript.org).
## Supported npm modules - [The current repo](//github.com/NativeScript/NativeScript/) contains the code of the [NativeScript cross-platform modules](http://docs.nativescript.org/core-concepts/modules), which abstract iOS and Android APIs into JavaScript APIs—e.g. `camera.takePicture()`. The modules are written in TypeScript.
List of supported npm modules is available at [supported-npm-modules](https://github.com/NativeScript/NativeScript/wiki/supported-npm-modules). - The [iOS Runtime repo](//github.com/NativeScript/ios-runtime/) contains the code that hosts the iOS app, and allows the JavaScript code of your application to be executed on an iOS device. The iOS runtime is written in a fun mix of C++, Objective-C, and more.
- The [Android Runtime repo](//github.com/NativeScript/android-runtime) contains the code that hosts the Android app, and allows that JavaScript code of your application to be executed on an Android device. The Android runtime is written an even more fun mix of C++ and Java.
- The [NativeScript CLI repo](//github.com/NativeScript/nativescript-cli) contains the command-line interface for creating an application using the NativeScript framework. The CLI is written in TypeScript.
- The [NativeScript Docs repo](//github.com/NativeScript/docs) contain the NativeScript framework documentation which is available on <http://docs.nativescript.org/>. The docs are written in Markdown.
## Helping us to improve the NativeScript framework In addition to the code that makes up the NativeScript framework itself, we also provide a number of [open-source sample apps](https://www.nativescript.org/app-samples-with-code) that you can reference while building your NativeScript application.
We love PRs! Please follow our [contribution guide](https://www.nativescript.org/contribute) if you want to become part of the project.
## Contributing
We love PRs, and accept them for all of our repositories—even docs! Please follow our [contribution guide](https://www.nativescript.org/contribute) if you want to become part of the project.
## Angular 2
We are [working together with the Google Angular JS team](http://angularjs.blogspot.com/2015/12/building-mobile-apps-with-angular-2-and.html) to make Angular 2.0 work on top of NativeScript. To check our progress please see the following links:
- [NativeScript Angular 2.0 plugin](https://www.npmjs.com/package/nativescript-angular) - This plugin is the only thing you need to install in order to enable Angular 2.0 in NativeScript.
- [TodoMVC sample](//github.com/NativeScript/sample-ng-todomvc) - The classic TodoMVC sample implemented with NativeScript and Angular 2.0.
## Contact info
- **Web site** - [http://nativescript.org](http://www.nativescript.org)
- **Twitter** - [@NativeScript](http://twitter.com/NativeScript)
- **Blog** - [http://nativescript.org/blog](http://www.nativescript.org/blog)
- **Forum** - [General discussion](https://groups.google.com/forum/#!forum/nativescript)
- **StackOverflow** - [http://stackoverflow.com/questions/tagged/nativescript](http://stackoverflow.com/questions/tagged/nativescript)
- **IRC Chatroom** - [http://webchat.freenode.net/?channels=nativescript](http://webchat.freenode.net/?channels=nativescript)
![](https://ga-beacon.appspot.com/UA-111455-24/nativescript/nativescript?pixel) ![](https://ga-beacon.appspot.com/UA-111455-24/nativescript/nativescript?pixel)