Remote Piano

A toy piano app made with Flutter as a gRPC example, with a unique feature to interact with remote devices.



See the information on web limitations below.

Supported platforms

  • Android
  • iOS
  • Web (limited)
    • gRPC-Web is used for web instead of grpc-dart.
    • Sending notes is not supported due to the limited functionality of gRPC-Web.
    • Receiving notes does not start unless you send a request by tapping any one of keys after connected to a server.
    • Tapping more keys cause an error printed in a browser console.
    • A gateway proxy is necessary between a server and clients.

No sound font (.sf2) file is in this repository. Search and get one, and place it in /assets/sf2/ before you run the app.


Either of the servers below is necessary if you use the remote operation feature of the app.