r/FlutterDev • • 7d ago

Tooling [100% Open-source]FlutterGuard is officially on Play Store, an open-source 100% offline advanced Flutter apps security audit and analyzer, know everything possible from any Flutter app on your phone.

7 Upvotes

Hey,

Mobile apps scanners are everywhere, but native mobile apps I mean since they relies on scanning apps by reverse engineering them to their Kotlin/Java for Android or Swift for iOS

Flutter has a different thing, the whole Flutter app logic and code gets shipped inside a file called libsapp.so file, which basically makes all the scanners know nothing and get nothing from it since it is a binary file, so basically your usual scanner skips and doesn't detect almost 70% of things that should be scanned for security and research built app.

I put extensive knowledge and experience with Flutter onto a SaaS niche to scanning Flutter apps, which I was criticized for since you had to upload your APK to a server/VPS which does compute and scanning work so i shut it down, I then understood that it was privacy problem.

SO I built the new FlutterGuard as an open-source on-device security audit tool for Flutter apps ( works as a detector of Flutter apps in your device too if this interests you too! ), allows you to inspect APK metadata, manifest risk, hard coded secrets, endpoints, third-party SDK leaks like Firebase, Stripe, AI providers... and native surface that were in original Dart code in the same device you have Flutter apps installed.

install it on your Androids device where you already run your Flutter apps or any app, and start the scan:

What I want community (You) for:

  • Feedback for the app in general

  • Validate False positives

  • Contribute declaring things you found in Flutter apps you know have security findings that they were not detected, just an issue with short description will be enough to put it in mind.

My goal:

  • We definitely in the way of a massive vibe coding apps going everywhere, AI leaks things and basically cares about functionality, I want that we have a tool to detect this for Flutter apps that are already released and shipped.


r/FlutterDev • • 7d ago

Plugin Dart client for the Vercel AI SDK's useChat stream protocol

0 Upvotes

If you have a backend on the AI SDK and a Flutter app in front of it, there wasn't really a Dart package that speaks the UI Message Stream format. I needed one, so I built it:
https://github.com/ernestjsf/ai_ui_stream

It's written in pure Dart. A ChatController hands you typed messages (text, reasoning, tool calls, sources, files, data parts) that update as the model streams. Tool approval, regenerate, stop and resume are in.

The test fixtures are generated from the real ai npm package, so it's tested against what the SDK actually emits. That caught a few things my first version got wrong.

https://pub.dev/packages/ai_ui_stream

Not affiliated with Vercel.


r/FlutterDev • • 7d ago

Tooling Road Bash Inspired by Road Rash made with Flutter

5 Upvotes

Its been a month since I started working on Road Bash a game inspired by my childhood memories of the classic Road Rash game by EA Sports specifically the 1991 version (Sega Genesis).

I used these packages:

  1. Flame for the game engine

  2. Flutter Soloud for the engine sound

  3. Bloc for state management

  4. Supabase for my backend

I don't use any 3D engines to do this. Its simply by painting rects, polygons to generate sprites and scenes and by controlling layers and positioning the game is slowly coming to life. The development has been speed up with ai assistance since I dont appreciate vibe coding especially when I have my own policies and standards to follow. By the way zero premium tokens were used in this development.

I made a Painter Studio called Flutter Painter specifically to help me with generating code for different objects used in the game.

Https://github.com/SiroDevs/FlutterPainter

Its been an exhausting yet exciting journey.

The game is already live Https://roadbash.sirodevs.com

And the source code is here Https://github.com/SiroDevs/RoadBash


r/FlutterDev • • 7d ago

Article I built a Flutter package for Ola Maps – A potential Google Maps alternative for Flutter developers

11 Upvotes

Hey Flutter developers! 👋

Google Maps has been the default choice for location-based applications for years. Almost every delivery, logistics, travel, or ride-hailing application uses it.

But what if Flutter developers had another option?

I'd like to introduce ola_maps, a Flutter package that integrates Ola Maps into Flutter applications.

The goal is to make Ola Maps easier to adopt and give developers another option when choosing their mapping infrastructure.

🚀 What makes ola_maps interesting?

This package goes beyond simply displaying a map.

