/arcgis-js-cli

CLI to build a template application and widgets using the ArcGIS API for JavaScript

Primary LanguageJavaScriptApache License 2.0Apache-2.0

@arcgis/cli

npm version build status apache licensed

This CLI will allow you to quickly scaffold various applications for the ArcGIS API for JavaScript.

Usage

Prerequisites

You will need node v8+.

  • NOTE FOR WINDOWS USERS - You may need to install the Windows-Build-Tools to compile npm modules for this project. npm install --global --production windows-build-tools

Installation

From NPM

npm install -g @arcgis/cli

In a terminal, run:

arcgis --help

This will output the following:

Usage: arcgis <name> [dest] -t <type>

Commands:
  arcgis create <name> [dest]  Create a new application.
  arcgis init [type]           Initialize a new application in current directory
  arcgis widget <name> [type]  Create a new Widget.

Quick Start

default template application

arcgis create jsapi-app

react template application

arcgis create jsapi-react-app -t react

vue template application

arcgis create jsapi-vue-app -t vue

calcite-app-components template application using CDN

arcgis create jsapi-calcite-app -t calcite --cdn

Sample Apps

Features

Create a new application

$ arcgis create <name> [dest]

Create a new application.

Options:
  --version   Show version number                                      [boolean]
  --name, -n  directory and package name for the new app
  --dest      Directory to create the application in                                     [default: <name>]
  --type, -t  A project template           [choices: "jsapi". "react", "vue", "calcite"] [default: "jsapi"]
  --cdn       Project template using JSAPI CDN (only valid with default or calcite)      [default: false]
  -h, --help  Show help                                                [boolean]

Initialize a new application in current directory

$ arcgis init [type]

Initialize a new application in current directory

Options:
  --version   Show version number                                      [boolean]
  --type, -t  A project template           [choices: "jsapi". "react", "vue", "calcite"] [default: "jsapi"]
  --cdn       Project template using JSAPI CDN (only valid with default or calcite)      [default: false]
  -h, --help  Show help                                                [boolean]

Create a new widget

$ arcgis widget <name> [type]

Create a new Widget.

Options:
  --version   Show version number                                      [boolean]
  --name, -n  Name of new widget
  --type, -t  A widget template            [choices: "jsapi", "exb"] [default: "jsapi"]
  -h, --help  Show help                                                [boolean]

Experience Builder Widgets

The CLI can be used to scaffold custom widgets for the ArcGIS Experience Builder Developer Edition.

You will want to run the CLI in the extracted root directory of your Experience Builder installation.

arcgis widget my-widget -t exb

This will install your widget in the Experience Builder folder structure as follows.

<Experience-Builder-Installation>\client\your-extensions\widgets\MyWidget\

Issues

Find a bug or want to request a new feature enhancement? Let us know by submitting an issue.

Contributing

Anyone and everyone is welcome to contribute. We do accept pull requests.

  1. Get involved
  2. Report issues
  3. Contribute code
  4. Improve documentation

Licensing

Copyright 2020 Esri

Licensed 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.

A copy of the license is available in the repository's LICENSE file