Contributing - NickalusLindale/Visual-Theremin GitHub Wiki

🤝 Contributing to Terpsitone

Thank you for your interest in contributing to The Visual Theremin
an open-source reconstruction of Theremin’s forgotten performance instrument.

This project is experimental, collaborative, and open to creative extensions.
Whether you're fixing bugs, adding features, documenting the process, or sharing ideas — your help is welcome.


📦 How to Contribute

1. Fork the Repository

  • Click “Fork” at the top right of this page.
  • Clone your fork locally:
    git clone https://github.com/NickalusLindale/Visual-Theremin
    cd Terpsitone  
    
    
  1. Make Your Changes
  • Work in a new branch based on main:

git checkout -b Visual-Theremin

  • Make sure your changes are well-documented:
    • Comment unusual logic or math
    • Include a README or notes if you add a new patch or TouchDesigner component
  1. Test Before You Push
  • Run your Max/MSP patch or TouchDesigner file to confirm it works
  • Check OSC routing and camera detection where applicable
  1. Submit a Pull Request
  • Push to your fork:
    git push origin your-feature-name

  • Open a pull request with:

    • A clear summary of the change
    • Any screenshots, diagrams, or demo videos if relevant
    • Context: Why you made the change, how it improves the project

💡 What You Can Contribute

  • New features (e.g. custom synth modules, new gesture mappings)
  • Bug fixes (especially OSC/data routing or UI behavior)
  • Documentation (setup instructions, diagrams, historical references)
  • TouchDesigner tools (modularized components, better IR tracking)
  • Max patches (alternative synthesis techniques, audio processing ideas)
  • Demos (short recordings or project files for performance showcases)

🎨 Style Guidelines

Keep folders modular: TouchDesigner .tox files and Max/MSP subpatches should be reusable

Use lowercase filenames with underscores: blob_tracker.tox, snd_granular.maxpat

Name new OSC parameters descriptively: /ir/hand_velocity, not /val1

📋 Code of Conduct

This project supports open, inclusive collaboration. All contributors are expected to adhere to the Contributor Covenant in all project spaces.

📫 Need Help?

If you're not sure where to start, or want feedback before contributing:
Open an Issue
Start a discussion in the Project Wiki
Reach out via https://www.nickal.us/
Let’s build strange and beautiful instruments.