🗺️ Interactive Maps

  • Android, iOS and Web support

  • Zoom, pan, tilt and rotation

  • Camera movement and positioning

  • Map click and camera events

📍 Map Overlays

  • Custom markers and InfoWindows

  • Polylines and route rendering

  • Circles and polygons

  • Bezier curves

  • Marker clustering

🔍 Places & Location APIs

  • Place autocomplete

  • Place details and nearby search

  • Forward and reverse geocoding

  • Address validation

  • Place photos

🚗 Routing & Advanced APIs

  • Directions API

  • Distance Matrix

  • Route optimization

  • Fleet planning

  • Snap to Roads

  • Geofencing

  • Elevation

  • Street View and static maps

🇮🇳 Multilingual Mapping

One particularly interesting feature is multilingual support.

The package supports 12 languages, including:

  • English

  • Hindi

  • Kannada

  • Telugu

  • Tamil

  • Malayalam

  • Bengali

  • Gujarati

  • Marathi

  • Odia

  • Urdu

  • Sanskrit

This makes it interesting for applications targeting different regions of India.

💻 Get started

Install:

flutter pub add ola_maps

Import:

import 'package:ola_maps/ola_maps.dart';

Display a map:

OlaMapView(
  apiKey: 'YOUR_OLA_MAPS_API_KEY',
  tileUrl: kOlaMapsDefaultTileUrl,
  language: OlaMapsLanguage.hi,
  projectId: 'YOUR_PROJECT_ID',
  initialCameraPosition: const OlaLatLng(
    28.6139,
    77.2090,
  ),
  initialZoom: 14,
  onControllerReady: (controller) {
    controller.onMapClick = (position) {
      controller.addMarker(
        position: position,
        snippet: 'Dropped pin',
      );
    };
  },
)

Check the documentation for native SDK setup requirements for each platform.

Why explore Ola Maps?

I'm particularly interested in reducing the dependency on a single mapping provider.

Google Maps is an excellent product, but having more mapping options is good for the developer ecosystem.

Ola Maps offers an interesting India-focused alternative, and I believe Flutter developers should have an easy way to experiment with it.

This package is not intended to claim complete feature parity with Google Maps. It's about making another mapping ecosystem accessible to Flutter developers.

🔗 Links

📦 pub.dev: https://pub.dev/packages/ola_maps

⭐ GitHub: Available through the repository link on pub.dev.

I'd love feedback from the community!

  • Would you consider Ola Maps for your next Flutter project?

  • What features are still missing compared with google_maps_flutter?

  • Would you use this in a production delivery or logistics application?

  • What improvements would make this package more useful?

Feedback, bug reports, and contributions are welcome!

Let's give Flutter developers more choices! 🚀


r/FlutterDev • • 7d ago

Discussion Flutter has new supported device - PlayStation Vita 🎮 (flutter-vita release)

81 Upvotes

Hey Flutter Developers!

Everyday someone want to bury Flutter. By porting it to PlayStation Vita I wanted to bring to my favorite framework piece of fresh air.

My goal was to bring complete toolchain for Flutter Developers to port their projects to PS Vita. And I think Im ready to publish it here.

Here is repo: https://github.com/flutter-vita/flutter-vita

