Skip to content

nikolaybutnik/star-academy

Repository files navigation


Logo

STAR Academy

Learn music the fun way
Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. License
  7. Contact
  8. Acknowledgements

About The Project

Home pages

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.

Built With

The following technologies and libraries were used in the creation of STAR Academy:

Getting Started

To get a local copy up and running, follow these steps.

Prerequisites

  • npm
    npm install npm@latest -g
  • MongoDB

Installation

  1. Clone the repo

    git clone https://github.com/nikolaybutnik/star-academy
  2. Install NPM packages

    npm install
  3. Install MongoDB by following the guide.

  4. Inside MongoDB create a database called musicplayground, and two collections: users and logs.

  5. You're ready to go!

    npm start

Usage

After signing up for an account on logging in, the user is presented with the user profile screen.

Home pages

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.

quiz 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.

example question

New questions are added to the pool as you level up, so make sure to keep coming back and get more fans!

Roadmap

See the open issues for a list of proposed features (and known issues).

Contributing

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.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.

Contact

Nikolay Butnik - LinkedIn - btnk.nik@gmail.com

Louis Yacksmith - LinkedIn - louisyscarleton@gmail.com

Project Link: https://github.com/nikolaybutnik/star-academy

Acknowledgements

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •