AdobeDocs / AdobeDocs/uxp

Low-level batchPlay powered API

Open
#52 0 comments 0 reactions 0 assignees View on GitHub
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.