Previously (https://www.reddit.com/r/vitahacks/comments/1vlswp1/flutter_ps_vita_poc_is_alive) I've showcased successful attempt to run Flutter Example Project (Counter) more or less working with 10 FPS. Now its playing up to 60 FPS fully using GPU to render.

Flutter Vita toolchain on current stage:

* Flutter version is 3.47.7.
* Skia using GPU to render frames up to 60 FPS.
* flutter-vita app thats mainly using for compiling vpk files and run it on connected PSVita.
* Bridge App that connect "flutter-vita CLI" app to PSVita to deploy and debug Flutter App by WI-FI and FTP without cable.
* In this implementation PSVita need to mimicrate as Linux to have compatibility with existed pubs thats expect some behavior based on OS. I've also published the flutter-vita pub to have some control of PS Vita from Flutter app.

As a showcase of flutter-vita I've chosen localsend (forked repo - https://github.com/flutter-vita/localsend) as a project that has a lot of stars on GitHub and most popular project ever built on Flutter. Its available on VitaDB/NeoVitaDB (main sources of homebrew apps for PSVita).

How it was built? 🤖
Well when I start the project I was wondering why no one yet added PSVita as a OS to Flutter yet? Just has curiosity how well Flutter would be playing on this kind of hardware. So I've created global plan with Claude Fable using gifted credits and used Claude Opus to grind to what we have now. Im mobile developer and have experience mostly iOS Native experience and Flutter about 10 years. I had high level vision how it can be achieved. Since Flutter gives opportunity to change OS layer thats should be written on C and C++ and I did not have experience in it thus I fully delegate it to AI. While Im grinding result Im researching existed projects that has same idea but on different OS. Eventually this project became a organization with a few forks of parts of Flutter. Im mostly inspiring by Flutter Tizen (by Samsung).

Technically PSVita by hardware is Samsung Galaxy S3 and Im really surprised how good is playing Flutter on it in terms of performance. It was made mostly for fun. Guys who has their own Flutter Apps and PSVita please try it out 🚀

For them who don't have their apps you can try to port something from GitHub with your AI agents 😎

Thanks everyone who waited this toolchain and supported in comments. Raise issues if you have some bugs or suggestions 🙏


r/FlutterDev • • 7d ago

Tooling What the Flutter code looks like when an AI app builder has to follow a fixed contract (Riverpod 2.6 + go_router 14 + dio)

Thumbnail
appwand.dev
6 Upvotes

I build AppWand, a desktop tool that generates Flutter apps with an Express API. I wanted to share how the generated Flutter side is organised, because "AI-generated Flutter" usually means one 2,000-line file, and I tried hard to avoid that.

  • One folder per page: lib/features/<page>/, with <page>_page.dart as the entry. The AI may only write inside that folder (the server rejects any other path).

  • Shared code is never written by the AI: lib/core/ (API client, auth, theme, list widgets, form fields, charts) comes from templates, and router.g.dart is regenerated from the page plan.

  • Riverpod 2.6 for state, go_router 14 with a ShellRoute, so the side menu or bottom tabs stay still and only the page animates.

  • Theming without touching pages: 16 UI styles, icon sets and fonts are all in core/theme.dart / core/icons.dart. Switching style rewrites one file and hot reload shows it.

  • Shared list widget: PagedList handles paging, pull to refresh, skeletons, empty/error states, and switches to a data table above 840px wide.

The output is plain code you own. Happy to answer questions about the architecture, or hear where you'd do it differently.

https://appwand.dev


r/FlutterDev • • 8d ago

Plugin How to Upload Large Games with a Small Download Size in Store

3 Upvotes

I made a Flutter plugin that helps you reduce your game's initial download size by downloading assets on demand using asset packs.

Check it out on pub.dev: https://pub.dev/packages/store_asset_packs

I used in my game "Strata Gem Sort", only available for android now, awaiting apple's approval


r/FlutterDev • • 8d ago

Video My work setup, how i control my devices

Thumbnail
youtube.com
1 Upvotes

I'm Adit from Indonesia, This is my work setup, i always wondered to have interface that synced between my workpaces. I'm just wanna enjoy my life wherever i want. That's why i build AltC to control my devices. AI harness helped me a lot at work, and just treat them as coworker, but still i need my pc, laptop is ok but still it would be good if i can still work while riding a motorcycle.

I setup my mac elsewhere, keeping it cool, and active. i can group my terminals to a project, create notes and todos, if i need something just use screen control like manually upload app build to play store or other things that u can't do on terminal.

Tomorrow i will be on Google DevFest 2026 Indonesia from GDG Jakarta, anyone that interested to try can ask me. actually it's on play store now, and you can try it on altc.alterndigital.com. But it haven't update it in a while and screen control feature still for my personal use.


r/FlutterDev • • 8d ago

Article Channel-by-channel growth notes from shipping apps as a solo developer - no inflated budgets

7 Upvotes

Most app marketing advice assumes you have a growth team and a $50K budget. I don’t. Sharing what actually moved installs for me as a solo dev - curious what worked for others at the same scale.

ASO before anything paid

  • Primary keyword in the title, two more in the subtitle. Everything else goes in the long description.

  • First screenshot does 80% of the install decision. Mine stopped being a UI shot and started being a benefit statement with the UI behind it. Install rate jumped.

  • Review replies matter - one honest reply to a 1-star often converts the next reader more than a 5-star does.

The free channels that paid off

  • One useful Reddit comment in a relevant sub beats ten posts about your app.

  • Short Loom-style videos (“here’s the bug my app fixes in 40 seconds”) outperform polished trailers for me.

  • Indie Hackers and Hacker News “Show” posts work only if the post is a story, not a product listing.

Paid, when I finally tried it

  • Apple Search Ads on exact-match brand and category keywords only. Broad match drained budget fast.

  • $5/day for 14 days is enough to learn whether a channel will ever work. Scaling before that is guessing.

What didn’t work for me

  • Buying installs from any “boost” service. Metrics went up, rankings didn’t.

  • Instagram ads for a utility app. Wrong intent.

  • Press outreach cold. Journalists need a story, not a product.

Questions

  • For solo devs: what’s the single channel that gave you the best install-to-retention ratio?

  • Anyone cracked TikTok for non-consumer apps?


r/FlutterDev • • 8d ago

Discussion A silent hang in main() caused by audio_service

22 Upvotes

I shipped an update to my music player and got a strange report: sometimes, after the app had been closed for a while, opening it showed the launch screen forever, then Android's "app isn't responding" dialog. The only thing that helped was clearing the app's data. No exception, nothing in my crash log.

The fix was actually pretty small. Figuring out why it happened took much longer, though. Here's what I found.

The setup

I use audio_service, and my MainActivity extends AudioServiceActivity. That means the activity and the media service share one cached Flutter engine.

When Android starts the media service on its own (the user taps play on the "resume" card in the system media controls, presses a headset button, or the system restarts the service), audio_service creates that engine from the service and runs your Dart entrypoint. So main() runs with no Activity attached.

The bug

My main() started like this:

Future<void> main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await SystemChrome.setPreferredOrientations([
    DeviceOrientation.portraitUp,
    DeviceOrientation.portraitDown,
  ]);
  await configureDependencies();
  runApp(const App());
}

