Skip to content

Inventsable/generator-cep-vue-cli

Repository files navigation

NOTICE

Want something even better? Use the new version bombino instead.


Generate an Adobe CEP extension in a few simple steps:


Contributors

Special thanks to Adam and Eric for their invaluable (and shockingly free) help

tom adam eric
Tom Scharstein Adam Plouff Eric Robinson
Creator General Wizardry Inspector General

Installation

First, install Yeoman and generator-cep-vue-cli using npm (we assume you have pre-installed node.js).

npm install -g yo
npm install -g generator-cep-vue-cli

Then generate your new project:

# Recommended inside ../AppData/Roaming/CEP/extensions
yo cep-vue-cli

# Prompt for name
# Prompt for template
# Prompt for Adobe apps to be included in manifest and typescript
# Prompt for base localhost port

Templates

See more information about usage:

  • Bare (No extras)
  • Basic (Barebones with utility components)
  • Router (Basic & Vue Router)
  • Plus (Vuetify, Router & Lottie)

Commands

Each template comes with 5 commands baked in (see details here):

  • npm run help - A full list of the commands available and descriptions.
  • npm run switch - Reports whether in developer or production context and can switch automatically.
  • npm run update - Reports current version of panel in manifest and prompts to update Major, Minor, or Micro.
  • npm run register - Reports the current user data (if any) and prompts to save new info to be used in certificates.
  • npm run sign - Automatically stages and signs the extension, placing it in a ./archive directory within the current panel.

Extras and Add-ons

  • starlette (Shipped in all templates) - Color and theming engine that handles all host app colors and exposes them as reactive CSS variables to save you the need to do any theme or color logic yourself.
  • leylo - Library to integrate a Firebase backend into any panel with a single command and line of code, providing over 40 CRUD actions for Firestore database.
  • FS Example - Demonstration of how to include require() for both Dev and Production contexts (needed due to being mixed content within an iframe while in Developer context) No longer needed! Panels now automatically work with require() with no additional steps regardless of context.

License

MIT © Tom Scharstein