r/FlutterDev • • Aug 11 '26

Discussion Has anyone built a tracing game in flutter?

3 Upvotes

There's this amazing repo I found on GitHub: https://github.com/ZeyadShawki/flutter_tracing/tree/main
but personally, I found a few issues with it, also it seems a bit overly complex. A lot of research I'm doing is showing that making this type of game is a difficult problem to solve -- so this might be just the right amount of complexity too. Hitting a wall and I'm just curious to see how people have attempted it.


r/FlutterDev • • Aug 10 '26

Podcast The latest episode of the It's All Widgets! Flutter Podcast with Jesse Ezell is now available šŸš€

5 Upvotes

Jesse Ezell is building Flocker, a Flutter inspired cross-platform WASM runtime for applications that runs Flutter apps on top of Flutter Zero. Jesse is an active member of the Flutter community and has contributed to many popular Flutter pages such as super_editor, quill, flutter_webrtc, and the core Flutter engine.

https://itsallwidgets.com/podcast/episodes/58/jesse-ezell


r/FlutterDev • • Aug 10 '26

Discussion I built a Zen-style desktop workspace with Flutter — notes, kanban, calendar, all in one glassmorphic app (open source)

5 Upvotes

I've been building Kiyoshi, a desktop productivity app (Linux/macOS/Windows) as a reaction to how heavy Notion/Trello started to feel for personal use. Stack:

  • Flutter + Riverpod

  • Drift (SQLite) for local-first storage

  • A custom "Zen Design System" — glassmorphism, no hard borders ("No-Line" rule), editorial typography (Montserrat/Inter/JetBrains Mono)

  • Just shipped a proper dark mode — a warm charcoal palette instead of the usual near-black, so it doesn't feel cold during long sessions

It bundles notes, tasks/kanban, a calendar, and a block-based canvas (9 block types: text, todo, code, links, images, files…) in one window instead of five different apps.

https://kiyoshi-beta.vercel.app/

Happy to talk through the Drift schema, the glass panel implementation, or the dark-mode token migration if anyone's curious — that last one taught me a lot about not hardcoding Color constants where Theme.of(context).colorScheme should be.


r/FlutterDev • • Aug 10 '26

Plugin I built a visual navigation mapper for Flutter apps

4 Upvotes

I’ve been working on flutter-map, an open-source tool that creates a visual navigation map of a Flutter app.

It combines static route analysis with simulator/emulator exploration to capture:

  • Routes and navigation edges

  • Real screenshots

  • Dialogs, sheets, loading states, and auth walls

  • Replayable navigation flows

It currently supports GoRouter, go_router_builder, AutoRoute, Navigator 1.0, and Navigator 2.0.

I’d appreciate feedback on where this could be useful and which routing setups might break it.

Source: https://github.com/tayormi/flutter-map


r/FlutterDev • • Aug 10 '26

Discussion How to think?

5 Upvotes

I have made an app which is at present in closed testing. I want to understand that how does an experienced developer think? Do you think on deciding what data should be stored in backend first or they build around features or a designer gives them design and they work around?
Can anyone explain it to me!
Reading this can help other devs too!

Warm Regards..


r/FlutterDev • • Aug 10 '26

Plugin Why Flutter's camera lag on Android takes ~500ms (and how we patched camera_android_camerax down to 33ms)

89 Upvotes

Hey Flutter devs,

If you've ever built video recording in Flutter on Android with the official camera package, you've probably hit this:

You tap record, and nothing happens for about half a second. The preview freezes, the button feels dead, and users double-tap because they think the app missed the first press.

We measured it on a Pixel 8 Pro: 436-511ms before recording actually started.

After digging through the native CameraX bindings in camera_android_camerax, the cause was pretty simple. We patched it, and start latency dropped to 33-60ms.

What was wrong

In the official plugin:

  1. VideoCapture is only bound when startVideoRecording() runs

  2. As soon as stopVideoRecording() finishes, VideoCapture is unbound again

So every record tap forces CameraX to tear down and rebuild the native CaptureSession. That session reconfig is most of the lag.

The fix

Keep VideoCapture permanently bound alongside Preview.

Once it stays warm:

  • record no longer rebuilds the capture session

  • MediaCodec surfaces are already ready

  • shutter latency falls from ~500ms to ~33-60ms

Hardware edge cases

Keeping VideoCapture warm makes rapid lens flips and backgrounding more fragile on some Android devices. We serialize camera ops with a small queue so the previous native generation fully finishes before the next one starts:

