I'm a Software Engineer building production-level Flutter mobile applications in multiple industries including Food & grocery delivery, medical & health care, tourism, e-commerce, social media, and telecommunication. I'm also doing my best to share what I know with articles and talks and enjoying every Fluttering moment π!
-
π Iβm currently working on
- Client Flutter mobile apps ππΌ
- Open source Flutter projects ππΌ
- Flutter tutorials ππΌ
- Giving talks whenever I find the opportunity to ππΌ
- Lots of half-finished side projects π (Guilty!)
-
π± Iβm currently learning everything I can find about Flutter π, the learning never stops!
-
π¬ Ask me about anything Flutter π
-
π« How to reach me:
-
π Pronouns: She/Her π©π»βπ»
-
β‘ Fun fact: I have 2 official names! Roaa & RΓΌya
Project | Links |
---|---|
π₯ Watch Demo Video A slide puzzle game built with Flutter for the Flutter Puzzle Hack Challenge. It's set out in space with Dashtronaut, Dash the Astronaut, floating in space and interacting with the user. π π The submission won a prize for Best Educational Content! π You can read the full development story & inspiration here |
π Launch Web App |
A Flutter app that uses the "The Movie DB" API to fetch popular people and their info (their movies, images, ..etc) The goal of this project is to be a full app example for using Riverpod as a comprehensive solution for state management, caching, and other capabilities and implementing clean architecture with full test coverage with unit and widget tests. You can read detailed information in the README.
π The Movie DB API
This app is also available as a 3rd party example in the official Riverpod Docs |
|
A single place for most of the tutorials and tweets/threads I share |
Project | Links |
---|---|
Ad-free Muslim prayer times app built with Flutter. I worked on this app as a Flutter Developer Team Lead at Multicaret π March 2022 - June 2022 (~4 months) |
π Website
|
Telecommunication app built with Flutter. I worked on this app as a Developer Team Lead at Multicaret π March 2022 - May 2022 (~3 months) |
π Website
|
Medical app built with Flutter. I worked on this app as a Mobile Developer Team Lead at Multicaret π May 2021 - February 2022 (~1 year) |
π Website
|
Grocery shopping and food delivery app built with Flutter. I worked on this app as a Mobile Developer Team Lead at Multicaret π March 2021 - July 2021 (~7 months) |
π Website
|
In-Person at Flutter Vikings in Oslo, Norway - Take Your Flutter Animations to The Next Levelπ₯ Talk Video π Slides π Live Demo |
Out of the box, Flutter provides you with tools to create truly beautiful animations! And I want to tell you how you can use those tools, as well as the surrounding ecosystem, to take those animations to the next level! Iβm not only talking about 3rd party package or frameworks like Rive and Lottie, most importantly, Iβm talking about how you can utilize those same out-of-the box tools and features, while making use of the host device & platform with everything they offer and Flutter easily allows you to access, like various touch, tap & scroll gestures, mouse movement, sensor data, ..etc, to create cross-platform, highly interactive, truly next-level animations that make your users go: Wow, can an app do that?
Code in the talk can be found in this repository: |
Flutter Festival Silicon Valley - Dashtronaut App Showcase
π March 23rd, 2022 π₯ Talk Video |
Deep dive into Dashtronaut, my slide puzzle game submission to the Flutter Puzzle Hack challenge. I talked about:
|
Flutter Festival Valsad & Surat - Flutter Animations
π March 26th, 2022 π₯ Talk Video |
Comprehensive guide of Flutter animations with multiple examples & use cases.
|
Flutter Festival Saudi Arabia - Flutter Animations [Arabic]
π Feb 19th, 2022 π₯ Talk Video |
Same above talk but in Arabic. Same code repo as well ππΌ. |
Flutter Festival London - Flutter App REST API Integration with Caching
π March 27th, 2022 π₯ Talk Video |
Integrating a REST API and adding offline support to a Flutter application by caching API requests. Example app provided was a Flutter articles directory using the Dev.to API. Service locator & repository design patterns were used.
|
Flutter Festival Turkey - Live-coding a Theme & Primary Color Switcher
π April 16th, 2022 π₯ Talk Video |
I live coded a theme & primary color switcher with provider for state management and integrated local storage using Hive and the service locator pattern to persist user selection. Also talked a bit about testing and you can find more widget & unit tests in the repo.
|
Aside from regularely sharing Flutter tips on Twitter, I usually publish articles on Medium whenever I have the chance (and the ideas):
Title | Description | Type | Publish Date |
---|---|---|---|
Flutter Animations Comprehensive Guide | Everything you need to know about Flutter animations in great detail and with multiple examples. By the end of this article youβll be able to add animations to your Flutter app with a wide range of complexity. And youβll know which of the various approaches available in Flutter is best suited for your animation goals. | π Article | π Apr 25, 2022 |
Reducing Shader Compilation Jank On Mobile By Caching Warmed Up SkSL | Improving the performance of your application is always important. And in the case of this slide puzzle game app, there were lots of animations and graphics, so it was vital that some work and effort be directed into making sure the performance of the app was at its best. | π Article | π Apr 1, 2022 |
Dashtronaut App Architecture and Folder Structure | Details about the code, app architecture & folder structure of the slide puzzle game created for the Flutter Puzzle Hack Challenge | π Article | π Mar 20, 2022 |
Stars animation using CustomPainter | Learn how to create animated stars using Flutter's CustomPainter and animations in this first tutorial from the Dashtronaut slide puzzle game |
π Article | π Mar 14, 2022 |
Flutter ScrollPhysics Variations & Use Cases | The βphysicsβ widget param is found in all scrollable widgets (SingleChildScrollView, CustomScrollView, NestedScrollView, ListView, GridView, TabBarView, ListWheelScrollView β¦etc) In this article, I will go over the variation of ScrollPhysics that this param can take and what that variation does. | π Article | π Jan 29, 2022 |
Create a Theme and Primary Color Switcher For Your Flutter App Using Provider | Learn how to create a functional theme switcher with the ability to change the primary color of your app using Provider. You will also learn how to change the primary color swatch and get MaterialColor from Color. | π Article | π Dec 20, 2021 |
Flutter Image Uploader With App Permissions and Compression Using GetIt Services | Allow image upload in your Flutter app with one line of code in your widget while handling everything from camera & gallery permissions to image compression under the hood with GetIt and the service locator pattern. | π Article | π Dec 12, 2021 |