CLI to build a template application and widgets using the ArcGIS API for JavaScript
Clone or download
rene rubalcava
rene rubalcava 4.10.0
Latest commit 705ccf7 Jan 8, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github cli party May 9, 2018
__mocks__ refactor cli modules, update terminal outputs Jun 27, 2018
flow-typed/npm cli party May 9, 2018
src update yargs and add scriptName Oct 29, 2018
templates update to 4.10 Jan 8, 2019
.babelrc cli party May 9, 2018
.eslintrc cli party May 9, 2018
.flowconfig update template application May 11, 2018
.gitignore update dependencies Jul 20, 2018
.travis.yml add badges and travis yml May 23, 2018
CONTRIBUTING.md cli party May 9, 2018
LICENSE cli party May 9, 2018
README.md fixed typo Oct 30, 2018
package-lock.json 4.10.0 Jan 8, 2019
package.json 4.10.0 Jan 8, 2019

README.md

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

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"] [default: "jsapi"]
  -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"] [default: "jsapi"]
  -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"] [default: "jsapi"]
  -h, --help  Show help                                                [boolean]

Template Application

The template application is written in TypeScript and utilizes the @arcgis/webpack-plugin.

You can develop, test, and build the application using various commands.

Run the application in development mode with a local development server.

npm start

Run the unit tests for the application

npm test

Build the application for deployment.

npm run build

Run a production build of the application, but serve it up locally to see how the built app will behave.

npm run serve

Use npm run serve to full test that Service Workers are working correctly with webpack-dev-server self signed certificates. Refer to this article on how to run Chrome with proper flags enabled for development purposes.

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 2018 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