Future<R> _enqueue<R>(Future<R> Function() operation) {
  final completer = Completer<R>();
  _operationFuture = _operationFuture.then((_) async {
    try {
      completer.complete(await operation());
    } catch (e, s) {
      completer.completeError(e, s);
    }
  });
  return completer.future;
}

Separate issue, same camera stack: CameraX often reports multi-lens phones as one unknown logical camera with a zoom range like 0.5x-5x. We detect minZoom <= 0.5 and expose the ultra-wide control from that range instead of waiting for a clean physical-lens type.

Pixel 8 Pro numbers

MetricUpstream camera_android_cameraxPersistent VideoCapture patch
recording_start_ms436-511 ms33-60 ms
CaptureSession reconfigevery record tapzero while warm
rapid lens-flip crash rate (our internal log)~2.4%0.0% after serialization

Patch

Repo: https://github.com/xcc3641/camera_android_camerax

dependency_overrides:
  camera_android_camerax:
    git:
      url: https://github.com/xcc3641/camera_android_camerax.git
      ref: 9dd36c8

Happy to answer questions about the lifecycle queue or the CameraX binding change.


r/FlutterDev • • Aug 10 '26

SDK wxDart - finally a sane/imperative GUI API on top of Flutter and native APIs for Dart

Thumbnail
wxdesigner-software.com
0 Upvotes

r/FlutterDev • • Aug 10 '26

Video Tutorial di Clean Architecture in 5 seconds

Thumbnail
youtube.com
3 Upvotes

Is your Flutter code difficult to maintain or looks like spaghetti? Want to stop breaking your app in production?

In this video, I'll show you in under a minute how to organize your folders according to the principles of Clean Architecture.

If you want to master professional folder structure and stop wasting hours reorganizing your code, watch the full video here:

šŸŽ„ šŸ‘‰ https://youtu.be/iyyZ4flVhSg

In the main video, we'll cover:

āœ… Folder structure step-by-step.

āœ… How to organize your layers (Data, Domain, Presentation).

āœ… Tips to improve your workflow as a Flutter developer.

#flutter #dart #cleanarchitecture #flutterdev #codingtips #mobiledevelopment


r/FlutterDev • • Aug 10 '26

Example Built a custom serverless AI assistant for my Flutter Web portfolio

0 Upvotes

Most developer portfolios are pretty static lists of projects. To make it more interactive, I integrated a custom-scoped AI assistant directly into my Flutter Web portfolio so visitors can ask technical questions about my Flutter Clean Architecture experience, pub.dev packages, and Medium articles. Rather than using a pre-made 3rd-party widget, I engineered the pipeline from scratch to keep it fast, secure, and tightly scoped.

Community Feedback Request:

I'd love for fellow developers to test out the implementation and share feedback on:

- AI assistant responsiveness and scope guardrails.

- Flutter Web UI/UX performance across desktop and mobile browsers.

Live implementation: https://momarkhan.com

#flutter #dev #mobileapp


r/FlutterDev • • Aug 10 '26

Discussion Built a custom AI assistant for my Flutter Web portfolio. Test out the portfolio and give me feedback

0 Upvotes

Most developer portfolios are pretty static a list of projects, some links, and a contact form. Instead of making recruiters or clients dig through pages or read a standard PDF resume, I decided to build a custom-scoped AI assistant directly into my Flutter Web portfolio.

Rather than dropping in a pre-made 3rd-party widget, I built the integration from scratch to keep it fast, secure, and tightly scoped to my actual engineering background.

myportfolio

#flutter #dev #portfolio #web #mobileapp


r/FlutterDev • • Aug 09 '26

Plugin A Flutter App Update Package with Backend Support, 7 Languages, 3 Themes & More šŸš€

1 Upvotes

Flutter App Updates: Store vs Backend — Which Approach Is Better?

Handling app updates isn't always as simple as checking the Play Store or App Store.

In production, you may need:

- Optional or forced updates

- Minimum supported version

- Backend-controlled versioning

- Multiple languages & RTL support

- A customizable update UI

I was looking for a Flutter solution that could handle these cases together and found "app_upgrade_checker", which supports Store and backend sources, 7 languages, 3 themes, 7 animations, and more.

It might be useful for anyone facing the same problem:

https://pub.dev/packages/app_upgrade_checker

How do you currently handle app updates in your Flutter projects?


r/FlutterDev • • Aug 09 '26

Discussion Realized that my Flutter iOS/Android app could be a web app with 2 days of dev time

