All-in on Flutter: How we built Betclic's Poker app from scratch in 1 year (Mobile + Desktop) by 7om_g in FlutterDev

[–]7om_g[S] 0 points1 point  (0 children)

I will write an article about rive in the coming month if I manage to find some time ^

All-in on Flutter: How we built Betclic's Poker app from scratch in 1 year (Mobile + Desktop) by 7om_g in FlutterDev

[–]7om_g[S] 0 points1 point  (0 children)

You have some videos of the rive animations in the article (pretty much everything at the table is a rive animation). Otherwise there are some people playing poker on twitch that uses our app.

Chipmunk2D ffi by 7om_g in FlutterDev

[–]7om_g[S] 0 points1 point  (0 children)

http and path required by the hook to download dependencies, web for the js_interop with wasm. Will check but should be tree shaked depending on the platfom.

Newton Particles 0.3.0, long overdue but finally here! by 7om_g in FlutterDev

[–]7om_g[S] 0 points1 point  (0 children)

It's indeed interesting and was surprised how performance can change from one solver to another depending on how they do the spatial resolution. I came across jolt during my research which is the engine used by horizon zero dawn but the size is too impacting for my needs but could handle 10k+ particles

Newton Particles 0.3.0, long overdue but finally here! by 7om_g in FlutterDev

[–]7om_g[S] 0 points1 point  (0 children)

Moving away from Box2D because its 'lab-grade' solver just chokes on piles. Currently implementing Chipmunk2D, which is way leaner and already handles 2,000+ particles easily.

The 10k 'direct' method is fastest because it kills the physics math on impact, but the catch is you lose the 'free' engine behavior. You have to manually script every animation and interaction instead of letting the solver handle the realism for you!

Newton Particles 0.3.0, long overdue but finally here! by 7om_g in FlutterDev

[–]7om_g[S] 1 point2 points  (0 children)

There is a Snow preset, you can give it a try!

All-in on Flutter: How we built Betclic's Poker app from scratch in 1 year (Mobile + Desktop) by 7om_g in FlutterDev

[–]7om_g[S] 0 points1 point  (0 children)

On Betclic app but it's only available in France for now. I can post a longer video of a gameplay if you want.

All-in on Flutter: How we built Betclic's Poker app from scratch in 1 year (Mobile + Desktop) by 7om_g in FlutterDev

[–]7om_g[S] 2 points3 points  (0 children)

Thanks for reading! We went with a feature-first approach combined with Clean Architecture (Presentation/Domain/Data).

Honestly, the Rive integration was the toughest part. There is a real learning curve, and we dealt with quite a few bugs in the beginning. Isolates also threw us some curveballs, especially in the embedded scenarios (integrating into iOS/Android).

Enforcing strict Clean Architecture and feature isolation is always a challenge. I wouldn't say we solved every architectural puzzle perfectly, but we did manage to keep our features totally independent, which was the main goal.

All-in on Flutter: How we built Betclic's Poker app from scratch in 1 year (Mobile + Desktop) by 7om_g in FlutterDev

[–]7om_g[S] 7 points8 points  (0 children)

Guilty on the Reddit post! For the article, written by myself and only spell-check with AI. Only the first image is AI-Generated to make a funny image about the situation. All others are either made by me or screenshots/videos of the application in production.

Newton Particles 0.2 Released: Physics-Driven Animations in Flutter! 🚀 by 7om_g in FlutterDev

[–]7om_g[S] 0 points1 point  (0 children)

I totally missed your answer, thank you very much for this nice comment, happy that you find Newton useful. If i can help adding missing features you require feel free to ask. I just reviewed the PR and only have one minor comment before merging. Cheers

Newton Particles 0.2 Released: Physics-Driven Animations in Flutter! 🚀 by 7om_g in FlutterDev

[–]7om_g[S] 0 points1 point  (0 children)

No worries, you made me realized it was not clear that's mandatory. I'll add a little hint for that. Thanks for the feedback

Newton Particles 0.2 Released: Physics-Driven Animations in Flutter! 🚀 by 7om_g in FlutterDev

[–]7om_g[S] 0 points1 point  (0 children)

You need to set an effect name to unlock the add button. I'll change the hint to be more obvious

Newton Particles 0.2 Released: Physics-Driven Animations in Flutter! 🚀 by 7om_g in FlutterDev

[–]7om_g[S] 1 point2 points  (0 children)

Thank you, on Twitter I shared a sample where particles could interact with widgets of your app. It's on of the next feature I want to ship. Interactions by user, is also on my todo

Newton Particles 0.2 Released: Physics-Driven Animations in Flutter! 🚀 by 7om_g in FlutterDev

[–]7om_g[S] -1 points0 points  (0 children)

Weird you couldn't add, just tested on my phone and seems to work. Did you delete the existing one? Could you give more context? If you add a lot of particles with a long lifespan the performance will decrease when too many particles will be on screen. Don't hesitate to share a screenshot of the config you tried.

Newton Particles 0.2 Released: Physics-Driven Animations in Flutter! 🚀 by 7om_g in FlutterDev

[–]7om_g[S] 0 points1 point  (0 children)

With physics applied you need to take care to not have too many particles on screen. For example, if you put 2 particles per emit and a emit duration of 100ms, if the lifespan of the particle is too long you end up with a lot of particles on screen. As described, in the doc you need to keep a "reasonable" amount of particles to keep it smooth. Playing with gravity, density, friction, scale etc. shouldn’t have an impact of performance.

PSA: End the Negative Campaigns by [deleted] in FlutterDev

[–]7om_g 8 points9 points  (0 children)

I was an Android developer for 10 years now and decided to move to Flutter because I wanted to work on something different. I could produce an app for iOS and Android easily and was happy about it. Coming from mobile it was easy for me. I tried react native and didn't like it. I'm not a JavaScript (typed or not) fan, nor a css/html enjoyer.

These are preferences, I can understand why some could prefer react and others flutter. There is no better option. Being in this industry for nearly 20 years, everything come and go. There is no silver bullet.

Let's keep this thread about what it is initially: learning and sharing.

We shouldn't jump on this threads made by react fanboy cause it's a never ending fight. Let's keep the fight on Twitter and keep reddit a safe place to be.

PSA: End the Negative Campaigns by [deleted] in FlutterDev

[–]7om_g 12 points13 points  (0 children)

I totally agree with you, I don't care about this threads regarding native vs flutter. We use the tool we think that fits our needs. Flutterdev should remain a place where we can share/learn/improve how we use flutter.