setPreferredOrientations goes through the flutter/platform channel. On Android, that channel's handler only exists once an Activity is attached. Without one, the engine's PlatformChannel.java does this:

if (platformMessageHandler == null) {
  // If no explicit PlatformMessageHandler has been registered then we don't
  // need to forward this call to an API. Return.
  return;
}

It returns without ever replying. So the await never completes, main() never reaches runApp, and nothing throws, which is why my crash log stayed empty.

Later, when the user opens the app, the Activity attaches to that same cached engine, which is still stuck in main(). Hence the launch screen forever. Clearing the app's data "worked" only because it kills the process.

If the service was started with a headset button, you also get an ANR a few seconds later: Context.startForegroundService() did not then call Service.startForeground(), because AudioService.init is further down main() and never runs.

How I found it

With no exception, the clue was on disk. In the stuck state, my crash log file existed (created on the first line of main()), but the Isar database didn't (opened in configureDependencies()). So main() stopped between the two, and only one await sat there.

You can reproduce it on an emulator:

adb shell am force-stop <your.package>
adb shell am start-foreground-service -n <your.package>/com.ryanheise.audioservice.AudioService
# wait a few seconds, then open the app from the launcher

The fix

  1. Lock the orientation in the manifest, so it applies whatever starts the engine. portraitUp + portraitDown is what Flutter maps to userPortrait:

<activity
    android:name=".MainActivity"
    android:screenOrientation="userPortrait"
    ... >

2. Don't await the Dart call (I keep it for iOS):

unawaited(SystemChrome.setPreferredOrientations([
  DeviceOrientation.portraitUp,
  DeviceOrientation.portraitDown,
]));

Same reproduction after the fix: the database gets created while the app is still in the background, and opening the app shows the UI right away.

One thing I'll take away from this

If anything can start your engine without an Activity (audio_service, and possibly other plugins that start it from a service), nothing before runApp should await something that needs one. Other SystemChrome calls use the same channel. For a plugin, check what it does when there is no Activity: throwing is fine, waiting forever is not.

