- Video Chaining
- Strudel.cc Integration
- P' Giang: JS ต่อ LLM แล้วพ่น text + image แล้วส่งเป็น pipeline เข้า image feed
- Background Output Node
- Butterchurn
- Add object palette -- quick add object at cursor
- LLM PromptDJ MIDI Gemini
- LLM Text Generation
- P' Giang: ดูแล้วเราอาจจะทำ output node เพื่อเอาไปออกอีกหน้าจอได้ แล้วเหมือนพวกนี้เป็น preview รอวันส่งออกไป แต่ดูแล้วเหมือนน่าจะทำได้เลย แบบว่า extend จอแล้วขยายหน้าต่างเอา
- P' Henry: Fullscreen (Entire Program)
- Saving and loading patches (serialization and deserialization)
- Command Palette
- Fix the video chaining bugs
- Fix output node chaining bugs
- SwissGL
- Refactor common node objects
- Video to LLM on GPU Pipeline
- Text-based objects and parameters (like in PureData and Max/MSP, useful for audio nodes)
- Native Slider object
- Audio Node Graph with Web Audio API, PureData style
- Text objects and parameters
- LFO
- ADSR Message
- ADSR Node
- FM Synthesis
- Audio Analysis for P5.js
- Audio Analysis for Hydra.js
- Audio Analysis for GLSL
- Python on Browser with Pyodide
- Send simple messages
- Moving Python to run on web worker
- AM Synthesis
- Microphone Input
- Markdown block
- LPF / HPF / BPF
- SetPortCount for P5
- SetPortCount for Hydra
- Custom expressions (Expr)
- Custom expressions in Audio Worklet (Expr~)
- Audio Sampler
- Drag in audio into canvas
- Audio Recorder into sample
- Drag in image file (image object)
- Drag in text file (markdown)
- Color code or label/tag audio nodes
- JS Block maxWidth
- SFZ Sample Support
- File locators: local fs vs cloud
- Local FS: search paths like Max MSP
- Cloud: hosted on S3
- fexpr~ (expr~ with circular ring buffer)
- Headless mode: Patching Framework
- examples and snippets for each node (e.g. sample hydra, sample chuck)
- Run custom JS code in AudioWorklet (dsp~)
- Group (Chun's suggestion)
- New FFT API e.g. FFT returns a
FFTHelperObject
that contains useful computations, e.g. getting energy. - Slider on Number in Editor
- GLSL
- JavaScript
- Slider on Color in Editor/Patcher
- GLSL
- JavaScript
- CodeMirror Autocompletion
- JS
- GLSL
- Hydra
- Strudel
- Loadbang (Bang on load)
- Try implementing Limiters
- AI Agent
- for co-creation and collaboration and constructivist learning
- customizable prompts / build your own agent
- Wireless send/receive message
- Wireless send/receive audio (Audio Bus)
- e.g. send reverb to mix
- Headless mode to prepare for nesting patchies
- Differentiate Svelte component mount/unmount and headless patch mount/unmount
- Auto-refresh P5
- Headless patching mode: run the patch without UI, just the services
- Web component
- MIDI Parameter Mapping on Numbers
- Using Stack.gl
- Show sliders or numeric input on text object parameter click
- Drag up and down to change number (like PureData)
- If min/max defined -> show slider range
- If no min/max -> show just text input
- Chun: Examples Gallery (like in TLDraw Computer website) and share on Hacker News
- Networked Messages: Send & Receive across computer
- Screen Sharing Input
- Live Collaboration Real-time
- Synchronized Clocks
- Native Webcam Input
- Import Patches with Abstractions, drag in JSON file
- Nested Patches with Subgraphs
- Web Audio Modules 2 (P' Thai)
- Preset: Numerical Displays
- Patchies Golang Server
- Patchies Server: CRUD Patch
- Patchies Server: OSC over WebSocket Proxy (P' Henry)
- SuperCollider Integration
- Virtual Players (Renick Bell Style)
- LLM Video Generation
- Simple Plotter
- Control Rate Clock
- Pixel Art block
- User can save an object with code as a new "object of presets" e.g. "mix" preset
- Snippet Library: Save and Load Code Snippet
- User-made Objects
- Custom user-made text-based objects, using the ObjectNode
- Create user-made custom visual objects
- Visual Assembly Canvas
- Stack Machine block + ASM Interpreter
- Bring over the visual blocks + integrate with standard messaging
- Rust Plugin System
- Uiua Interpreter
- 3D Rendering (Three.js or )
- Try using SuperCollider with Patchies
- Try Granular Synthesis
- Maximize a node preview temporarily
- Resize Canvas Objects