Raga
An interactive Carnatic music experience built with Figma Make to build a raga note by note, and discover which one you created.
The Inspiration
What are ragas?
The Concept
Design Decisions

Prompt Learnings
When scope got too wide, things broke
When I first built the descent system, I asked for too many things at once: two descent options, note choices, and the specific logic for Mohanakalyani. The output was unusable. I rebuilt by pointing to what already worked in the ascent and asking it to mirror that logic backwards.
For visual or sensory, behavior over implementation
Describing what something should feel like worked better than specifying code changes. "The room should feel like it's changing" gave better color transition results than specifying exact values or timing. Given Figma Make is a design tool, this is probably why this approach works well
Simplify scope rather than fight a broken feature
Some bugs reappeared every time a new screen was added, especially smooth transitions. Rather than keep fighting it, I scoped down, limiting transitions to the intro → first note selection and descent → raga reveal only
Knowing the domain helps
The D2/N2 frequency bug was something manual I went and fixed in the code. I knew it was off when listening to this particular pitch and changed the values myself, and I knew where in the code that I had to change it. This helped me save some credits but also it was a lot faster than configuring a prompt at that exact particular moment of the prototype to change its frequency.
What I would build next
More ragas via a database
I would connect my tool to possibly a Carnatic raga database so that the tool has access to thousands of ragas, rather than the limited 12 ones it holds right now.
Surprise Me works with variation descents
Right now, the Surprise Me button only leads the user to ragas that have the same notes in its ascent and descent. For future iterations, I would also code in ragas that have the variation descents to be part of the surprise pool as well.
Added note logic
Right now this tool supports ragas that have individual unique notes in its ascent and descent. But there are many ragas that might oscillate between two notes (ex: M2 D2 M2 N2 S). Adding this logic would help unlock even more ragas and note choice options for the user to have
Voice recording playback for more ragas
I have my own voice play for 3 of the ragas, but I would love to add to it for as many more as possible, especially ragas I practiced on for a long time. Carnatic music is music meant to be listened through human voice, and this adds a touch of my personality in this project