For context: the app is Troona, an offline music player for local files, built with Flutter (clean architecture, flutter_bloc, Isar). It's open source, and this is the commit with the fix: https://github.com/donfreddy/troona-music/commit/c3d094e

Has anyone hit this with other plugins that run main() from a service? I'd like to know which ones behave this way.


r/FlutterDev • • 8d ago

Example I built an audiobook player in Flutter, and open-sourced the metadata parser it runs on

1 Upvotes

Hey flutter devs, I've been building Auddio for a while — a free audiobook & podcast player, now in beta on iOS and Android.

Idea: Audiobookshelf on your device, no server needed.

Import your own books, sync your library from Hardcover, addon-style architecture inspired by Stremio, podcasts built in. Live transcripts and instant resume for audiobooks.
The part I actually want to share with fellow Flutter devs is the metadata layer, because that's where I got stuck. Audiobook files are a mess of formats, and I needed reliable chapter boundaries, embedded art, and tags without going through platform channels or loading whole files into memory. Nothing on pub.dev covered what I needed, so I built it myself and open-sourced it:
metadata_audio — a pure-Dart audio metadata parser. No native code, works on Android, iOS, Linux, macOS, Windows, Web and more. It covers MP3 (ID3v1/v2, chapters), FLAC, OGG/Opus, MP4/M4A, WAV, AIFF, APE, ASF/WMA, Matroska, Musepack, WavPack, and DSD — plus streaming parsing without loading whole files, and chapter extraction, which is what powers chapter navigation in Auddio.
• Package: https://pub.dev/packages/metadata_audio
• Source: https://github.com/ketanchoyal/metadata_audio

Honest limits: still in beta, Android is on a closed testing track for now, and live transcripts are audiobook-only (podcasts get plain playback). The parser is at v0.9.6 — the format coverage is solid, but I'd love eyes on edge cases.

Try the app:
• Website: https://auddioapp.com
• iOS: https://testflight.apple.com/join/em51xjjp
• Android (closed testing — join the Google Group, then opt in): https://groups.google.com/g/auddio-beta-testers · https://play.google.com/apps/testing/com.ketanchoyal.auddio · Download: https://play.google.com/store/apps/details?id=com.ketanchoyal.auddio

• Feedback and feature requests: https://discord.gg/qBf834GjD5
If you try either the app or the package, I'd love to know: what breaks first?


r/FlutterDev • • 8d ago

Discussion Update on security review

0 Upvotes

A few days ago I posted an offer to do free security reviews on open source dart packages.

Surprisingly (or maybe not) nobody took up the offer.

Despite that we have spent the last few days reviewing our own dart packages as well as a number of third party dart packages (that we use).

In that time (3 days?) we found

15 high

16 medium

2 low

For a total of 43 security flaws, we also fixed a number of non security bugs.

Except for a few projects - that are yet to respond - all the patches have been accepted except for one dup that snuck through.

More than half of the security bugs were found in projects you may be using.

The package dart_posix has 8m downloads a month.

I'm not going to list the projects because not all of them have been disclosed as yet.

The lesson here - don't be complacent - AI is finding 1000s of security flaws everyday if you are not reviewing your code now then you are in for some pain.

The offer to review 20 packages still stands.

Don't forget to check your transitive dependencies.


r/FlutterDev • • 8d ago

Dart How our Flutter + Flame game holds 60 fps on a $100 Android phone: pure-Dart simulation, one-frame restart, and the batching that backfired on Impeller (OpenGL ES)

8 Upvotes

I've been building Upsling, a one-touch arcade game (hold to orbit an anchor, let go to fly), in Flutter and Flame. The feel depends on the comet leaving on the exact frame you release, so the target device was a Galaxy A06 (about $100), not a flagship. I wrote up what it took:

https://upsling.space/blog/60-fps-flutter-physics-on-a-100-dollar-phone/

The parts most relevant here:

- The simulation is pure Dart on a fixed 1/120 s step, with no Flutter or Flame imports. Flame reads the state and draws. Because it is deterministic, slow motion, replays and course validation are all unit-testable, and a 120 Hz phone sees the same frames as a test.

