Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@koopjs/cli

Package Overview
Dependencies
Maintainers
4
Versions
27
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@koopjs/cli

CLI tool to build Koop projects

  • 0.7.0
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
130
decreased by-32.64%
Maintainers
4
Weekly downloads
 
Created
Source

@koopjs/cli

npm package Build Status

An easy-to-use CLI tool to quickly build Koop applications and plugins

Features

  • follow Koop specification
  • minimal project templates
  • full development cycle support
  • console commands + Node.js APIs
  • cross-platform

Install

Use npm

npm install -g @koopjs/cli

Use yarn

yarn global add @koopjs/cli

Once installed the koop command is available at the console.

Example

Create a new Koop application with the name my-koop-app

# create a project folder and initialize it
koop new app my-koop-app

# cd in the folder
cd my-koop-app

Add a provider @koopjs/filesystem-s3 from npm

# install the provider and register it to the koop app
koop add provider @koopjs/filesystem-s3

Add a custom provider that connects to a local database

# add boilerplate provider files at src/providers/local-db and register it to
# the koop app (though you still need to implement the provider)
koop add provider providers/local-db --local

Test out your work

# run the koop server
koop serve

Commands

koop <command>

Commands:
  koop new <type> <name>  create a new koop project
  koop add <type> <name>  add a new plugin to the current app
  koop test               run tests in the current project
  koop serve [path]       run a Koop server for the current project

Options:
  --quiet    supress all console messages except errors
                                                      [boolean] [default: false]

new

The new command creates a new Koop project from the template at the current location.

koop new <type> <name>

Positionals:
  type  project type
                         [string] [choices: "app", "provider", "auth", "output"]
  name  project name                                                    [string]

Options:
  --config        specify the project configuration in JSON             [string]
  --skip-install  skip dependence installation        [boolean] [default: false]
  --skip-git      do not initialize Git               [boolean] [default: false]
  --npm-client    an executable that knows how to install npm package
                  dependencies[string] [choices: "npm", "yarn"] [default: "npm"]

For more details on the project templates, please take a look at the Koop specification and samples.

add

The add command adds a Koop plugin to the current Koop app.

koop add <type> <name>

Positionals:
  type  plugin type    [string] [choices: "output", "provider", "cache", "auth"]
  name  plugin name                                                     [string]

Provider Options:
  --route-prefix  add a prefix to all of a registered routes            [string]

Options:
  --config        specify the plugin configuration in JSON              [string]
  --skip-install  skip plugin installation            [boolean] [default: false]
  --local         add a local private plugin          [boolean] [default: false]

Then you can add options to customize the plugin. Take a look at the Plugin Initialization documentation for more details.

serve

The serve command starts a test server for the current project.

For Koop apps, the command runs the app directly.

For Koop plugins, the command creates a Koop server that includes the plugin and a simple GeoJSON provider named dev-provider (source). This GeoJSON provider is only registered if the current Koop project is not a provider project. It makes sure the Koop server has an output (geoservices by default) and a provider. When the GeoJSON provider is used, the data file path is required to provide test data (must be *.geojson).

If a more customized test server is needed, you can provide your test server file path to the command.

koop serve [path]

run a koop server for the current project

Positionals:
  path  server file path                                                [string]

Options:
  --port      port number of the server                                 [number]
  --data      path to a GeoJSON data file for testing Koop plugin       [string]
  --debug     enable nodejs inspector for debugging                     [boolean]
  --watch     enable auto-restart on file change                        [boolean]

test

The test command run tests in the current koop project.

koop test

APIs

This tool can be also used as a library.

const cli = require('@koopjs/cli')

// create a koop app project at /Documents
cli.new('/Documents', 'app', 'my-app', {
  config: {
    port: 8080
  }
})

new(cwd, type, name, [options])

Create a Koop project at the given directory.

  • cwd: current work directory
  • type: project type
  • name: project name

Return a promise.

add(cwd, type, name, [options])

Add a plugin to the given Koop app

  • cwd: Koop app directory
  • type: project type
  • name: Koop plugin name

Return a promise.

Keywords

FAQs

Package last updated on 28 Aug 2020

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc