Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ExtendScript/extendscriptr
An NPM command line tool to compile modern javascript (es5 & es6) into executable extendscript (es3)
https://github.com/ExtendScript/extendscriptr
Last synced: about 2 months ago
JSON representation
An NPM command line tool to compile modern javascript (es5 & es6) into executable extendscript (es3)
- Host: GitHub
- URL: https://github.com/ExtendScript/extendscriptr
- Owner: ExtendScript
- License: wtfpl
- Created: 2016-04-20T11:44:51.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2023-07-26T10:29:47.000Z (about 1 year ago)
- Last Synced: 2024-07-27T06:37:26.760Z (about 2 months ago)
- Language: JavaScript
- Homepage:
- Size: 1.44 MB
- Stars: 152
- Watchers: 22
- Forks: 15
- Open Issues: 21
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Extendscriptr
[![All Contributors](https://img.shields.io/badge/all_contributors-7-orange.svg?style=flat-square)](#contributors) [![npm version](https://badge.fury.io/js/extendscriptr.svg?style=flat-square)](https://badge.fury.io/js/extendscriptr) [![Join the chat at https://gitter.im/vogelino/extendscriptr](https://badges.gitter.im/vogelino/extendscriptr.svg?style=flat-square)](https://gitter.im/vogelino/extendscriptr?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![travis](https://travis-ci.org/ExtendScript/extendscriptr.svg?style=flat-square)](https://travis-ci.org/ExtendScript/extendscriptr)
Extendscriptr is NPM CLI module that allows you to benefit of many modern javascript features of es5 and es6 in a es3 extendscript environment.
## Why
Building scripts for Adobe products (mostly used for After Effects, InDesign, Photoshop or Illustrator) can be pain for the finger nails if you are used to proper javascript environments.
Extendscriptr relies on [`extendscript-es5-shim`](https://github.com/ExtendScript/extendscript-es5-shim) and focuses on mostly used prototypes as a priority that are tested in the different Adobe applications. This dependency will be improved over time to covers always more es5 and es6 features. Contributions are welcome!
Extendscriptr doesn't use an existing full-stack polyfills like `babel-polyfill`, `es5-shim` or `shim.js` as they are intended for the browser and don't work well in adobe applications.
## Prerequisites
This tool currently needs npm version 3.x or higher due to the flattened folder structure.
## Usage
We recommend using it as a local dependency\*
- `npm install extendscriptr --save-dev`
- `extendscriptr --script src/scripts/helloWorld.js --output dist/helloWord.js`
- open the outputted file with ExtendScript Toolkit OR place your script in the relevant application script folder
- run it### Watch mode
Exstendscriptr does not have any built-in _watch_ capability, but you can accomplish this using the [watch](https://www.npmjs.com/package/watch) module:
```bash
npm install watch -D
```Run the following and Extendscriptr will automatically run every time you save a file in the `src/` directory:
```bash
./node_modules/.bin/watch "./node_modules/.bin/extendscriptr --script src/helloWorld.js --output dist/helloWord.js" src/
```### Contribute
We would be happy to have contributions from other members as well. Don't hesitate to make pull requests or contact us if you wish to get contributor rights.
### Report issues
Feel free to report any issue you would encounter using the module.
https://github.com/vogelino/extendscriptr/issues### License
WTFPL - Do whatever the fuck you want
## Contributors
Lucas Vogel
π» π¨
Fabian MorΓ³n Zirfas
π¬ π¨
Bruno Herfst
π»
Andy Dayton
π»
Stefano Masini
π»
bsky
π§
silmelumenn
π» β οΈThanks goes to these wonderful people ([emoji key](https://github.com/kentcdodds/all-contributors#emoji-key)):
This project follows the [all-contributors](https://github.com/kentcdodds/all-contributors) specification. Contributions of any kind welcome!