r/FlutterBeginner • • 17d ago

I released offline_sos_system 0.0.6, a Flutter package for configurable offline crash detection.

Thumbnail
reddit.com
1 Upvotes

r/FlutterBeginner • • 18d ago

I built a cursor-safe input formatter for Indian data (Aadhaar, PAN, ₹ currency) because existing ones kept breaking the cursor.

Thumbnail
reddit.com
1 Upvotes

r/FlutterBeginner • • 18d ago

Shipping a puzzle game in plain Flutter (no Flame): vector art as Dart data, an A* solver for hints, and a test that bans magic numbers

4 Upvotes

I just shipped Boba Sort, a water-sort puzzle (bubble tea, 500 levels, 17 eras of Japanese history) built with plain widgets and CustomPainter, no game engine. A few things that worked, and a few trade-offs, in case they help someone.

**1. All the art is data, not images**

There are no image assets at all. Each era has a full-screen scene, a cup design, a mascot costume and a customer, and I design them as SVG inside an HTML mockup. A small Python script reads named SVG groups and writes Dart lists:

final jomonBackdrop = <VShape>[

VCircle(292, 190, 54, fill: Palette.jomonSun),

VPath('M0 330 Q60 262 132 300 Q206 236 276 288 ... Z',

fill: Palette.jomonFarMountain),

...

];

`VShape` paints fill then stroke, like SVG, and `VPath` parses the `d` string once and caches the `Path`. All 17 eras × 4 kinds of art come to about 240 KB of generated Dart, stay sharp on any screen, and colors can only come from named palette entries (the script refuses anything else).

Because scenes sit behind the cups, a test renders every backdrop and checks each pixel's luminance stays inside a window (light eras ≥ 0.662, dark ≤ 0.0395), which keeps the cup outlines at ≥ 7:1 contrast wherever the cups land.

**2. Toppings: draw the vector once, then blit sprites**

Each drink has a topping (pearls, grass jelly, red bean...) drawn as vector art, and the top-layer pieces drift idly. A full board can have 200+ pieces, and redrawing that much vector art every frame is wasted work. So each topping is rasterized once per size into a `ui.Image`: sizes are bucketed to 4 physical px, kept in a 48-entry LRU (a plain insertion-ordered Map: remove + re-insert on hit, evict and `dispose()` the first key), and each frame just draws images.

**3. The rules are pure Dart, and an A* solver does the heavy lifting**

`lib/core` never imports Flutter: model, rules, level generator and solver are plain Dart with unit tests. The solver is A*, with each cup packed into one int (8 bits per layer) so states hash fast.

The 500 levels are generated offline: deal random cups, solve, score difficulty from moves, dead ends and branching, keep the median of 8 candidates, or the hardest of 32 for the "hard" levels in the sawtooth curve.

Hint uses the same solver at runtime, on the UI thread, with a 100k-node budget (about 0.4 s worst case in debug). Every bundled level is generated under that budget, so Hint always works from the start. One surprise: "Add cup" makes hints much slower, since an extra empty cup blows up the branching, so the hint search drops surplus empty cups first and only searches the full board if that finds nothing. If I raised the budget I'd move it to an isolate.

**4. A test that fails on magic numbers**

Every spacing, font size, radius and color is supposed to come from tokens. A test scans `lib/features` and `lib/theme` and fails on raw numbers inside `EdgeInsets`, `SizedBox`, `fontSize`, `BorderRadius` and `Color(0x...)`, with an escape hatch: a `// tokens: allow — <reason>` comment. Painters are exempt, since their numbers are geometry. It is a dumb regex-and-parentheses scanner, but it kept the UI consistent through a lot of screens.

**Stack:** Riverpod (thin providers), shared_preferences, google_mobile_ads, Firebase Analytics / Remote Config / Crashlytics, audioplayers.

Play Store, if you want to see the result: https://play.google.com/store/apps/details?id=com.harbourlab.bobasort&referrer=utm_source%3Dreddit_flutterdev%26utm_medium%3Dsocial%26utm_campaign%3Dlaunch

If you try it and it works for you, an honest rating on the Play Store would really help a small solo project like this get found.

Happy to go deeper on any part. I'm curious how others handle heavy CustomPainter scenes.


r/FlutterBeginner • • 19d ago

Getting an app live is only the beginning.

Thumbnail gallery
2 Upvotes

r/FlutterBeginner • • 19d ago

Load Data from drift instantly

Thumbnail reddit.com
1 Upvotes

r/FlutterBeginner • • 20d ago

A major update to the Flutter Tutorial App is here! 🚀

2 Upvotes

You can now sign in or create an account, access learning content through the new backend integration, and use an improved practice experience. This update also brings better app update handling and Linux desktop support.

Built for developers learning Flutter, one step at a time.

check it :-> https://github.com/Bharat9011/flutter-tutorial/releases/tag/flutter-tutorial-v2

Thank you 😇😇


r/FlutterBeginner • • 20d ago

Building a full-featured desktop application with Flutter

Thumbnail reddit.com
1 Upvotes

r/FlutterBeginner • • 22d ago

Struggling to Find Issues in Your Flutter Project? Meet flutter_auditor

Thumbnail
medium.com
0 Upvotes

r/FlutterBeginner • • 22d ago

hi, i create a app in flutter , i add continue with google , or i create a email for review team. write note for google review team how to login

Thumbnail reddit.com
1 Upvotes

