


🦊 VSCode Extension for Devalang
Devalang is a compact domain-specific language (DSL) for music makers, sound designers, and creative coders.
Compose loops, control samples, synthesize audio, and render your ideas — all in clean, readable text.
Whether you're prototyping a beat, building generative music, or performing live, Devalang gives you rhythmic precision with the elegance of code.
From studio sketches to live sets, Devalang puts musical ideas into motion.
📚 Quick Access
🛠️ Overview
🎶 Devalang is a domain-specific language tailored for music composition and sound design.
This Visual Studio Code extension brings it to life directly in your editor — for a smooth, expressive, and efficient creative workflow.
🚀 For full functionality, make sure to install Devalang alongside this extension.
✨ What you get:
- 🌈 Syntax Highlighting – Complete color support for all Devalang features
- 🛠️ Hover Tooltips – Get instant documentation when hovering over keywords
- 🛑 Real-time Error Checking – Get instant feedback on mistakes or invalid syntax before you even hit play.
- 🧹 Code Formatting – Keep your
.deva
files clean, structured, and consistent with built-in Prettier support.
🎧 Whether you're building rhythmic patterns or sculpting complex audio structures, this extension helps keep your code as polished as your sound.
📆 Installation
For users
- Install the extension from the Visual Studio Marketplace.
or use :
code --install-extension devaloop.devalang-vscode
- Open a Devalang file (with the
.deva
extension) in VSCode.
- Start coding !
For contributors
- Clone the repository.
- Install dependencies using
npm install
.
- Compile the extension using
npm run compile
.
- Launch the extension in a new VSCode window using
npm run watch
.
🛠️ Development
Prerequisites
- Node.js 18+
- Visual Studio Code
- TypeScript
- Devalang CLI installed globally (for testing)
License
MIT — see LICENSE
Contributing
Contributions, bug reports and suggestions are welcome !
Feel free to open an issue or submit a pull request.
Support
If you have any questions or need help, please open an issue on the GitHub repository.