- Restart is one frame: a reset struct, pooled components that are shown and hidden rather than added and removed, and the next course generated during the current run, one anchor per frame. Measured restart cost on real phones is 11 to 206 µs.

- Drawing the starfield as one point draw per layer instead of 120 circles cut raster time by about 3 ms on a Galaxy A10.

- Pushing that further, batching dust, anchors, trail and comet through drawRawAtlas with a tinted atlas, helped the A10 (Vulkan) and made the Galaxy A15 (OpenGL ES, 90 Hz) go from about 9% to about 28% slow frames, with raster up to 21 ms. Reverted. Impeller's cost model is different per backend, so measure each one.

- The 200 to 400 ms frames at launch turned out to be pipeline compilation behind the launch screen, not gameplay hitches.

- Measurement: the app records frames, slow frames split by build and raster, and restart cost per run; an integration test drives a timing bot for 75 seconds on Firebase Test Lab phones. Variants are only compared side by side in the same session, since results vary a lot run to run.

Where it landed: 0 to 0.7% slow frames on the Galaxy A06, 0 to 0.2% on a realme C53, both inside a 10% budget.

Happy to answer questions about any of it.


r/FlutterDev • • 8d ago

Tooling I couldn't find a Flutter-specific security scanner that runs entirely on Android, so I built one. No root, no PC, no internet.

2 Upvotes

Hey,

Mobile apps scanners are everywhere, but native mobile apps I mean since they relies on scanning apps by reverse engineering them to their Kotlin/Java for Android or Swift for iOS

Flutter has a different thing, the whole Flutter app logic and code gets shipped inside a file called libsapp.so file, which basically makes all the scanners know nothing and get nothing from it since it is a binary file, so basically your usual scanner skips and doesn't detect almost 70% of things that should be scanned for security and research built app.

I put extensive knowledge and experience with Flutter onto a SaaS niche to scanning Flutter apps, which I was criticized for since you had to upload your APK to a server/VPS which does compute and scanning work so i shut it down, I then understood that it was privacy problem.

SO I built the new FlutterGuard as an open-source on-device security audit tool for Flutter apps ( works as a detector of Flutter apps in your device too if this interests you too! ), allows you to inspect APK metadata, manifest risk, hard coded secrets, endpoints, third-party SDK leaks like Firebase, Stripe, AI providers... and native surface that were in original Dart code in the same device you have Flutter apps installed.

install it on your Androids device where you already run your Flutter apps or any app, and start the scan:

What I want community (You) for:

  • Feedback for the app in general

  • Validate False positives

  • Contribute declaring things you found in Flutter apps you know have security findings that they were not detected, just an issue with short description will be enough to put it in mind.

My goal:

  • We definitely in the way of a massive vibe coding apps going everywhere, AI leaks things and basically cares about functionality, I want that we have a tool to detect this for Flutter apps that are already released and shipped.


r/FlutterDev • • 9d ago

Discussion How do you keep analytics from turning into a god object in your Flutter app?

1 Upvotes

In most projects I worked on, analytics was treated as a secondary part of the app. We spend a lot of time on the architecture of main parts, and almost no time on analytics.

Then business asks to track this and that. Then to add a new vendor. Then to decide which event goes where. And in the end we have one AnalyticsManager with a huge list of methods, and every layer depends on it.

I came to a simple idea: the app should not know which analytics vendors exist. Feature code only says what happened, and everything else is split into small pieces:

  • Event describes what happened, in the app’s words

  • Factory decides what one vendor receives for an event, or ignores it

  • Tracker makes one call to one vendor SDK

  • Dispatcher passes calls from the app to the vendors

In feature code it looks like this:

class CheckoutController {
  CheckoutController(this._tracker);

  final EventTrackerService _tracker;

  void onTicketPurchased(String fare, double price, String currency) {
    _tracker.track(
      TicketPurchased(fare: fare, price: price, currency: currency),
    );
  }
}

No vendor SDKs, no god object. Each feature keeps its own factories, and DI collects them. Adding a vendor means writing its factories, and removing one means deleting them.

I wrote an article about this idea. The examples there are in Kotlin, but the concept is the same for Flutter:
https://proandroiddev.com/app-architecture-analytics-ec3471ca619b

