Branch: master
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
119 lines (98 sloc) 5.36 KB

Contribute to the Telerik NativeScript Command-Line Interface

Help us improve the Telerik NativeScript CLI

The Telerik NativeScript CLI lets you create, build, and deploy NativeScript-based projects on iOS and Android devices.

Report an Issue

If you find a bug in the source code or a mistake in the documentation, you can submit an issue to our GitHub Repository. Before you submit your issue, search the archive to check if a similar issues has been logged or addressed. This will let us focus on fixing issues and adding new features. If your issue appears to be a bug, and hasn't been reported, open a new issue. To help us investigate your issue and respond in a timely manner, you can provide is with the following details.

  • Overview of the issue: Provide a short description of the visible symptoms. If applicable, include error messages, screen shots, and stack traces.
  • Motivation for or use case: Let us know how this particular issue affects your work.
  • Telerik NativeScript version(s): List the current version and build number of the CLI interface. You can get it by running tns --version. Let us know if you have not observed this behavior in earlier versions and if you consider it a regression.
  • System configuration: Provide us with relevant system configuration information such as operating system, network connection, proxy usage, etc. Let us know if you have been able to reproduce the issue on multiple setups.
  • Steps to reproduce: If applicable, submit a step-by-step walkthrough of how to reproduce the issue.
  • Related issues: If you discover a similar issue in our archive, give us a heads up - it might help us identify the culprit.
  • Suggest a fix: You are welcome to suggest a bug fix or pinpoint the line of code or the commit that you believe has introduced the issue.

Back to Top

Request a Feature

You can request a new feature by submitting an issue with the feature label to our GitHub Repository. If you want to implement a new feature yourself, consider submitting it to the GitHub Repository as a Pull Request.

Back to Top

Contribute to the Code Base

Before you submit a Pull Request, consider the following guidelines.

  • Search GitHub for an open or closed Pull Request that relates to your submission.
  • Clone the repository.
    git clone
  • Run the setup script. This will initialize the git submodule, install the node dependencies and build with grunt.
    npm run setup
  • Make your changes in a new git branch. We use the Gitflow branching model so you will have to branch from our master branch.
    git checkout -b my-fix-branch master
  • Create your patch and include appropriate test cases.
  • Build your changes locally.
  • Ensure all the tests pass.
    ./node_modules/.bin/grunt test
  • Ensure that your code passes the linter.
    ./node_modules/.bin/grunt lint
  • Commit your changes and create a descriptive commit message (the commit message is used to generate release notes).
    git commit -a
  • Push your branch to GitHub.
    git push origin my-fix-branch
  • In GitHub, send a Pull Request to nativescript-cli:master.
  • If we suggest changes, you can modify your branch, rebase, and force a new push to your GitHub repository to update the Pull Request.
    git rebase master -i
    git push -f

That's it! Thank you for your contribution!

When the patch is reviewed and merged, you can safely delete your branch and pull the changes from the main (upstream) repository.

  • Delete the remote branch on GitHub.
    git push origin --delete my-fix-branch
  • Check out the master branch.
    git checkout master -f
  • Delete the local branch.
    git branch -D my-fix-branch
  • Update your master branch with the latest upstream version.
    git pull --ff upstream master

Back to Top

Updating the CLI documentation

The CLI documentation is what you see when running the tns help command. This documentation is distributed as part of the CLI package and is generated from the *.md files that can be found in man_pages folder The output of the documentation is html static pages that are generated on post install hook of the CLI installation. In addition, documentation generation is triggered every time there is no html article for the respective help command that is executed.

In order to see a change applied in your development workspace after editing the *.md files, you can use the tns dev-generate-help command. This will trigger regeneration of all html files on your local environment. Mind that you need to run from the /bin folder of the nativescript_cli.

Back to Top