FLUTTER ECOSYSTEM

craigomac/piano

Um pacote Flutter para trabalhar com teclas de piano e partituras

Capa do projeto piano
Stars
91
Forks
32
Último push (UTC)
1 de jun. de 2024
Status do projeto
Ativo
Craig McMahon GitHub avatar
GITHUB User

Craig McMahon ↗

I've been programming since QBASIC, and a mobile developer since PalmPilot. These days I like Swift, Flutter and machine learning.

Amsterdam, The NetherlandsSite oficial ↗
LinguagensDart

Pacotes publicados por este repositório

Dependências usadas

Lista de dependências 7 itens

README original

Texto original em inglês. Visite o GitHub para a versão atual.

Expandir / recolher README

Piano

A Flutter package that provides:

  • logic for working with musical notes, clefs and octaves;
  • a widget that can render notes on a clef;
  • an interactive piano widget.

Where is it used?

In "Learn The Notes", a simple sight reading trainer you can find on the iOS App Store here and macOS App Store here.

Example showing musical clef and interactive piano

How do I use it?

Here's an example app:

import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:piano/piano.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return CupertinoApp(
        title: 'Piano Demo',
        home: Center(
          child: InteractivePiano(
            highlightedNotes: [
              NotePosition(note: Note.C, octave: 3)
            ],
            naturalColor: Colors.white,
            accidentalColor: Colors.black,
            keyWidth: 60,
            noteRange: NoteRange.forClefs([
              Clef.Treble,
            ]),
            onNotePositionTapped: (position) {
              // Use an audio library like flutter_midi to play the sound
            },
          ),
        ));
  }
}

More like this

  • I blog about Flutter here: https://handform.net/
  • I'm on LinkedIn: https://www.linkedin.com/in/craigbmcmahon/