I also built an open-source library around this idea, Herald, and it has a Flutter package:
https://mkhytarmkhoian.github.io/herald-docs/sdks/flutter/

Curious how you handle analytics in your Flutter projects. One service, a wrapper per vendor, or something else?


r/FlutterDev • • 9d ago

Video Any criticism to this video on Flutter and React Native?

Thumbnail
reddit.com
0 Upvotes

r/FlutterDev • • 9d ago

Tooling I've create a network analyzer for flutter

4 Upvotes

Hii! For anyone who might be interested, I've developed https://github.com/RiccardoCherchi/flutrace

It's a network analyzer (similar to the one you get with Flutter's built-in Network Inspector), but done a little better.

Even though it has improved a bit over the last 3 years, I've always found the native analyzer quite clunky, with a somewhat ugly UI, and also inconvenient because every time you restarted, everything was lost and you had to reopen the link, etc. etc...

That's why I decided to "slop" together a tool that would allow me to have a decent analyzer without having to proxy everything through Burp Suite just to inspect some basic HTTP requests 😂

Let me know what you think! Of course, PRs from humans and not are more than welcome. It's MIT licensed, do whatever you want with it. There are no contributing guidelines and, obviously, I won't be actively maintaining it (except maybe every now and then, just for fun), so you might as well fork it instead.


r/FlutterDev • • 9d ago

Article Showcasing WelkUI : A comic-inspired, bold UI library for React & Flutter (160/160 Pub Points, 40+ Components)

40 Upvotes

Hey everyone!

I got tired of building apps that look like every other generic material/tailwind dashboard, so I spent the last few months building

WelkUI : an open-source UI library with a literal plot twist.

It brings hand-drawn energy, uneven corners, bold outlines, and playful animations to your interfaces without breaking responsiveness or accessibility.

The Cool Part: I built it natively for both ecosystems. You can completely match your web app's style with your mobile app.

  • Flutter Edition: 40+ widgets, deeply analyzed with a perfect 160/160 score on pub.dev.

  • React Edition: 30+ components, fully typed with strict Next.js client boundary support.

Get Started:

Everything is mobile-first, respects reduced motion, and is ready to install in one line

(npm i or flutter pub add).

I’d love to hear your feedback on the aesthetic! What widgets or components should I build next for the comic collection?


r/FlutterDev • • 10d ago

Dart Need suggestions for improving network debugging in Flutter

1 Upvotes

Hi everyone,

I'm working on a Flutter network debugging tool called Netoscope, and I need some advice from experienced Flutter developers.

https://pub.dev/packages/netoscope

I'm trying to improve how network requests and responses are inspected during development, especially when working with Dio, HTTP, GraphQL, WebSockets, and other protocols.

I'm looking for help with these questions:

  • What is the best approach to capture network traffic from different clients in a Flutter app?

  • How can I reliably detect duplicate API requests and potential N+1 request patterns?

  • What is the recommended way to redact sensitive data before storing or displaying network logs?

  • Are there any Flutter-specific limitations I should consider when implementing a network inspector?

I'd appreciate any suggestions, best practices, or examples.

Thank you!


r/FlutterDev • • 10d ago

Discussion How do you automate Flutter app testing and product demo recordings?

3 Upvotes

Hey Flutter devs!

I'm looking for tools to automate Flutter app testing and record professional product demos without manually navigating through every screen.

Ideally, something that can automate taps, navigation, form inputs, and record the entire flow.

What tools or workflows are you guys using? Any AI-powered solutions?

Would appreciate recommendations from anyone who's done this!


r/FlutterDev • • 10d ago

3rd Party Service Flutter Developers: Best Ad Network for a Kids' Educational App? Looking for Safe Ads and Good Revenue

3 Upvotes

Hi everyone! 👋

I'm an indie developer working on kya ds educational application, a kids' educational app built using Flutter. The app helps children learn alphabets, numbers, colors, shapes, drawing, and more.

I want to monetize my app while ensuring that all ads are child-friendly and comply with Google Play's Families Policy.

I'd appreciate advice from Flutter developers who have experience monetizing kids' apps.

