Learn music the fun way
Explore the docs »
View Demo
·
Report Bug
·
Request Feature
Table of Contents
Ever wanted to learn guitar but found the process too daunting and unapproachable? We have you covered. STAR Academy is a web application that brings musical learning to you anywhere and everywhere. The app combines theory through randomized trivia quizzes, with user defined daily goals.
The philosophy behind STAR Academy is that of rewarding the user for learning. Thus, we have created a game-ified app that rewards the user simply for keeping up with their daily practice and studies by turning the act of learning into a game.
The following technologies and libraries were used in the creation of STAR Academy:
To get a local copy up and running, follow these steps.
- npm
npm install npm@latest -g
- MongoDB
-
Clone the repo
git clone https://github.com/nikolaybutnik/star-academy
-
Install NPM packages
npm install
-
Install MongoDB by following the guide.
-
Inside MongoDB create a database called
musicplayground
, and two collections:users
andlogs
. -
You're ready to go!
npm start
After signing up for an account on logging in, the user is presented with the user profile screen.
The profile screen shows all basic user information.
- Band name: your very own custom band name.
- Level: the level of your virtual rock star. New questions get added to the quizzes as you level up.
- Energy: how many attempts you have left to do the quiz. For the current version of the app, 1 energy recovers every minute, but in a full production version this would change to 1 energy every hour.
- Experience bar: answer quiz questions and complete dailt goals to earn fans and level up.
- Class: a title reflecting your musical achievements.
- Tier picture: your profile picture that changes with your class as you level up.
- Total fans: how many fans (experience points) you've gained on your musical journey.
- Streak: consecutive days you've logged in.
- Wins/losses: a pie chart that tracks correct and incorrect quiz answers.
- Personal goals: Add daily goals and check them off to gain fans. Daily goals reset once per day at midnight.
- Go to quiz: go to the quiz page.
- Calendar: shows the current week. Current day is highlighted in yellow. If you have logged in on any previous days, those days will be highlighted in green.
The quiz page is where you spend energy to challenge your theory knowledge. Correct answers will earn fans based on the difficulty level.
Each attempt costs 1 energy point and comes with 5 randomly selected multiple choice questions. When you click on an answer, right answers are highlighted in green, and wrong answers are highlighted in red.
New questions are added to the pool as you level up, so make sure to keep coming back and get more fans!
See the open issues for a list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE
for more information.
Nikolay Butnik - LinkedIn - btnk.nik@gmail.com
Louis Yacksmith - LinkedIn - louisyscarleton@gmail.com
Project Link: https://github.com/nikolaybutnik/star-academy