@apostrophecms/cli

Commandline generator and configurator for Apostrophe CMS

Usage no npm install needed!

<script type="module">
  import apostrophecmsCli from 'https://cdn.skypack.dev/@apostrophecms/cli';
</script>

README

Apostrophe CLI

The Apostrophe CLI is a cross-platform starting point for creating and configuring ApostropheCMS projects, providing a simple boilerplate generator and wrapping other useful functions into an easy to use command line tool.

Requires Node.js 8+

First, install @apostrophecms/cli as a global NPM module:

npm install -g @apostrophecms/cli

To view the available commands in a given context, execute the apos command with no arguments:

apos

Note: All Apostrophe CLI commands can also be run with apostrophe, the legacy command, in addition to apos.

Create a project

To create a new project with the tool:

apos create <shortname-without-spaces>

This will create a local copy of the Apostrophe 3 boilerplate.

options

--a2

Use the --a2 flag when creating an Apostrophe 2 project to use the boilerplate for that version.

--starter

Run create with a --starter flag to start from a Github repository other than the standard starters. For example, apos create <shortname-without-spaces> --starter=https://github.com/apostrophecms/apostrophe-open-museum.git would create a project using the Open Museum demo.

Create a widget

To bootstrap the necessary files and basic configuration for a new Apostrophe widget, run the following command from within your Apostrophe project's root directory:

# "-widgets" will automatically be appended to the end of your module name
apos add widget fancy-button

Note: You will then need to register this widget module in app.js so it is available in your project code. The same is true for the commands below when you create a piece module or generic module.

// app.js
module.exports = {
  // ...
  'fancy-button-widgets': {},
  // ...
}

Add a --player option to the command to include the client-side Javascript "player" boilerplate to the new widget module as well.

apos add widget tabs --player

Create a piece

To bootstrap the necessary files and basic configuration for a new Apostrophe piece type, run the following command from within your Apostrophe project's root directory:

apos add piece vegetable

Then remember to register 'vegetable': {} in app.js above.

If you run the add piece command with the --page flag, the command will also set up a corresponding piece-pages module with your new piece type. Similarly, you can run the add piece command with the --widget flag, which will also set up a corresponding piece-widgets module along with your new piece type. These flags can be used together or separately.

apos add piece vegetable --page --widget

Create an empty Apostrophe module

To bootstrap the necessary files and basic configuration for a brand-new Apostrophe module that doesn't extend one of the usual suspects like pieces or widgets:

apos add module <module name>

Remember to register the module in app.js with the other module types.


For more documentation for ApostropheCMS, visit the documentation site.