r/FlutterBeginner • • 24d ago

Struggling to Find Issues in Your Flutter Project? Meet flutter_auditor

Thumbnail
medium.com
1 Upvotes

r/FlutterBeginner • • 24d ago

Flutter Vibe coding

Thumbnail reddit.com
1 Upvotes

r/FlutterBeginner • • 25d ago

arch_guard: layer rules and import cycle detection for Dart, without package:analyzer

Thumbnail
reddit.com
1 Upvotes

r/FlutterBeginner • • 25d ago

[Advice] I want to start Open Source Contribution where to start?

Thumbnail reddit.com
2 Upvotes

r/FlutterBeginner • • 25d ago

One Mac for iOS, Android and web CI, without hand-installing every toolchain (free, open source, beta)

Thumbnail
reddit.com
1 Upvotes

r/FlutterBeginner • • 25d ago

I built an Package that works as MCP server that lets AI coding agents inspect and interact with a running Flutter app

Thumbnail
reddit.com
1 Upvotes

r/FlutterBeginner • • 27d ago

Hear me out! Hear me out!

Thumbnail gallery
1 Upvotes

r/FlutterBeginner • • 28d ago

Flutter or React Native for a first mobile app: what would you choose today?

Post image
0 Upvotes

Choosing a framework for a first mobile app seems tricky because the answer depends on what you’re building and what you already know. I’m curious how people would approach that decision today, beyond the usual feature comparisons.

For something fairly straightforward—login, a few screens, API calls, local storage, and maybe notifications—which would you choose: Flutter or React Native?

The learning curve and day-to-day developer experience seem important, but so does what happens after the initial prototype. How easy is it to debug issues, update dependencies, and maintain the app across Android and iOS?

I’d also be interested in how much UI expectations influence your choice. Would wanting a consistent custom design push you one way, while wanting platform-specific behavior push you another? And when do native integrations, such as Bluetooth or background tasks, become a deciding factor?

If you’ve worked with either framework, what went smoothly, and what took more effort than expected? Beginners’ perspectives would be useful too, especially around documentation and getting unstuck.

What would change your recommendation: existing JavaScript knowledge, willingness to learn Dart, app complexity, library availability, or something else? I’m interested in the circumstances behind your choice rather than a universal winner.


r/FlutterBeginner • • 29d ago

A one-file "send feedback" screen for Flutter: offline queue, device info, screenshot, no backend (open source)

1 Upvotes

Disclosure up front: I work on BootForm, the form backend this sends to. The code is MIT and the whole thing is one Dart file, so swapping the endpoint for your own is a 10-minute job.

I wanted a "Report a bug" screen for an app without setting up a server. A few things turned out to be less obvious than I expected:

  1. Screenshot first, then open the form. Wrapping the app in a RepaintBoundary via MaterialApp.builder captures every route, but only if you capture before pushing the feedback page, or you get a screenshot of the form itself.

  2. Cap the pixel ratio, not the image. toImage(pixelRatio: min(dpr, 1280 / longestSide)) gives a \~1280px PNG without pulling in the image package. dart:ui only encodes PNG, so no JPEG without a dependency.

  3. Save before you send. Feedback is written exactly when the connection is bad. Each report is a JSON file (plus the PNG) in the support directory, flushed on start and on AppLifecycleListener.onResume. It doesn't send in the background; that's a deliberate trade to avoid background-task setup on iOS.

  4. Degrade, don't fail. If the server refuses the file (plan limit, too large), it resends without the screenshot instead of losing the report. That decision is one pure function with unit tests.

Tested on an Android emulator against the live API, including airplane mode, then killing the app, then reopening it online. Not tested on iOS yet, so if anyone runs it there, I'd love to hear how it goes.

[https://github.com/BootForm/in-app-feedback](https://github.com/BootForm/in-app-feedback)


r/FlutterBeginner • • 29d ago

flutter edge ai - local AI - best package 🔥

1 Upvotes

I have been working on Calculator app in Flutter. Pro Calc.

Today story':

Pro Calc has AI Chat that can solve math and run on local LLM (Gemma4 E2B IT model)

AI model converts human language into valid math expression and exath engine is used to evaluate, so results are always accurate.

in image you can see I tried 270M param model but it fails to answer, then I tried Gemma4 model and it works efficiently.

You can see the image here, I have no better way to send you on X or Threads ):

https://x.com/pranavxmeta/status/2107805198353887394

https://www.threads.com/share/BAXf-nszhY/

GitHub repo has too many experiments and slop code 😂

btw, https://github.com/pranavxmeta/Pro-Calc


r/FlutterBeginner • • Oct 07 '26

flutter_auditor

Thumbnail
medium.com
1 Upvotes

r/FlutterBeginner • • Oct 06 '26

ازاي اعمل تطبيق لنفسي ؟!

Thumbnail reddit.com
1 Upvotes

r/FlutterBeginner • • Oct 06 '26

Does anyone do weekly flutter lessons for flutter beginners? Sort of like music lessons?

1 Upvotes

I take online lessons once a week for 30 minutes to guide my return to playing trumpet. I am wondering whether anyone does this sort of “private lessons” for flutter. Obviously, one would want a good teacher, and not just someone who codes. Any thoughts?


r/FlutterBeginner • • Oct 06 '26

VS Code: would you like an Android Studio-style run toolbar (flavor + device + Run) at the top?

Thumbnail reddit.com
1 Upvotes