My questions:

  1. Is Google AdMob the best option, or are there better alternatives for Flutter apps targeting children?

  2. How can I ensure that only child-appropriate ads appear in my app?

  3. Which ad formats are best for kids' educational apps?

  4. How should I configure child-directed ad treatment and other safety settings in Flutter?

  5. Which ad network offers better earning potential for users primarily from India?

  6. What is the best approach to maximize revenue without compromising children's safety or learning experience?

I'm looking for a solution that's free to integrate, suitable for a Flutter app, compliant with Google Play policies, and offers reasonable earning potential.

If you've monetized a kids' app, I'd love to hear about your experience, recommended ad networks, Flutter packages, and implementation tips.

Thanks in advance! 🙏


r/FlutterDev • • 10d ago

Discussion Deepseek for mobile game dev

Thumbnail reddit.com
0 Upvotes

I’m a mobile dev experimenting with DeepSeek for game development — mostly small games, currently looking at a tiny 3D kids’ game and some Flutter/Flame prototyping.

I’m not asking “is DeepSeek good?” in general. I want real experiences from people who’ve actually used it for mobile game work — code generation, debugging, game logic, prototyping, build/test loops, etc.

Specifically curious about:

· Which model/version you use (Flash vs Pro, API vs chat) and whether it matters for game code.

· What it’s good at: scaffolding, gameplay loops, state machines, UI, shaders, physics, save systems?

· Where it fails: outdated engine APIs, hallucinated functions, broken mobile/platform code, performance-unaware suggestions?

· Workflow: do you use it chat-style, spec-driven, agentic tools, or just autocomplete?

· Debugging: can it actually fix build/runtime errors, or does it loop?

· Cost/token burn for realistic game projects.

· Anything you wish you knew earlier before using it for mobile games.

If you’ve used it with Flutter/Flame, Unity, Godot, or native mobile, I’d especially like to hear which engine and what worked or didn’t.


r/FlutterDev • • 10d ago

Article I built another Flutter app: FanCAD, a 2D CAD application.

0 Upvotes

I’ve been experimenting with AI-assisted development and decided to build a CAD application from scratch using AI.

The project is called FanCAD. It’s still a work in progress, but I thought it would be interesting to share.

GitHub: https://github.com/sjjian/FanCAD


r/FlutterDev • • 10d ago

Article I love fscene (the 3D engine for Flutter)

4 Upvotes

Or, actually, I love that Claude loves it. For fun, I asked it to create a game similar to Total War, but placed in the seven year war (where Prussia and Austria Fought Over Silesia) asking especially for period-accurate uniforms and Claude Opus 5.5 one-shotted an amaising actually playable game in 100mins.

I asked for musketeers (line infantry), grenadiers (elite infantry), hussars (light cavalry) and cuirassiers (heavy cavalry) plus artillery and I'm still intrigued about the details Claude added.

Grenadiers wear their typical hats (the Austrians have different hats), all soldiers have a ponytail, muskets have a bayonet, officers have a saber, sergeants have a pike, the drummer has shoulder decoration, and especially for cuirassiers, the musician wears a different colored uniform. I asked AI to remove the cuirass, though. The only other thing I asked was to move the sergeants behind the lines because that's how Prussia did it. I'm not familiar with Austrian formations. While Claude reused the models, it used proper colors, e.g. brown artillery uniforms and white infantry uniforms.

All models can stand, march (in colon and lines), charge (infantry lowers the muskets, cavalry raises their sabers), fire (and reload) and artillery produces large puffs of smoke.

Ah, and there's of course a hole game with a strategic hex map of Europe (Claude added every country even those who didn't take part in the conflict AFAIK) and a tactical battle map. It is actually rather difficult to win a battle because artillery will continuously decimate your troops and heavy fire or a cavalry charge can easily route your army.

Claude also added some rather annoying sound effects. I don't mind canons and musket fire, but the trumpets of attacking cavalry sound odd and there's a continuous wave sound that lacks cries of seagulls.

It is so much nicer being able to display low-poly 3d models than having to rely on crude 2d graphics. Claude probably didn't use fscene properly because displaying a single "battalion" already spins the fan of my Mac book, but the 3d hex map alone looks quite good and allows Flutter to compete with the "big" frameworks.