Clone this repo:
  1. ebc3704 chore(make): add build-override target by YoungSeok Yoon · 2 days ago master
  2. f6d11dc feat(ui): Inline Playlist Widget by David Yang · 3 days ago
  3. d0fb9a3 chore(analysis): fix analysis errors by YoungSeok Yoon · 4 days ago
  4. 55e052c chore(gitignore): ignore .analysis_options by YoungSeok Yoon · 4 days ago
  5. f263513 feat(ui): TrackListItem by David Yang · 4 days ago

Music

Status: Experimental

What exists here mostly boilerplate for the tooling and infrastructure needed to build out the UI as a set of Flutter Widgets that can be run on Fuchsia and have the UI developed on Android.

Structure

This repo contains code for running a vanilla Flutter application (iOS & Android) and a Fuchsia specific set of modules.

  • modules: Fuchsia application code using Modular APIs.
    • music: Is a Flutter app with two entry points, one for Fuchsia and one for Vanilla Flutter.

Development

Setup

This repo is already part of the default jiri manifest.

Follow the instructions for setting up a fresh Fuchsia checkout. Once you have the jiri tool installed and have imported the default manifest and updated return to these instructions.

It is recommended you set up the Fuchsia environment helpers in scripts/env.sh:

source scripts/env.sh

Authenticate

Follow authentication instructions for Modules:

Workflow

There are Makefile tasks setup to help simplify common development tasks. Use make help to see what they are.

When you have changes you are ready to see in action you can build with:

make build

Once the system has been built you will need to run a bootserver to get it over to a connected Acer. You can use the env.sh helper to move the build from your host to the target device with:

freboot

Once that is done (it takes a while) you can run the application with:

make run

You can run on a connected android device with:

make flutter-run

Optional: In another terminal you can tail the logs

${FUCHSIA_DIR}/out/build-magenta/tools/loglistener