Skip to content

🚀 Revamping graphql_flutter: Roadmap, Community Involvement & Long-Term Maintenance #1513

@Azzeccagarbugli

Description

@Azzeccagarbugli

Hi everyone 👋

Over the past weeks, we had a direct call with the current maintainer of graphql_flutter, and we want to openly share where we're heading and, most importantly, listen to the community before making decisions.

We (at Expatfile) rely heavily on graphql_flutter in production, and because of that we want to invest time, resources, and long-term commitment into keeping this project healthy, modern, and actively maintained.

Plus, did you know that we were actually the original creators of graphql_flutter, so this project is very close to our hearts. @HofmannZ back in the days made a stunning work!

This document is meant to be:

  • a transparent starting point
  • a place to collect feedback
  • a shared discussion, not a unilateral roadmap

🎯 Our Intent

✅ Our goal is not to rewrite the library or break existing apps.

Our goal is to:

  • Keep the package actively maintained
  • Improve DX and reliability
  • Modernize parts that are clearly showing age
  • Do all of this with the community, not above it

⚠️ No major breaking changes are planned by default.

If breaking changes ever become unavoidable:

  • They will be clearly announced
  • Discussed beforehand
  • Accompanied by migration tooling / codemods where possible

🔍 Focus Areas (Initial Proposal)

These are the areas we believe matter most today. Nothing here is final, feedback is explicitly requested.

1️⃣ BLoC Integration (First-class)

  • Official patterns/examples for BLoC (Provider/Repositroy)
  • Clear guidance for:
    • Query lifecycle
    • Mutations
    • Error handling
    • Cache updates
  • No forced architecture, just solid primitives

Questions

  • What state management approach do you use today with graphql_flutter?

2️⃣ Documentation Website

  • Dedicated documentation site (not only README)
  • Clear sections:
    • Getting started
    • Architecture overview
    • Cache & normalization
    • Error handling
    • Testing
    • Examples (real-world)
  • Better onboarding for newcomers

Questions

  • What documentation do you feel is missing or unclear today?

3️⃣ Performance Improvements

  • Review of:
    • cache reads/writes
    • unnecessary rebuilds
    • stream / listener behavior
  • Profiling real-world use cases
  • Performance changes will be measured and documented

Questions

  • Have you experienced performance issues? In which scenarios?

4️⃣ Code Generation Improvements

  • Better alignment between:
    • schema
    • generated models
    • cache expectations
  • Clearer customization points
  • Improved DX around build_runner errors (lean_builder seems is another solution too)

Questions

  • What frustrates you most about code generation today?

5️⃣ Increasing Test Coverage

  • More unit tests
  • More integration tests
  • Regression tests for known issues
  • Making it safer to contribute

Questions

  • Are there areas you'd like to help test or validate?

6️⃣ Fixing Long-Standing Issues

  • Triage of open issues
  • Clear labeling:
    • bug
    • discussion
    • help wanted
    • good first issue
  • Prioritization based on real usage

Questions

  • Which open issues block you the most right now?

7️⃣ Developer Tooling

  • Better logging
  • Improved error messages
  • Potential DevTools integration (exploratory)

Questions

  • What tools would help you debug GraphQL issues faster?

🤝 How We Want to Work With the Community

  • Open design discussions
  • RFC-style issues for impactful changes
  • Clear changelogs
  • Explicit migration paths
  • Welcoming contributors of all levels

If you:

  • Use graphql_flutter in production
  • Tried it and left
  • Maintain a fork
  • Or just have opinions

👉 Your input matters here.

🗣️ How You Can Participate

Please comment with:

  • Pain points
  • Missing features
  • Architectural concerns
  • Areas you've wanted to propose but never had space for

Even short comments help, even “this is fine, please don't change X” helps.


Let's make graphql_flutter something we're all confident building on for the next years.

And a special shoutout to @vincenzopalazzo that during those years kept the project active and running!

Expatfile Team🗽

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions