Flutter

735 readers
1 users here now

Flutter and the related logo are trademarks of Google LLC. We are not endorsed by or affiliated with Google LLC

founded 2 years ago
MODERATORS
26
 
 

I posted about this package before and just got made fun of for the name, but this is a useful update for developers that work on large mono-repos on a daily basis. The puby link command used to require pubspec.lock files to be checked into version control in order to know which dependencies to grab, which most open source mono-repos do not allow. Notably, I work on the flutter/packages repo a lot and dealing with dependency resolution is a pain, but I just released an update to puby to fix this. This involves reusing the dependency resolution code directly from the pub command in order to catalog dependencies rather than relying on lock files. What this means in practice is you can have an empty pub cache, make a clean clone of the flutter/packages repo, and have all dependencies resolved in less than 30 seconds. The puby link command is now almost twice as fast as melos bootstrap and requires zero setup whereas melos likes to complain about your repository structure.

27
 
 

**ALPHA RELEASE 0.0.7 NOW OUT**
Finally, after a period of silence... A new release has appeared!
Now with:
- UI design overhaul
- New navigation bar, removed slow animations
- Modified "Calendar" page to "Range"
- Minor icon changes
- Added source code and community links

Available for download **now** on GitHub!
- Binaries: https://github.com/WinsDominoes/dateapp/releases/tag/v0.0.7
- Flatpak: https://github.com/AtiusAmy/net.winscloud.DateCalculator/releases/tag/v0.0.7

Source code available at: https://git.winscloud.net/winsdominoes/dateapp

@flutter #flutter #dateapp

28
 
 

Hiya everyone! We're on the Fediverse! #introduction

Date Calculator is a Flutter app to calculate date related things, it is still in alpha/pre-alpha so it is not feature complete, but the bare minimum is already here.

It is developed by @winsdominoes at the request of @AmyIsCoolz :3

It is available on Linux, Android, MacOS, and Windows
Download here: https://github.com/WinsDominoes/dateapp/releases/
Flatpak: https://github.com/AtiusAmy/net.winscloud.DateCalculator/releases/

@flutter #Flutter #FlutterDev #Linux #Android #MacOS #Windows #Dates #FOSS

29
 
 

I gave a talk about my flutter_filament package, which integrates the Filament PBR renderer so you can display 3D content in Flutter applications.

If anyone is interested, here are the slaides!

30
31
32
 
 

Feedback lets users give feedback by annotating a screenshot of the current page and adding text, all directly within your app. Resources:Pub.dev → https://g/...

33
34
 
 

For context, I work as a Mobile App developer for a company and use Flutter. We implemented Ads for our clients, and they have implemented lots of ads (a minimum of 3 in each screen).

After adding Ads, we noticed a small performance drop in Android devices. However, the performance on newer iOS devices is terrible.

There is already an open issue on Github and it seems the conflict is because Flutter display Ads using Native Views.

Did anyone here suffer from this and found a solution? We're currently debating if we will rewrite the app entirely in React Native.

35
36
 
 

Last year, we partnered with the team at gSkinner to develop Wonderous, a reference app to showcase the high-quality experiences possible with Flutter. One of the goals for creating Wonderous was to provide an open-source example that demonstrates best practices. In that same spirit, we audited Wonderous against Android’s large screen guidelines.

It's a Medium article but shouldn't count against any stupid quotas since it is from the Flutter team.

37
38
 
 

I haven't seen any of the issues mentioned in the article. I suspect it is related to the libraries the author's project is using and I may not be using. These look like good temporary workarounds until fixes in the libraries can be rolled out.

39
 
 

Here's a nice simple article explaining enhanced enums that have been around for a while but may be something overlooked. Between these and sealed classes I think Dart has an excellent story for pattern matching.

40
 
 

Randal Schwartz takes the .when from Riverpod's AsyncValue and creates it for an AsyncSnapshot, using Dart 3 pattern matching.

41
 
 

A modular project approach for Flutter. Nino Handler shows us how to organize our app into a package-based modular app architecture.

How to Fetch Data and Perform Data Mutations with the Riverpod Architecture. Andrea Bizzotto gives us a great tutorial on how to fetch data and perform mutations using Riverpod.

How to use URL Launcher package in flutter | URL Launcher | #flutter #flutterdev #flutterwidgets. By WorldOfFlutter. A brief description on how to use the URL Launcher package by flutter. Follow the above steps for different URL schemes and use it in your projects!

