
This extension adds a custom editor for FlowFile v3 documents and opens *.flowfile and *.flowfile-v3 files in a structured editor instead of plain text.
It also features a command for creating FlowFile v3

FlowFile v3 binary format support
The editor now uses a real FlowFile v3 binary stream model based on NiFiFF3 packaging:
- Each record starts with ASCII magic header:
NiFiFF3 - Then attribute count (length encoded)
- Then repeated attribute key/value strings (each length encoded)
- Then 8-byte content length (big-endian)
- Then content bytes
- Multiple records can be concatenated in one file and are fully supported in the UI
Length encoding uses:
- 2-byte unsigned length when value is
< 65535 0xFFFFmarker followed by 4-byte unsigned length for larger values
UI behavior and assumptions
- The custom editor lets you add/remove/select multiple records in one file.
- Each record supports editing attributes.
- Record content is preserved as raw bytes and is not decoded into UTF-8 text in the editor.
- Use the Open Content button to open the selected record content in a separate editor tab (written to a temporary file).
Development
npm install
npm run compile
npm run lint
npm test
npx @vscode/vsce package --no-dependencies
TODO
- Add actual light and dark mode icons
- Move to using actual files in
package.jsoninstead of .vscode ignore