NativeScript is an open source framework for building truly native mobile apps with JavaScript. Use web skills, like Angular, FlexBox and CSS, and get native UI and performance on iOS and Android.
TypeScript JavaScript Other
Permalink
Failed to load latest commit information.
.github docs: update wording describing issue lifecycle (#5742) Apr 30, 2018
.vscode chore(tslint): update tslint rules and fix errors (#5747) Apr 26, 2018
apps test(): add scenarios for listview scrolling (#6092) Jul 20, 2018
build chore(tslint): update tslint rules and fix errors (#5747) Apr 26, 2018
e2e refactor: migrate animation-demo repo content (#5970) Jun 19, 2018
tests chore: add test for http gzip request (#6076) Jul 18, 2018
tns-core-modules feat(UI): Added animated scroll to index for ListView (#6077) Jul 19, 2018
tns-platform-declarations Add missing globalAndroid import (#6080) Jul 18, 2018
unit-tests refactor: Handle TS2.7 stricter tuples checks (#5366) Feb 1, 2018
.ackrc Add an ackrc for easier searching Feb 24, 2016
.ctags_exclude (chore) Exclude platform d.ts files from ctags traversals. May 16, 2016
.gitattributes Use LF for shell scripts (#5374) Feb 5, 2018
.gitignore feat: Pass NS app to the native app instead of presenting it over the… Jun 27, 2018
.travis.yml Do not publish next version from Travis CI (#4483) Jun 30, 2017
AUTHORS Update Authors Feb 16, 2016
CHANGELOG.md docs: add changelog for 4.1.0 (#5871) May 29, 2018
CODE_OF_CONDUCT.md chore: update community files (#5302) Jan 22, 2018
CONTRIBUTING.md feat: Flexible Error/Exception handling (#5929) Jun 18, 2018
CodingConvention.md Minor fixes (#4806) Oct 4, 2017
CreateNewModule.md Add CONTRIBUTING.md and update guides (#4511) Jul 6, 2017
DevelopmentWorkflow.md Typo on # 146? (#5980) Jun 21, 2018
HandlingErrors.md feat: Flexible Error/Exception handling (#5929) Jun 18, 2018
LICENSE chore: update community files (#5915) Jun 5, 2018
Modules30Changes.md Update Modules30Changes.md May 17, 2017
PULL_REQUEST_TESTS.md Add widgets comment message description Feb 27, 2017
README.md docs: add link to NativeScript roadmap (#5380) Feb 5, 2018
WritingUnitTests.md chore(docs): Update writing-tests.md with note about code snippets co… Mar 13, 2018
build-docs.sh @types/handlebars@4.0.33 (#4667) Aug 8, 2017
expect.exp Add timeout warning log for test runner. Increase timeout to 1200 Sep 16, 2016
gruntfile.js fix(grunt): Add platforms folder to produced NPM package (#6015) Jul 3, 2018
package.json chore(tsc): enable noUnusedLocals compiler option for tns-core-modules ( May 10, 2018
tsconfig.json feat(typings): Adding Android typings for API levels from 17 to 27 (#… Jul 5, 2018
tsconfig.modules.json chore(tsc): enable noUnusedLocals compiler option for tns-core-modules ( May 10, 2018
tsconfig.public.es2016.json npm scripts for typechecking public .d.ts-es and running tslint (#2934) Oct 27, 2016
tsconfig.public.es6.json npm scripts for typechecking public .d.ts-es and running tslint (#2934) Oct 27, 2016
tsconfig.shared.json Housekeeping node tests, renamed to unit-tests (#4936) Oct 20, 2017
tsconfig.typedoc.json ignore transition-definitions.android.d.ts from typedoc (#6038) Jul 9, 2018
tsconfig.unit-tests.json feat(typings): Adding Android typings for API levels from 17 to 27 (#… Jul 5, 2018

README.md

NativeScript Build Status

NativeScript logo

NativeScript is a framework for building native iOS and Android apps using JavaScript and CSS. NativeScript renders UIs with the native platform’s rendering engine, no WebViews, resulting in native-like performance and UX.

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.

Check out the links below to get started:

IMPORTANT: NativeScript is an inclusive community, and we expect all NativeScript community members, users, and contributors to treat each other respectfully. As such, all users of this repository must adhere to the NativeScript community code of conduct.

For CTOs

Making the right technology choices is key to success. Our CTO’s guide to NativeScript helps you understand why NativeScript is the right choice for your next mobile project.

Getting Started and Installation

Our Getting Started Guides are hands-on tutorials that walk you through installing NativeScript and building a real iOS and Android application.

NativeScript architecture diagram

Below is a common NativeScript architecture diagram. In more detail, read the How NativeScript Works article.

Architecture diagram

Quick Links

Repositories

The NativeScript framework consists of a number of components, all of which are open source and on GitHub. Here are the major ones:

  • Cross-platform modules npm Waffle.io - NativeScript Modules and Angular
    • This repo contains the NativeScript cross-platform modules, which abstract iOS and Android APIs into JavaScript APIs—e.g. camera.takePicture(). The modules are written in TypeScript.
  • iOS runtime npm Waffle.io - NativeScript iOS Runtime
    • This repo contains the NativeScript iOS runtime—the code that hosts NativeScript iOS apps, and allows JavaScript code to be executed on iOS devices. The iOS runtime is written in a fun mix of C++, Objective-C, and more.
  • Android runtime npm Waffle.io - NativeScript Runtimes and CLI
    • This repo contains the NativeScript Android—the code that hosts NativeScript Android apps, and allows JavaScript code to be executed on Android devices. The Android runtime is written in a fun mix of C++ and Java.
  • CLI npm Waffle.io - NativeScript CLI
    • This repo contains the NativeScript command-line interface, which lets you create, build, and run apps using the NativeScript framework. The CLI is written in TypeScript.
  • Docs
    • This repo contains the NativeScript framework documentation, which is available at http://docs.nativescript.org/. The docs are written in Markdown.

In addition to the code that makes up the NativeScript framework itself, we also provide a number of open-source sample apps that you can reference while building your NativeScript application.

Contributing

We love PRs, and accept them for all of our repositories—even docs! Please follow our contribution guide if you want to become part of the project.

Angular

We worked together with the Google Angular team to make Angular 2+ work on top of NativeScript. To use Angular with NativeScript please follow the getting started article.

Get Help

Please, use github issues strictly for reporting a bugs or requesting features. For general NativeScript questions and support, check out the NativeScript community forum or ask our experts in NativeScript community Slack channel.