Skip to content

Latest commit

 

History

History
212 lines (157 loc) · 9.46 KB

README.md

File metadata and controls

212 lines (157 loc) · 9.46 KB

Contributors Forks Stargazers Issues MIT License LinkedIn


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

Product Name Screen Shot

There are many great README templates available on GitHub, however, I didn't find one that really suit my needs so I created this enhanced one. I want to create a README template so amazing that it'll be the last one you ever need -- I think this is it.

Here's why:

  • Your time should be focused on creating something amazing. A project that solves a problem and helps others
  • You shouldn't be doing the same tasks over and over like creating a README from scratch
  • You should element DRY principles to the rest of your life 😄

Of course, no one template will serve all projects since your needs may be different. So I'll be adding more in the near future. You may also suggest changes by forking this repo and creating a pull request or opening an issue. Thanks to all the people have have contributed to expanding this template!

A list of commonly used resources that I find helpful are listed in the acknowledgements.

Built With

This section should list any major frameworks that you built your project using. Leave any add-ons/plugins for the acknowledgements section. Here are a few examples.

Getting Started

This is an example of how you may give instructions on setting up your project locally. To get a local copy up and running follow these simple example steps.

Prerequisites

This is an example of how to list things you need to use the software and how to install them.

  • npm
    npm install npm@latest -g

Installation

  1. Get a free API Key at https://example.com
  2. Clone the repo
    git clone https://github.com/your_username_/Project-Name.git
  3. Install NPM packages
    npm install
  4. Enter your API in config.js
    const API_KEY = 'ENTER YOUR API';

Usage

Use this space to show useful examples of how a project can be used. Additional screenshots, code examples and demos work well in this space. You may also link to more resources.

For more examples, please refer to the Documentation

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

Your Name - @your_twitter - email@example.com

Project Link: https://github.com/your_username/repo_name

Acknowledgements

music-playground

Description:

  • A music learning assistant app that uses RPG game elements to motivate the user to continue learning.

Problem being solved:

  • lack of motivation when tackling a difficult new challenge. Injecting fun game elements into learning provides a sense of reward and motivates the user to continue learning.

Basic functionality:

  • User creates a personal profile to keep track of their progress.
  • Each day a user is presented with a set of music related questions. Answering a question correctly rewards the user with experience points towards their in-app character. Each question has a 20(?) second timer. If the question is answered within the time frame, user gets bonus experience, but if not, they are not penalized.
  • Experience points earned go towards leveling up of a virtual character. As characters level up, their character class names change. As the user levels up, they unlock more and harder questions. Questions start out very general. After a bit, a question will be presented to narrow down the user's interest. Depending on the answer, the course of the questions will branch out into multiple paths. If a user gets a question wrong, there is a chance it will be asked again later.
  • Starting out, the user will be able to add one custom personal challenge they can complete each day for experience. There may be suggestions, but the user has full control over what that challenge is. As the user levels up, more challenge slots will be unlocked for more daily challenges.
  • Streak sytem will award bonus experience points for completing questions and daily challenge each day.
  • With each level up, the amount of experience to progress to the next level will increase, making the user rely more and more on setting personal challenges/goals for themselves to keep leveling up.

Ideas for expanded functionality:

  • Have a full RPG system. Each time a user levels up, they get one skill point that they can assign to a character's stat. The stats are: HP, MP, ATK, DEF. Users can challenge others to a one on one challenge that resemble turn based combat between their characters. Users have a limited number of challenges they can send out per day. Winning a challenge will award extra experience.
  • Currency system. Completing daily tasks will award currency in addition to experience. The user can use the currency to purchase upgrade items/gear to boost their character's stats, or an expensive item to reset all skill points and reassign them as the user sees fit.
  • Winning one of one battles will also award the user unique score points. These points will be accumulated and the characters with highest scores will be displayed in a Hall of Fame.
  • A messaging system and/or a forum for users to communicate and help each pther learn.