A Complete Guide for using Dynamic Island in your next Flutter App. By Yash Makan. In this comprehensive tutorial, I'll walk you through the exciting world of Dynamic Island on iOS and how to seamlessly integrate them into your Flutter application with real-time API integration.

And more

42
 
 

Disclaimer: I made this

I spend a lot of time contributing to huge mono repos (flutter/packages, flutterfire, etc) and while some of them use melos to deal with the mess most of them don't. To help deal with this, I made puby.

Melos can be useful, but it requires project-specific setup so it's not good for repos that you don't control (and don't already have it set up). puby requires no setup, and you can run it literally anywhere. For example, if you keep all your dart/flutter projects in one directory you can execute commands in all of them at once by running puby in the root directory.

puby can do a lot, but here are the highlights:

Run any pub command

The first thing puby was made for is in its name: running pub commands. Run puby get, puby upgrade, etc to run those commands in all the projects in the current directory. Any extra arguments passed into puby will get passed to the commands puby runs. puby will automatically use the correct root command (dart/flutter) and even supports running with fvm if the project has it set up. puby combines the exit codes of the commands it runs, so it can be used to check for failures in CI.

puby link

puby link uses existing pubspec.lock files to catalog the dependencies required for all projects in the current directory, adds them to the pub cache, and then runs pub get --offline in all the projects in parallel. This can run up to five times faster than a regular pub get. This requires you to check in your pubspec.lock files to git, but the benefit is that when you switch branches a puby link will get you up to date in a few seconds.

puby clean

puby clean used to just be an alias for flutter clean, but since I added support for running commands in parallel for puby link it can now clean all projects in parallel as well. This is useful to clear out the cache of an entire monorepo, but it also has a much cooler use: cleaning up all of your local dart/flutter projects at once. Run puby clean in the directory containing all your local projects and you'll be surprised how much disk space you can reclaim.

puby exec

Run any command in all projects

Convenience commands

puby comes with many conventience commands to make common tasks easier

command equivalent
puby gen [engine] pub run build_runner build --delete-conflicting-outputs
puby test [engine] test
puby mup [engine] pub upgrade --major-versions
puby reset puby clean && puby get

Outro

My team and I use puby every day. Please let me know what you think!

43
 
 

Flutter Connection 2023 was held in Paris on June 2nd. There are 12 videos available to watch from YouTube with some interesting topics covered.

44
 
 

This edition covers Flutter performance tips, parallel API calls, the power of the late keyword, hook widgets for state management, and various Flutter-related videos and packages.

45
 
 

Disclaimer: I made this

I've been wanting a way to create type-safe Firebase rules for a while, so I made this package to let you do just that. I've used it for several of my projects now, and it's so much nicer than raw-dogging the rules syntax with no autocomplete. I was able to write rules from scratch without referencing the documentation once, and they deployed first try without any errors. I'm always hungry for feedback on my work, so please feel free to comment any feedback or suggestions.

46
 
 

There were many sessions at FlutterCon in Berlin and they’re now available to watch online.

47
 
 

A few days ago I had this urge of making my own music player, since I have a Subsonic capable server (ampache) to host and serve music. I've been using DSub, which has a lot of features that I don't use, but works very very well. Alas it isn't "up to date" in terms of design.

So I made my own, heavily inspired by Android 13, Material 3 enabled, has dynamic colors / system theme fallback (a small thing that goes a long way, I didn't want to make an half baked customisation screen, since Android already has one why not use it?)

This was my very first Flutter and Dart experience, and I must say it was very enjoyable! The docs are awesome, there are a lot of plugins to choose from, hot reloading... I know now that I needed that feature, it's a must have to iterate quickly! I might have reduce the amount of time I slept the past few days but it was very well worth it.

Here is demo video https://imgur.com/a/SwOxcij (it has changed a bit since then, mostly on boarders/padding, by a few pixels at most but still relevant ; more up to date pictures on the readme of the github repo)!

https://github.com/SuperFola/FlSub (the code might not be perfect, but I did my best as a backend developper)

48
49
 
 

Did anyone achieve animations while reordering lists in Flutter? (With grid or list view) Like Android's native Recycler View behaviour.

When you reorder the list items animate to new positions. With ListView.builder they just update with no animations.

Is this possible with AnimatedList?

50
 
 

This looks super-cool, maybe could be useful to some :)

view more: ‹ prev next ›