Feature request: Allow recipe pipeline to work on 'JSON' data instead of strings
- Dominant language
- JavaScript
- Stars
- 35.8k
- Forks
- 4.1k
- Avg merge
- 2d 26m
- Merged PRs (30d)
- 33
Description
**Is your feature request related to a problem? Please describe.**
While CyberChef is a very powerful tool, operations are working on strings. For certain problems that requires trying to interpret the string, for instance with regular expressions (Subsection).
An example use case I had, was that I needed to base64 decode part of a URI query parameter, using split to split the value.
**Describe the solution you'd like**
It would be very powerful if certain operations can optionally work on structured data. In the title I've mentioned 'JSON', altough that is more intended as a processing model than literal JSON.
For instance, ParseURL could have an option to return structured data instead of a string. Subsection could than select its target based on a JSON path instead of a regular expression.
All this would probably require operations to have a bit more meta-data and configuration to specify if they can accept strings and/or structured data and if they can produce string and/or structured data. I do think this would make CyberChef even more powerful.
**Additional context**
With the above changes, the following issues would probably be easily solvable:
https://github.com/gchq/CyberChef/issues/1820
https://github.com/gchq/CyberChef/issues/1756
Contributor guide
Research direction
The issue names no files, tests, or entry points. Start by mapping how recipe operations declare and pass their inputs and outputs, then assess structured-data handling, ParseURL results, and JSON-path selection. Done would require a defined, tested design for compatible operations and conversions.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- data, web-dev
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100