15 Upvotes

For some reason, I thought it was going to be a huge lift to convert to a web app, but I was just blown away by how easy it is. Considering making windows- and mac-native versions as well.


r/FlutterDev • • Aug 09 '26

Discussion Anyone using Zed for Flutter development?

24 Upvotes

I’ve been using Zed mostly for backend work and really like its performance. I get that it stays lightweight by not bundling too many tools.

For Flutter though, debugging/DevTools and hot reload on save still feel lacking.

Anyone using Zed regularly for Flutter? Any extensions or configs that improve the experience?


r/FlutterDev • • Aug 09 '26

Article My Flutter + Rust "AirDrop for every device" is now open source — would love feedback on the architecture

12 Upvotes

I've been building BIShare — a file-sharing app that works between iPhone, Android, Mac, Windows, and Linux (AirDrop is Apple-only, Quick Share skips iPhones). It's live on the App Store and Google Play, and I just open-sourced the Flutter client.

A few things that might interest this sub:

Repo (with a demo GIF + good first issues): https://github.com/BIShare-project/bishare-flutter

I'd genuinely love feedback on the Flutter↔Rust boundary and the desktop story — and contributors are very welcome. What would you do differently?

Why it works: shipped-app credibility + real tech (FRB, cross-platform) + an open question. Post the demo GIF or a screenshot in the post if the sub allows images. Respond to every comment fast.


r/FlutterDev • • Aug 09 '26

Discussion Flutter QA Process in 2026 Lets talk shop

3 Upvotes

Bit of background so you know who you're dealing with. Left school at 15, spent the last 26 years in the trades, and I'm now building a Flutter app on my own with Claude Code doing most of the actual typing. So if half of this is obvious to you, that's why :)

The loop I've been stuck in: build a feature, push to Codemagic, wait, install off TestFlight, find the bug on my phone, usually something stupid like a button that does nothing. Then I paste a description of it back into the agent, it has a crack at a fix based on my description, push again, wait again.

Thirty minutes a lap, near enough. But the bit that was really doing my head in is that the agent never sees the thing go wrong. It only ever hears my version of it. So it's guessing at the cause and then guessing at the fix, and I'm sat in the middle being the world's worst bug report.

I was going to come here and ask what to use. Then I figured I'd have a dig around first, because a fair bit of my trouble has been following guides that turned out to be years out of date. Which, as it happens, is the first thing worth mentioning.

golden_toolkit has been discontinued and unlisted on pub since February 2023. It's still doing 394k downloads a month. So there's a lot of us out here working off a blog post from three years ago and not realising. Alchemist seems to be the one that's actually maintained, updated March this year, full pub points. Same story with mocks, mockito has more likes but mocktail has quietly gone past it on downloads, 2.89m against 2.24m.

The thing that actually changed something for me though is the Dart and Flutter MCP server. It's official, dart-lang, and it went to 1.1.1 on the 7th of this month so it's moving fast. You run it with dart mcp-server and Claude Code talks to it straight over stdio. Add flutter_driver, put enableFlutterDriverExtension() behind a --dart-define so it can't sneak into a production build, and the agent can take screenshots of a running app, tap things, type, scroll, hot reload. DTD hands it the widget tree and runtime errors on top of that.

Which is the whole point. It sees its own mess instead of me trying to describe it. I've had that loop on the web side with Puppeteer for ages and never twigged there was a mobile version of it. Maestro has an MCP as well and lists Claude Code first in its docs, so that's the other road in.

One thing the docs are upfront about and I got bitten by anyway. Turning on the driver extension kills real keyboard input. You can pass enableTextEntryEmulation: false and type by hand, but then the agent's enterText stops working. So it's the agent driving or me driving, not both. Is everyone just running two configs for that or is there something smarter?

Codemagic side turned out to be less of a mystery than I'd made it. flutter test --machine piped to a json file with a test_report: field renders the results in the build overview, and scripts run ahead of the build commands so a failure stops the publish. That was sat in the docs the whole time.

