Low-level batchPlay powered API
- Dominant language
- JavaScript
- Stars
- 20
- Forks
- 10
- PR merge metrics
- No merged PRs in 30d
Description
Building extensions in Photoshop often requires to make operations as fast as possible.
While javascript API already offers some of the functionality, all of the functionality required is already available by running actions in batchPlay.
It would be great to get a javascript library with all functionality working as a wrapper on top of batchPlay, while still having access to low-level predefined batchPlay actions.
This would allow developers that don't need advanced functionality leverage power of batchPlay by using js wrapper directly and developers that do need advanced and fast operations chained together use pre-defined batchPlay actions directly and chan them in the necessary order without using javascript library methods directly.
As a more concrete example.
PS UXP JS library could expose builder methods that would allow to build ActionDescriptors for `batchPlay` like `Layer.ActionDescriptors.rename(parameters)` could return a descriptor that would rename a layer based on some parameters.
Or there could be `Channels.ActionDescriptors.invert()` or maybe even `Calculations.ActionDescriptors.calculate(properties)` or even prepared descriptors for Adjustment Layers and operations on them.
Then javascript UXP library could be using same low-level descriptors to have a more high-level set of methods like
`renameLayer()` could be internally using `Layer.ActionDescriptors.rename()`. And while low-lever descriptors are exposed, advanced users would be able to leverage them too directly.
Contributor guide
Research direction
No files, tests, or entry points are identified. First clarify the scope of the UXP JavaScript wrapper and the exposed batchPlay descriptors; completion would require an agreed API surface and corresponding implementation and tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- api
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100