Skip to content

Latest commit

 

History

History
59 lines (57 loc) · 6.9 KB

Flutter Resources.md

File metadata and controls

59 lines (57 loc) · 6.9 KB

Flutter Roadmap

  • Start with a Flutter Course (For Structured Learning). Some of the Best Courses are :

    • Vandad Navahandipoor - Youtube (Beginner Friendly and Updated)
    • Angela Yu Flutter Course - Udemy, freecoursesite (Easy and Beginner Friendly)
    • Maximilian Flutter Course - Udemy, freecoursesite (Very Detailed and Excellent for strong learning)
  • Halfway through the Course when you are Introduced to the Basic UI Widgets, start working on a UI Clone App(like spotify,netflix,twitter) {skip core functionality for now and focus more on UI Blocks. Try to make your code as adaptive and responsive as possible} of your Choice, to get better at UI Making. And of course, keep the Course running in parallel. Advice: Don't pick something too easy that uses only the Most Basic Widgets, you can now do more than you realize. Make it special, after all it’s likely your first app.

  • You may refer to these for design inspiration :

  • Dont forget to learn about Animations along with UI components like :

    • AnimatedWidget
    • AnimatedBuilder
    • AnimationController
    • CurvedAnimation
    • Hero
    • Opacity
  • In these static apps you must play with storage too like:

  • After learning about the APIs and basic Networking Part of Flutter start working on a new Project and Implement all this. Try to use some advanced UI Elements in your app.

  • Also start using the Cool Packages from Pub.dev. You can also implement them on your own, if you can :) As always keep the Course running in Parallel

  • You can find interesting API to work with here (For consuming these API use http or dio) :

  • At this point the Course and you would have likely covered all the Basics. So now start focusing on writing clean and Manageable Code. Focus on the OOPs concept and learn how to modularise the Code in Files and Classes. Now you can either finish with the Course {Firebase Auth, Firebase Database, Firebase Storage, Firebase Messaging and Advanced Topics} or make some more Projects using new Widgets and better state management techniques.

    • Learn Provider if you haven’t by now from YouTube or whatever source you find the best. Provider is the easiest state management to pick up and will make your development journey a lot easier.
    • That said, if you have a strong background in state management from other reactive frameworks, you can find packages and tutorials listed here.
  • After you are done with all this, start learning Firebase and finish the Course for good. Firebase opens the door to all new possibilities, so pick a new Project and start working on It. At Least try to Implement all the basic UI/UX of a modern App. { i.e Login Functionality, Notification Service, Local Storage Integration, Permission, Downlaod Manager, Media Playback etc}

  • Around this time you will be more than capable to find the Best source and Path of Learning for Yourself. But when in doubt ask others or google. All of us know this but still, I will say it again: Making Projects is the Best Way to Learn

  • So now that you’ve come this far. It’s obvious you love Flutter and what’s the best way to show that love?

    • Simple, Make super Cool Apps, Participate in Hackathons, contribute to open-source, secure an Internship ( or maybe a job at Google’s Flutter Team), etc etc.
  • So here are a few more bonus Tips, to up your flutter Game:

    • P.S: This can look intimidating at first, but don’t worry. You can cover it all slowly at your own pace, one step at a time.
    • Want to contribute or participate globally. What architecture will you use? Your answer to this will decide whether you will get the job or lose it. So, for an easy start go to the RESO CODER youtube channel and learn clean architecture and test-driven development(TDD).
    • Last but not least, if you still want to get the best deal in the market with flutter then get your hands dirty on DDD (Domain-Driven Design), learn from RESO CODER, which again uses firebase so yeah only half of it is the pain now, as you have already covered the firebase part. PS: This architecture is followed in many other languages and frameworks too.
    • Quality Assurance, this is important for realsing your app (After all, now you are a champ!):
      • Firebase Crashlytics, App distribution, Analytics
      • Google play beta tests
      • TestFlight
      • App Center
    • Notes: Flutter has excellent Documentation so consult it whenever in doubt. Some good Youtube Channels are :
    • This thing here is the real Flutter Roadmap in all its glory: https://github.com/olexale/flutter_roadmap But it's hard to follow :)
    • Join Flutter India and Other Flutter channels on Telegram to get your doubts resolved Instantly.
    • For staying updated with the Flutter world subscribe to these newsletters:
    • If you are female or non-binary don't forget to join Flutterista ( A world-wide community of people who identify as women or non-binary who have an interest in the Flutter SDK. The Flutteristas have a monthly meeting which usually includes a presentation by Google Flutter team member(s) or other Flutter Community member(s).). To join send a message to @GeekMeSpeakStef or @imafiguresk8r.