JQuery Upvote/Downvote Module Dev

I want to develop an upvote/downvote Connect module for internal use at my company, and I have found a place to start with the bare minimum functionality at the (“jQuery Upvote”)[GitHub - janosgyerik/upvotejs: UpvoteJS generates a voting widget like the one used on Stack Exchange sites “jQuery Upvote - a voting plugin”) project. However, I am a beginner when it comes to developing on Atlassian Connect, and am struggling how to turn this into a Connect module. Also, while this open source upvote plugin allows the basic functionality of upvoting/downvoting, I also have three other goals (I list them here in order of priority):

a) Vote on ideas that are a part of a larger idea (think of a list with sub-items
b) Restrict voters to one vote or unlimited votes, as needed in a specific circumstance,
c) Restrict the voting to a specific group of users or individual users

I am ready to start at the very beginning, though. So to start, how the heck do I actually start converting code like the one in this Upvote plugin to Atlassian Connect format?

Thanks for your help; I know I’m at the very beginning but I am using this project to develop much stronger skills. I hope to be able to return the favor someday!! I also hope to develop many useful Connect modules that I can hopefully share with others! :smiley: