Most of the code in playr.me used to sit in one file – player.js. As I added the code for essential capabilities, the file began to grow. It finally got to the point where I often spent more time navigating the file than actually adding code. At the very least, I needed to break it up into multiple files.
Problem 2: Logical structure for dividing the files?
Problem 3: How will the modules communicate?
Of course, one can use ModuleName.methodName() to make method calls.