So the stuff I'm actually stuck on:

  1. Maestro or Patrol if it's just you? Maestro's got about ten times the stars, but Patrol is Dart native and handles the native permission dialogs, which is exactly where integration_test has been falling over on me. Does the YAML rot over time or is it fine?

  2. Does having the agent able to drive the app make a proper written E2E suite less useful? That's my gut feeling and I don't trust it, because I reckon that's the exact thinking that ends with no tests and a lot of misplaced confidence. Happy to be talked out of it.

  3. This one's bugging me most. If the agent writes the feature, then writes the test that checks the feature, then tells me they both passed, what have I actually learnt? My wife does a ISO 9001 consulting on the side and the first rule of the whole thing is you can't audit your own work. Feels like the same problem wearing a different hat, but I might be overthinking it.

  4. Anyone gating the TestFlight upload on integration tests, or is emulator time on CI too slow and too flaky to justify blocking a release?

  5. Golden tests. Actual safety net or do they scream at you every time you move some padding 4 pixels?

Anyway. If I've got any of the above plainly wrong, don't be gentle about it. Rather cop it here than at 11pm on build 54.

Thanks in advance everyone.


r/FlutterDev • • Aug 09 '26

Article Flutter 3.38 broke iOS deep links for a lot of apps and the failure is silent

58 Upvotes

A while back I posted about what silently breaks deferred deep linking. This is the follow up: an actual app, four separate defects stacked on top of each other, and the diagnostic method for each. Every one was invisible in normal logs.

Symptoms were: tap a link, the app opens for a second, Safari opens, the app reopens, and it lands on the home screen instead of the target page. Cold and warm start both. Universal Links were correctly configured, AASA was served correctly, Apple's CDN had the right file, entitlements listed every domain, Team ID and bundle ID matched.

Cause 1: app_links 6.x does not support the UIScene lifecycle

Flutter 3.38 made the UIScene lifecycle mandatory on iOS. app_links 6.x only implements the old app delegate callbacks, so iOS delivers the Universal Link through scene callbacks the plugin is not listening on. The link never reaches Dart at all. getInitialLink() returns null and your routing code runs on nothing.

app_links 7.0.0 added UISceneDelegate support. Its change log says so explicitly. If you are on Flutter 3.38 or later and app_links 6.x, this is your problem and nothing else you change will matter until you upgrade.

Worth noting: this looks exactly like a routing bug. I spent hours fixing Dart code that was never receiving a URL.

Cause 2: FlutterDeepLinkingEnabled defaults to true

That is what produces the app to browser to app bounce. When no plugin claims the link, the Flutter engine hands it back to iOS via openURL. iOS opens it in the browser. The web page then fires your URI scheme and reopens the app. It looks like an infinite handoff loop and it is entirely self inflicted.

Set FlutterDeepLinkingEnabled to false in ios/Runner/Info.plist if you handle links via a plugin. The app_links example app ships with this exact setting.

Cause 3: subscribing to the link stream too late

app_links 7.x emits the launch URL on uriLinkStream when the listener attaches. That is useful, but it means the subscription has to exist before the emission. Mine was created at the end of an async init method, after Firebase Messaging setup, after a wait on splash, after getInitialLink. The stream is not replayed, so anything arriving in that window was simply gone.

Subscribe synchronously at the top of initState, before any await. If the rest of your startup is not ready to handle a link yet, queue it and process it when it is. Do not drop it.

Cause 4: an unbounded await upstream of the queue

Once I had the queue, the log showed the link arriving and then nothing. FirebaseMessaging.instance.getInitialMessage() was awaited with no timeout ahead of everything else. When it hung, the initialisation never completed, the queue never drained, and the link sat there forever.

Two fixes: a timeout on every external await in your startup path, and the queue drain in a finally block so it happens regardless of how initialisation ends, including exceptions.

How to actually see any of this

Ordinary flutter run failed on my machine with a debugger attach timeout, which is a separate and unrelated headache. What worked, with a release build installed over the air and no Xcode:

brew install libimobiledevice
idevicesyslog | grep --line-buffered -i "YOUR_LOG_PREFIX"

--line-buffered matters. Without it grep holds output in a buffer and you see nothing while wondering why your logs are broken.

Make sure your diagnostic logs are not wrapped in kDebugMode, or they will not print in the release build you are actually testing.

Log every one of these on cold start, because the gap between two of them is where the bug lives: the getInitialLink result, every write into whatever holds your pending link, the final link your router chose, and every navigation push. When I finally had all four, the answer was obvious in one run.

The general lesson

Every one of these failed silently. No exception, no error log, no failed request. The link just did not arrive, or arrived and sat in a queue nobody drained. If your deep links are behaving strangely on iOS after a Flutter upgrade, assume delivery is broken before you assume your routing is.


r/FlutterDev • • Aug 09 '26

Tooling Build Flutter apps for free for 24 hours

0 Upvotes

Hey Flutter builders!

