Skip to content
This repository has been archived by the owner on Apr 3, 2023. It is now read-only.

cuong0993/flutter-rhythm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

16bfa6b · Apr 3, 2023
Apr 3, 2023
Apr 3, 2023
Apr 3, 2023
Sep 20, 2021
Mar 1, 2021
Apr 3, 2023
Apr 3, 2023
Apr 3, 2023
Apr 3, 2023
Dec 31, 2021
Mar 1, 2021
Oct 26, 2021
Jan 16, 2021
Oct 19, 2021
Jan 16, 2021
Apr 3, 2023
Oct 19, 2021
Feb 13, 2022
May 26, 2021
May 26, 2021
Apr 3, 2023
Apr 3, 2023
May 16, 2021

Repository files navigation

Flutter Rhythm - Play instruments

Build

Rhythm-based mobile game. Even you don't have any basic knowledge of music instruments, you still can play with falling notes in the game! ✨

Currently available on the Play store.

Get it on Google Play

Main Features

  • Hundreds of songs, from classics of Beethoven, Chopin, Mozart, or Schubert, folk songs to POP/EDM. Will be updated continuously
  • Adjustable difficulty level
  • Adjustable tempo
  • Many game modes
  • Many musical instruments
  • Play offline without the internet
  • Upload your song and play your way

screenshots screenshots screenshots

Project Structure

This is a Flutter mobile game targeting Android and iOS.

The code for the Flutter app is contained in the folder lib and the different native apps are in android and ios.

Extra project assets are in assets.

Firebase config files and cloud functions are in the functions folder.

Prerequisites & Getting Started

Client

To build and run the mobile apps you’ll need to install Flutter and its dependencies. To verify your installation run in the project’s root directory:

$ flutter doctor

Backend (Firebase)

B1. Setup sign-in method

An initial sign-in method needs to be configured.

  • Select your project in console.firebase.google.com.
  • Navigate to Authentication
  • Select Sign-in methods and activate Google, Facebook and Anonymous.

B2. Configure firebase app

Next, you’ll need to configure your firebase app for Flutter as described in Add Firebase to an App / Flutter

Android

Follow the instructions in android/README.md.

B3. Deploy functions and synchronize storage

Install Google Cloud SDK and run:

$ ./synchronize_backend.sh projectId

B4. Synchronize database

Install https://github.com/jloosli/node-firestore-import-export, get service account json file https://firebase.google.com/docs/admin/setup#initialize-sdk, navigate to the database directory, backup/restore database using:

$ export GOOGLE_APPLICATION_CREDENTIALS="service-account.json"; ./backup-firestore.sh
$ export GOOGLE_APPLICATION_CREDENTIALS="service-account.json"; ./restore-firestore.sh