flutter / flutter/flutter

Design Doc: Extensible Enums in Federated Plugins

Open
#189,696 1 comment 0 reactions 0 assignees View on GitHub
:scroll: c: proposal design doc P1 team-ecosystem triaged-ecosystem
Dominant language
Dart
Stars
179k
Forks
31.1k
PR merge metrics
PR metrics pending

Description

### Document Link

https://flutter.dev/go/extensible-enums-plugins
Direct link: https://docs.google.com/document/d/1wHQjtse99mNJpJk-ctv7zrKSq4jgzpLRfqkaLzEsh_E/edit?tab=t.0

### What problem are you solving?

To establish a clear, maintainable architectural pattern for exposing platform-specific constants (e.g., `ImageFormatGroup` in camera plugins) in Flutter federated plugins. This system must allow value sets to safely grow as underlying native APIs evolve (iOS, Android, Web, etc), without introducing breaking changes or forcing major version bumps for downstream developers using exhaustive switch statements.

Contributor guide

Open the contributing guide

Research direction

Start by reading the linked Flutter design document and the stated problem around extensible platform-specific constants in federated plugins. Determine the architectural pattern needed across iOS, Android, Web, and other platforms; done means the design is clearly documented and establishes how value sets can grow without breaking downstream exhaustive switches.

Written by the indexing model from the issue text.

Assessment

Tech stack
dart, flutter
Domain
mobile-dev
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.