# Roadmap

🟩 TODO\
✅ Done (in any shippable stage)\
👷‍♂️ In Progress

* User Interface
  * 🟩 Allow for custom splitting of the window view (aka [Blender's Areas](https://docs.blender.org/manual/en/latest/interface/window_system/areas.html))
  * 🟩 Customizable Overlay Widgets
  * 🟩 Workspaces (loadable to whole window or to a single Area)
  * 🟩 Drag and Drop (in various views)
  * 🟩 Undo / History browsing
  * Alternative Controls
    * 🟩 Keyboard only
    * 🟩 Gamepad only
    * 🟩 MIDI Controller only
  * Schematic View
    * ✅ Grid Snapping
    * 🟩Free shape drawing (eg. Floorplans)
  * Block browser
    * ✅ Category support
    * 🟩 Context aware (offers relevant blocks first)
    * 🟩 Recents
    * ✅ Favorites
    * 🟩 Presets
    * 🟩 Icons (with integrated editor)
  * Stack Editor
    * ✅ Layers
    * 🟩 Graphical Color Picker
    * 🟩 Group Editing (Edit multiple fixture behaviors at once)
  * Controller Editor
    * 🟩 Merge with Schematic View
* Inputs
  * 🟩 Native HTC Vive Tracking (currently only through vvvv beta)
  * 🟩 Serial Firmata (Arduino)
  * 👷‍♂️ Audio Analysis (needs porting from vvvv beta)
* Outputs
  * IoT Devices (Smartbulbs)
    * 🟩 Philips Hue (Missing test hardware)
    * 👷‍♂️ IKEA TRÅDFRI
    * 👷‍♂️ LIFX
    * 🟩 ConBee II
  * DMX/ArtNet
    * 🟩 Custom fixture personalities
    * 🟩 [GDTF ](https://www.gdtf-share.com/)Personality support
  * LEDs
    * [OctoWS2811 VideoDisplay](https://www.pjrc.com/teensy/td_libs_OctoWS2811.html#videodisplay)
  * Audio
    * 👷‍ VL.Audio wrapper ([WIP video](https://www.youtube.com/watch?v=oa2qOsAr1t4\&t=82s))
    * 🟩 [SuperCollider ](https://supercollider.github.io/)Integration
  * Visual
    * 👷‍♂️ Shapes (2D Renderer)
    * 🟩 3D Rendering (depends on VL.Stride)
    * 🟩 Texture/Shader processing (depends on VL.Stride)
    * 🟩 [Hydra](https://hydra-editor.glitch.me/) integration
  * Lasers (ILDA)
    * 🟩EtherDream
  * Microcontrollers
    * 🟩 Serial Firmata (Arduino)
* Collaboration
  * 🟩 Networked Layouts
  * ✅ Attribute Sharing (currently implemented via OSC)
  * 🟩 Block Stack Warehouse (a way to quickly share and re-use others' Block Stacks)
  * 🟩 Real-time Online Collaboration
* Workflow
  * Automatic Fixture Placement
    * 👷‍♂️ From CSV (eg. AutoCAD exports)
    * 🟩 From Camera feed
    * 👷‍♂️ Plugin Support
  * Control
    * 🟩Remote Web Interface
* Interoperability
  * 🟩 [ScenicScript](https://docs.scenic.tools/future-concepts/scenicscript) as file format
  * 🟩 Runtimes for more platforms
    * 🟩 Arduino (C/MicroPython)
    * 🟩 Linux (C/VL when ready)
    * 🟩 Web platforms (JavaScript)
* Performance
  * 🟩 Multithreading
  * 🟩 Lazy evaluation
  * 🟩 Reactive

Are you confused or have suggestions? [Join the Chat!](https://discord.gg/RmnnhV)

Want less 🟩🟩🟩 and more ✅✅✅? [Become a Patron!](https://www.patreon.com/bePatron?u=20250290) Or contribute!
