Introduction to Role development
The structure of a role is fairly obvious to understand.
Variables are simply stored either in vars/main.yml if the variables are not to be overridden, or in default/main.yml if you want to leave the possibility of overriding the variable content from outside your role.
The handlers, files, and templates needed for your code are stored in handlers/main.yml, files and templates respectively.