{"id":19113788,"url":"https://github.com/mugbug/flutter-learning-roadmap","last_synced_at":"2026-03-19T08:10:23.265Z","repository":{"id":118463766,"uuid":"544106207","full_name":"mugbug/flutter-learning-roadmap","owner":"mugbug","description":"Some resources I'd recommend reading to get started with Flutter","archived":false,"fork":false,"pushed_at":"2023-11-22T20:21:07.000Z","size":23,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-22T11:45:38.267Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mugbug.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2022-10-01T16:59:43.000Z","updated_at":"2024-05-09T15:38:27.000Z","dependencies_parsed_at":null,"dependency_job_id":"4e0b4b40-40c6-4da8-bf1e-e73fa48375ed","html_url":"https://github.com/mugbug/flutter-learning-roadmap","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mugbug/flutter-learning-roadmap","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mugbug%2Fflutter-learning-roadmap","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mugbug%2Fflutter-learning-roadmap/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mugbug%2Fflutter-learning-roadmap/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mugbug%2Fflutter-learning-roadmap/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mugbug","download_url":"https://codeload.github.com/mugbug/flutter-learning-roadmap/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mugbug%2Fflutter-learning-roadmap/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29851221,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-25T22:37:40.667Z","status":"online","status_checked_at":"2026-02-26T02:00:06.774Z","response_time":89,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-09T04:39:02.492Z","updated_at":"2026-02-26T07:09:44.532Z","avatar_url":"https://github.com/mugbug.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Flutter Roadmap\n\n## Task list\n\n* [ ] `very_good create my_personal_project`\n* [ ] Go to [BloC tutorials](https://bloclibrary.dev/#/fluttertodostutorial) and try to implement one of those following the [Bloc docs](https://bloclibrary.dev/#/fluttertodostutorial)\n* [ ] Push your code to a GitHub repo and try adding some workflows to run automated tests and linter on pull requests\n\n## Resources\n\nProject starting point:\n\n- [fvm to install flutter and switch between versions](https://fvm.app/)\n- [https://pub.dev/packages/very_good_cli](https://pub.dev/packages/very_good_cli) use this instead of the default `flutter create`\n\nFoundation:\n\n- [Decoding Flutter](https://www.youtube.com/watch?v=33_0ABjFJUU\u0026list=PLjxrf2q8roU1fRV40Ec8200rX6OuQkmnl)\n\nStage Management\n\n- [BloC docs](https://bloclibrary.dev/#/gettingstarted) \u0026 [tutorials](https://bloclibrary.dev/#/fluttertodostutorial)\n- [Why we [vgv] use flutter_bloc for state management](https://verygood.ventures/blog/why-we-use-flutter-bloc)\n\nNavigation/routing\n\n- [go_router](https://pub.dev/packages/go_router)\n\nCode architecture\n\n- [Are you saying that my code is boring? Thank you!](https://verygood.ventures/blog/boring-code-part-1) \u0026 [Very good layered architecture in Flutter](https://verygood.ventures/blog/very-good-flutter-architecture)\n\nUser Interface\n\n- Discover some useful widgets at [Widget Of the Week](https://www.youtube.com/hashtag/widgetoftheweek)\n- [Flutter Widget Livebook](https://flutter-widget.live/basics/introduction)\n- [Flutter Gallery](https://gallery.flutter.dev/#/)\n\nTesting\n\n- [Widget Testing [2022]](https://www.youtube.com/watch?v=aReBbQgLjtk)\n- [Other testing resources](https://verygood.ventures/blog/flutter-testing-resources)\n- Libraries:\n  - Unit \u0026 widget \u0026 mocking: [mocktail](https://github.com/felangel/mocktail)\n  - Snapshot (golden) testing: [alchemist](https://github.com/Betterment/alchemist)\n  - UI/e2e: [maestro](https://maestro.mobile.dev/)\n\nCI/CD\n\n- [fastlane](https://docs.fastlane.tools/)\n  - Android: [tbd]\n  - iOS: [Tutorial](https://joshuamdeguzman.com/continuous-delivery-for-flutter-using-fastlane-and-github-actions-pt-3-ios/)\n    - Create a Deploy Key for the certificates repo instead of a github's personal access token\n    - You could use a [dotenv file](https://docs.fastlane.tools/best-practices/keys/#dotenv) instead of adding a lot of secrets\n- [reusable GitHub Actions workflows](https://github.com/VeryGoodOpenSource/very_good_workflows)\n\nMonorepo\n\n- [melos](https://melos.invertase.dev/)\n\nTooling\n\n- [DevTools](https://www.youtube.com/watch?v=nq43mP7hjAE)\n- [File templates with BrickHub + Mason](https://brickhub.dev/)\n\nCode examples\n\n- [Google I/O 2021 Photo Booth](https://github.com/flutter/photobooth)\n- [Flutter News Toolkit example](https://github.com/flutter/news_toolkit/tree/main/flutter_news_example)\n\nOther\n\n- [Flutter's youtube channel](https://www.youtube.com/c/flutterdev/playlists) has an infinite amount of good content teaching more about Flutter.\n- [Flutter Vikings 2022 conf videos](https://www.youtube.com/watch?v=gn1F7GClECY\u0026list=PL4dBIh1xps-EWXK28Qn9kiLK9-eXyqKLX)\n- [DartFrog: dart on backend](https://github.com/verygoodopensource/dart_frog)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmugbug%2Fflutter-learning-roadmap","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmugbug%2Fflutter-learning-roadmap","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmugbug%2Fflutter-learning-roadmap/lists"}