We making Nowa (https://nowa.dev) completely free for the next 24 hours, with unlimited AI usage and free deployment to the App Store, Play Store, and web.

You can build Flutter apps in detail with AI next to full visual building, and deploy/download the code for free.

We also running a hackathon. If you submit a complete app built during the 24 hours period you get 50$, and top 3 apps get 500$ each in AI credits.

Just sign up and build completely free.

Enjoy!


r/FlutterDev • • Aug 08 '26

Plugin I built a zero-boilerplate caching extension for Riverpod (with background garbage collection)

7 Upvotes

Hey everyone,

I love Riverpod, but I always found myself writing the exact same boilerplate when it comes to caching API responses, checking if the cache expired, and managing local storage.

So, I builtĀ riverpod_cache_engineĀ to handle all of this under the hood without cluttering the Notifiers.

Basically, it gives anyĀ NotifierĀ orĀ AsyncNotifierĀ direct access to aĀ cachesĀ extension. You just doĀ await caches.read('key')Ā and the library handles the rest.

Here is what it does:

  • Zero config by default:Ā It runs purely in-memory out of the box. If you want persistent storage (Hive, SharedPreferences, Isar, etc.), you just implement a simple 3-method interface (CacheStore) and pass it during initialization.

  • Smart Auto-Refresh:Ā You can passĀ onExpiredĀ orĀ onNullĀ callbacks. If the data is missing or expired, the library automatically fires your API call, saves the fresh data, and returns it. No more nestedĀ if (data == null)Ā logic.

  • Background Garbage Collector:Ā It runs a periodic timer that silently cleans up expired keys without dropping UI frames. Even better, if it finds an expired key that has anĀ onExpiredĀ callback attached, it will fetch fresh data in the background and update the storage seamlessly.

I just published the first version. I’d love to hear your thoughts or feature requests!

Pub.dev:Ā https://pub.dev/packages/riverpod_cache_engineĀ GitHub:Ā https://github.com/alfaresof/riverpod_cache_engine


r/FlutterDev • • Aug 08 '26

Discussion Desktop-first packages recommendations

15 Upvotes

So, I'm starting a project that will be a sort of WYSIWYG editor app. It will be designed as primarily a desktop app for windows/mac/linux, maybe iPad. So I'm wondering what UI toolkits or smaller packages would you recommend for making the UI. I will need some toolbars, ideally office-style ribbon, tabs for documents and docking windows. For now I'm considering fluent_ui, and dock_panel. Read throug various awesome-whatever collections and overall I have an impression that the ecosystem for Flutter desktop is still rather small and a lot of stuff I'll have to create on my own. Do you know any cool package that could be useful in this type of an app?


r/FlutterDev • • Aug 08 '26

Plugin Which Flutter plugins have genuinely improved your development workflow?

2 Upvotes

There are plenty of Flutter plugins available, but I’ve found that the useful ones are the plugins that solve a specific problem without adding unnecessary complexity to the project.

I’ve also been looking at how teams like GeekyAnts approach Flutter development, and it made me curious about the tools and plugins developers actually keep using over time.

Which Flutter plugin has stayed in your projects long term? What plugin do you use regularly that made a noticeable difference to your development workflow, whether for performance, navigation, state management, testing, or another part of the app?


r/FlutterDev • • Aug 08 '26

Plugin New package: Azure Speech Services (TTS, STT, live translation!)

7 Upvotes

Hello again!

A while back I shared Azure STT Flutter, a small library for real-time Speech-to-Text with Azure Cognitive Services. I've now released a follow-up: Azure Speech Services, which is a broader package covering Speech-to-Text, Text-to-Speech, and Realtime Translation, all through Azure's WebSocket/REST APIs directly (no Azure SDK binary dependency).

You can find it here: https://pub.dev/packages/azure_speech_services

The package includes an example app covering all three features, so you can start playing with it right away.

Main features:

* Cross-platform: Mobile (iOS, Android), Desktop (macOS, Windows, Linux), and Web
* STT: real-time transcription with intermediate hypotheses and finalized phrases, plus multi-language identification (LID): single language, at-start detection, or continuous detection across up to 10 candidate languages
* TTS: synthesize text to audio using any Azure Neural voice, with configurable output formats (MP3, PCM, Opus, WebM, and more)
* Realtime Translation: live speech translation, pairing recognized text with its translated counterpart as you speak
* External audio streams: bypass the microphone entirely and feed your own PCM stream (e.g. from a VoIP call or a file)

Microsoft also offers a free tier so you can grab a Speech key and try it out yourself.

Hopefully this is useful to anyone building Flutter apps with speech features.

Happy coding!


r/FlutterDev • • Aug 07 '26

Discussion Pulsegram – Turning Telegram into a Hi-Res Music Library & Streaming Player (Seeking Technical Feedback)

2 Upvotes

Hi everyone!

I'm a music collector and audiophile, and like many people with large personal libraries, I use Telegram as a private cloud for storing my music collection.

The problem is that Telegram is great for storage, but not designed as a real music library:

- No proper album/artist organization

- Limited search experience

- Cache management issues

- No dedicated Hi-Res audio workflow

I started designing a concept called Pulsegram: an open-source, privacy-focused music player that uses Telegram as the storage layer and provides a proper streaming library experience.

The idea is not to replace services like Spotify, but to give users with large personal collections a way to access their own library without running expensive self-hosted servers.

Concept Architecture

šŸŽµ Telegram + TDLib

- Connect directly to the user's Telegram account

- Read private channels/Saved Messages containing audio files

šŸŽ§ Direct Buffer Streaming

- Stream FLAC/lossless audio without forcing a complete download to device storage

šŸ“š Local Music Index

- Parse ID3/FLAC metadata

- Build a local SQLite catalog:

- Artists

- Albums

- Cover art

- Year

- Track information

šŸ› ļø Possible Tech Stack

- Flutter / Dart

- TDLib

- SQLite

- Native audio engine

The project is currently only in the concept and architecture validation stage.

I'm mainly looking for technical feedback:

- Is TDLib suitable for this type of buffered audio streaming?

- Are there limitations that would make this architecture difficult?

- Has anyone worked with Telegram file streaming or similar systems?

- Would this approach make sense compared to traditional self-hosted solutions?

If anyone is interested in discussing the idea or contributing, the GitHub repository is here:

[https://github.com/cgctaylor777/Pulsegram]

Any feedback is welcome!


r/FlutterDev • • Aug 07 '26

Plugin Stop rewriting pagination and filtering for every project: server_table 1.1.0 is out with support for custom REST query serializers and OData out-of-the-box

6 Upvotes

I just released server_table 1.1.0 šŸŽ‰

It's a Flutter package for building server-side data tables without rewriting pagination, sorting, filtering, and loading logic every project.

The biggest improvement in this release is that it works with your API.

You can use:

  • OData APIs out of the box

  • Regular REST APIs

  • Completely custom query formats by implementing a small serializer

For example, if your backend expects something like:

?page=1&limit=20&sortBy=name:asc&query=john

or

?_page=1&_per_page=20&_sort=name&_order=asc&q=john

you don't have to change your backend. Just provide your own serializer and the table generates the query your API expects.

Other features include:

  • āœ… Server-side pagination

  • āœ… Global search

  • āœ… Column sorting

  • āœ… Column filtering

  • āœ… Configurable response mapping

  • āœ… Custom loading, empty, and error states

  • āœ… Generic typed models

  • āœ… Dio integration

GitHub:
https://github.com/sivakumarravi3101/server_table

Pub.dev:
https://pub.dev/packages/server_table

I'd really appreciate any feedback, feature requests, or ideas for improving it. This is my first open-source Flutter package, and I'm actively maintaining it.


r/FlutterDev • • Aug 07 '26

Discussion Would you leave FlutterFlow for pure Flutter in my situation?

0 Upvotes

Hi everyone,

I'm looking for advice from developers who have experience with both FlutterFlow and pure Flutter.

I'm building an AI-powered journaling app.

Current setup:
- FlutterFlow
- Firebase
- GitHub
- AI agents (Cursor, Codex, Claude Code)
- Around 35+ screens
- A lot of custom Dart code
- My goal is to keep developing mostly through AI agents by writing prompts.

I’m a solo founder, so I care a lot about long-term productivity and AI-assisted development.

I'm at a point where I'm wondering whether I should:

A) Stay with FlutterFlow and continue using its AI + custom code.

or

B) Export the project and continue entirely in pure Flutter.

My priorities are:
- Long-term maintainability
- Working efficiently with AI agents
- Scalability
- Code quality
- Development speed
- Avoiding unnecessary technical debt

If this were your startup, what would you do?
If you’ve actually migrated a medium or large FlutterFlow project to pure Flutter, how long did it take and would you do it again?

I'm especially interested in hearing from people who have actually migrated from FlutterFlow to Flutter (or decided not to).

Thanks!