• Palette

    Design patterns, inspired by architectural principles and adapted for software development, are crucial for modern app architecture. Based on the "FlutterEngineering" book, this talk highlights essential design patterns in Flutter to help you build efficient and scalable apps. We'll explore fundamental concepts and focus on key patterns like Singleton, Factory, and Observer. Through practical insights and real-world examples, you'll learn how to implement these patterns effectively in your Flutter projects.

  • Simplifying Dart Mono-repo Management for Efficient Code Sharing and Collaboration

    As the popularity of Dart projects with multiple packages (mono-repos) continues to rise, managing code bases in such environments presents unique challenges. Traditional methods of making changes and testing across repositories can become complex and time-consuming. However, Melos, a powerful command-line interface (CLI) tool, solves these problems. Developed for Dart projects, Melos enables seamless management of multiple packages within a single repository while maintaining their independence. It simplifies versioning, changelog generation, publishing, package linking, and execution of simultaneous commands across packages. In this talk, we will explore the features and benefits of Melos, highlighting its role in enhancing code sharing, collaboration, and automating complex tasks in CI/CD environments. Join us to learn how Melos can transform your Dart mono-repo management and streamline your development workflow.

  • Flutter Everywhere: Unleashing the Power of Cross-Platform App Development

    Immerse yourself in the fascinating world of cross-platform app development, where this advanced and inspirational talk reveals the limitless possibilities of Flutter. You'll learn how to build and run Flutter apps effortlessly on six platforms, optimizing your development process and reducing costs. But the excitement doesn't stop there! The session also uncovers Flutter's potential to expand beyond traditional platforms, venturing into the domain of embedded devices and screens of all sizes, including Raspberry Pi and Huawei clock. Gain valuable insights into harnessing Flutter for groundbreaking projects and creating awe-inspiring user experiences. Prepare for an action-packed session filled with live demos, practical examples, and expert guidance that will leave you eager to tap into the power of Flutter for your app development endeavors.

  • Road to Dart 3

  • Let's Flutter in 40 minutes

    Get started with Flutter development in 40 minutes by learning critical concepts. You'll learn to see the live coding of a hacker news app in 40 minutes.

  • Flutter! Past, Present, Future

  • Extending Firebase

  • Securing Flutter Apps

  • Fullstack Flutter & Firebase Workshop (480 minutes)

    8 hours workshop to start with dart and flutter and firebase

  • Riverpod, A Reactive Caching and Data-binding Framework

    Riverpod is more just a state management package it is a framework by itself that does caching, data binding, DI, and more.

  • One Plugin, Six Platforms

  • Building PWA with Flutter

    Progressive Web Apps are web applications that have been designed, so they are capable, reliable, and installable. These three pillars transform them into an experience that feels like a platform-specific application. The central core components that ensure that PWA works flawlessly are Service Workers. These components are a network proxy that takes control of a network request from the application and adds cache capabilities, background app sync, push notifications, and offline features. In this talk, I will review the PWA capabilities in Flutter and show you how you can extend these functionalities to have a better progressive web app building with Flutter in order to boost user experience in your application.

  • Flutter for React & React Native Developer

    After working quite a long time in tech, especially as an architect, I understood that it's not good to be tied to a single framework for a long-time. You might have heard about the technical breadth term! If not, it means you should know what you don't know. It helps you broaden your knowledge, sharpen your skills, and ultimately make a better decision or even have a better career or life. In this session, I will onboard you to Flutter and its ecosystem, where you can start developing the next application right away. You'll learn Flutter based on what you already know. If you have been a React or RN developer, this talk will facilitate and speed up your learning process and help you add another skill to your resume.

  • Leveraging Stream APIs within Service Worker

    The Streams API provides an interface for reading or writing asynchronous chunks of data, only a subset of which might be available in memory at any given time. The API helps to enhance UX both in a SPA or MPA (Multi-page) architecture. Using the Streams API within our service worker makes that possible. Workbox Streams abstracts the details of how streaming works. In this short talk, you will learn how to leverage the powerful Stream to enhance UX and boost the web page's performance.

  • The Art of Failing Job Interviews and Winning a Job!

    Interviews can be scary or can change your life! It might be frustrating or enjoyable! Whatever it is, Job interviews are not something that everyone is looking forward to it. What if I tell you that by shifting your mindset towards job interviews, you can turn each job interview into a great opportunity regardless of the interview outcome? Many, including myself, usually overvalue the interview's result just because we are trained that way! I changed my mindset towards job interviews a few years ago, and that has changed my life in which I took over 50 job interviews in 1.5 years and failed all of them except one! In this talk, I'll share my personal story and my tips on how you can achieve the same thing.

  • Architectural thinking on Flutter State Management

    Sometimes state management shapes the application architecture, which we even interchangeably call state management, app architecture. State management is a controversial topic among all developers, and it's, at the same time, one of the most complex topics that developers should decide on when they are building a Flutter app. Many developers say one solution is the best, whereas some disagree! What if I tell you that, in my opinion, there is no right and wrong answer! If you ask a software architect, which state management is the best for an application? The answer is evident; It Depends. This talk discusses how to think like an architect and understand, recognize, and analyze tradeoffs and characteristics when choosing state management. I will show you why all state management might be best and worst, at the same time for your application which eventually helps you to make your mind to determine your appropriate solution.

  • Running Automated Flutter Integration Test

  • Scalable Flutter Mobile Development

  • Flutter PWA, What and How!

    The web is the largest application-delivery platform in existence, and introducing progressive web applications takes it to the next level. Flutter, a UI toolkit to create beautiful cross-platform applications, supports standard web technologies like HTML, DOM, Canvas, JavaScript, and runs PWA on the browser; Not surprisingly, with only one language, Dart! But, what exactly is PWA? How Service Worker as the brain of the PWA works? How can Flutter web be turned into a progressive web app? What are the advanced patterns in creating PWA that can be applied in Flutter web? These are all questions that I will answer in this session.

  • Flutter 2

    What has happened in FlutterEngage 2021 and what is new in Flutter2

  • Efficient Debugging with Dart DevTools

    Debugging takes a big portion of development time; hence, it's crucial to become an efficient and effective developer with an appropriate tool that could, ultimately, save our time. Dart DevTools is a web suite of debugging and performance tools that can work standalone or integrated into your IDE, aiming to ease debugging different Flutter and Dart application parts, including layout issues, performance problems, Network requests, and many more. In this talk, you'll learn what a Flutter developer can do with these tools and how you can get the most out of your development time using Dart DevTools.

  • PWA, ADVANCED PATTERNS AND STRATEGIES

    Building progressive web apps has become the norm of web development these days! In fact, we are being introduced to more complex patterns and strategies to create a PWA. For example, When I built my book's website pwawithangular.com, I considered several caching strategies and patterns to deliver fully offline and high-performance web applications that can load under 2 seconds with 3G internet. In this talk, I will share how I could manage to build a fast and reliable PWA by using different caching strategies, advanced PWA architecture, and patterns.

  • Flutter Development Workshop

    6 hours workshop to start with dart and flutte

  • Taste of web with Flutter

    The web is the largest application-delivery platform in existence and introducing progressive web applications takes it into the next level. Flutter, a UI toolkit to create beautiful cross-platform applications, supports standard web technologies like HTML, DOM, Canvas, JavaScript, and runs PWA on the browser; Not surprisingly, with only one language, Dart! In this session, I will fly you from a typical Javascript, CSS, HTML web development to Dart side with Flutter through live-coding of a beautiful progressive web app!

  • Let the main thread breathe

    The main thread, on the web, has a lot of responsibilities. At the same time, web apps are getting more sophisticated every day. Therefore, the main thread gets too busy that will disappoint our user by showing janky frames! The off-main-thread architecture ensures apps run smoothly on every device for everyone. In this talk, we will go through the possibilities in browsers such as WebWorker, Worklet, and WebAssembly by introducing practical tools that allow us to boost our user experiences.

  • Flutter, Up and Running!

    Description: Flutter is a cross-platform, mobile development framework created by Google. With user-centric design in mind, Flutter allows developers to create beautiful native apps on iOS and Android from a single codebase. In this session, I will walk you through the basics of Flutter and Dart such as core concepts, widgets, layout, and more. Last but not least, You will learn the best resources that you will need when developing with Flutter. At the end of the session, you will be able to create your next Flutter project with ease and comfort. This session contains live coding.

  • Strategic Domain-Driven Design for Improving Flutter architecture

    Architecting software, especially on a large-scale where it needs to meet the business requirements is always a challenge and Flutter apps are not an exception. Strategic Domain-Driven Design techniques ensure your application is optimized to support business goals while identifying cohesive modules, known as bounded context which creates a maintainable, comprehensible codebase by isolating dependencies and describe business value. In this talk, I explorer the idea of the ubiquitous language, the bounded context, sub-domains while they are being implemented in a real application. All in all, You'll learn how I attempted to architect a (large-scale) Flutter application by technical solution and appropriate methodology in order to have a sustainable app.

  • Things in PWA Era - JsFest 2019 Edition

    In daily basis where billions of billion devices are connected to the internet, browsers can actually take control Things like lightbulbs, robots, printers, NFC tags, toys, drones, and many more Things via web standard APIs such as WebBluetooth, WebUSB, WebNFC, Shape Detection API and etc. How about connecting to IoT gateway which supports Wifi via BLE ?! On the other hand, Progressive web apps open a new era to build web apps that work offline and resemble native apps. PWAs are installable too, therefore, your solution to controlling Things in the real world can be written once for web and reuse everywhere. In this session, I am going through some of the web capabilities to connect devices into a progressive web app and demonstrate how the web, eventually, could go beyond the browsers. There will be lots of demos such as Connect to IoT gateway via BLE over Wifi, Drone controller, NFC reader, Android ADB connector to Web and more.

  • Applying DevOps in Flutter Mobile Development

  • Hardware Connectivity On PWA

    In daily basis where billions of billion devices are connected to the internet, browsers can actually take control Things like lightbulbs, robots, printers, NFC tags, toys, drones, and many more Things via web standard APIs such as WebBluetooth, WebUSB, WebNFC, Shape Detection API and etc. How about connecting to IoT gateway which supports Wifi via BLE ?! On the other hand, Progressive web apps open a new era to build web apps that work offline and resemble native apps. PWAs are installable too, therefore, your solution to controlling Things in the real world can be written once for web and reuse everywhere. In this session, I am going through some of the web capabilities to connect devices into a progressive web app and demonstrate how the web, eventually, could go beyond the browsers. There will be lots of demos such as Connect to IoT gateway via BLE over Wifi, Drone controller, NFC reader, Android ADB connector to Web and more.

  • What the Flutter

  • Parallel Computing in React

    User is working with your application, suddenly, UI freezes and probably, one of the CPU cores is burning! They cannot do anything. The only perception you can feel is as hot as a hell metal case of the laptop. Although this sounds like a horror movie, this is your application that cannot leverage modern APIs to lift heavy computation to a different thread where consequently user suffers the pain. Modern features like Web Workers, WebAssembly, Worklets, and Service Worker allow us to leverage multithreading computing to run tasks parallelly which at the end, makes the user feel like in a rainbow paradise instead of a nightmare, even though JavaScript is a single-threaded programming language! In this session, I am going to show my experience running jobs in parallel on a React application that will provide a pleasant user experience and exciting development.

  • Things in PWA Era

    In daily basis where billions of billion devices are connected to the internet, browsers can actually take control Things like lightbulbs, robots, printers, NFC tags, toys, drones, and many more Things via web standard APIs such as WebBluetooth, WebUSB, WebNFC, Shape Detection API and etc. How about connecting to IoT gateway which supports Wifi via BLE ?! On the other hand, Progressive web apps open a new era to build web apps that work offline and resemble native apps. PWAs are installable too, therefore, your solution to controlling Things in the real world can be written once for web and reuse everywhere. In this session, I am going through some of the web capabilities to connect devices into a progressive web app and demonstrate how the web, eventually, could go beyond the browsers. There will be lots of demos such as Connect to IoT gateway via BLE over Wifi, Drone controller, NFC reader, Android ADB connector to Web and more.

  • Hardware Connectivity on the progressive web - IoT Meetup

  • Cross Team Frontend Architecture

  • Hardware Connectivity on the progressive web with Vue