• Build a Social Network with Flutter & Firebase

    Development May 13, 2020
    Build a Social Network with Flutter & Firebase

    Build a Social Network with Flutter & Firebase

    This study covers how to build a social network with Flutter and Firebase. Flutter is an open-source (free) User Interface software development kit created by Google in May 2017. Flutter is written in C, C++, and Dart. Flutter is used to develop software applications for mobile devices as well as computers including, Google Android, Apple iOS, Microsoft Windows, Apple Mac, Linux, Google Fuchsia, and the web-based. The first release of Flutter was identified as codename “Sky” and tested on Google’s Android operating system. This study teaches how to develop a comprehensive mobile social media application like Instagram or any other social network utilizing Flutter and Firebase. Firebase is a mobile and web application development program developed by Firebase, Inc. in 2011, then procured by Google in 2014.

    Flutter Features:

    Fast Development: Design your application to life in less time with a stateful hot reload. Use a rich set of fully-customizable widgets to develop original interfaces in moments.

    Expressive and Flexible UI: Quickly boat features with a focus on primary end-user practices. The layered structure allows for full customization, which results in amazingly fast rendering, powerful, and adaptable designs.

    Native Performance: Flutter’s widgets consolidate all significant principles variations such as scrolling, navigation, icons, and fonts, and your Flutter code is compiled to primary ARM machine code using Dart’s native compilers.

    Who is using Flutter?

    • Google
    • eBay
    • BMW
    • Square
    • Alibaba Group
    • CapitalOne

    Firebase Features:

    Better Applications: Cloud Firestore, ML Kit, Cloud Functions, Authentication, Hosting, Cloud Storage, Realtime Database.

    Application Improvement: Crashlytics, Performance Monitoring, Test Lab, App Distribution.

    Business Growth: In-App Messaging, Google Analytics, Predictions, A/B Testing, Cloud Messaging, Remote Config, Dynamic Links.

    Firebase Extensions:

    • Resize Images
    • Sync with Mailchimp
    • Export Collections to BigQuery
    • Distributed Counter
    • Delete User Data
    • Translate Text
    • Trigger Email
    • Shorten URLs
    • Limit Child Nodes

    Requirements:

    • Basic awareness with Flutter
    • Familiarity with Firebase and Firestore is convenient

    Application Features:

    • You will learn how to build an effective, production-based real-time social network application using Flutter and Firebase
    • A timeline just like Instagram
    • An activity feed for all user interactions
    • Media sharing
    • Live user notifications
    • User profile customization
    • Messaging
    • User Following/Unfollowing
    • Like/Unlike posts
    • Handling device camera for media uploads
    • Social login
    • Geolocation

    Who this study is for:

    • Mobile and website developers attending to build effective real-world, productive applications
    • Flutter developers

    Author: Reed Barger
    Language: English
    Size: 4.04GB

    0 0 vote
    Article Rating

    Study Topics:

    • 01 Getting Started
      1. 1 1.01 What You will Need
      2. 2 1.02 Running our Project
      3. 3 1.03 Firebase Setup Overview
      4. 4 1.04 Solutions to Common Problems
    • 02 App Setup
      1. 1 2.01 Starting App Code
      2. 2 2.02 App Structure and Files
      3. 3 2.03 Firebase Integration with Flutter
    • 03 Building App Structure
      1. 1 3.01 Signin Splash Page
      2. 2 3.02 Creating Custom Theme
      3. 3 3.03 Completing Authentication Flow
      4. 4 3.04 Navigation and Pages
      5. 5 3.05 Building a Reusable Header Widget
      6. 6 3.06 Adding Page Animations for Better UX
      7. 7 3.07 Making Reusable Loading Widgets
    • 04 Firestore with Flutter Crash Course
      1. 1 4.01 Intro to Firestore Database
      2. 2 4.02 Fetching Collection and Document Data from Firestore
      3. 3 4.03 Simple and Compound Queries in Firestore
      4. 4 4.04 FutureBuilders and StreamBuilders for Fetching and Streaming Data
      5. 5 4.05 Adding Complete CRUD Functionality to Firestore Documents
      6. 6 4.06 Optimally Structuring our Firestore Database
    • 05 User Authentication and Social Login
      1. 1 5.01 Save Auth Users in Users Collection
      2. 2 5.02 Creating User Instance from DocumentSnapshot in Firestore
      3. 3 5.03 Validating Create Account Form
    • 06 Searching for Users
      1. 1 6.01 Building Search No Content Screen
      2. 2 6.02 Responsive App Design with MediaQuery
      3. 3 6.03 Adding Search User Functionality
      4. 4 6.04 Improving Search Result Appearance
    • 07 Uploading Posts
      1. 1 7.01 Upload Post Splash Screen and Image Picker
      2. 2 7.02 Building Upload Form
      3. 3 7.03 Uploading Media Files and Creating Posts
      4. 4 7.04 Get User Location with Geolocation
    • 08 Editing User Profile
      1. 1 8.01 Building Profile Header
      2. 2 8.02 Building Edit Profile Page
      3. 3 8.03 Updating User Data in Edit Profile Page
    • 09 Structuring and Displaying Posts
      1. 1 9.01 Create Post Model
      2. 2 9.02 Structuring Post Widget
      3. 3 9.03 Displaying Posts and Post Count
    • 10 Profile Page
      1. 1 10.01 Performant Image Loading and Post Grid for Profile Page
      2. 2 10.02 Toggle Profile Post Orientation
      3. 3 10.03 Building No Content for Profile Page
    • 11 Liking and Unliking Posts
      1. 1 11.01 Adding Like - Unlike Functionality for Posts
      2. 2 11.02 Making a Heartbeat Animation when Liking a Post
    • 12 Realtime Messaging with Comments
      1. 1 12.01 Building Comments Page Structure
      2. 2 12.02 Realtime Messaging Functionality
    • 13 Activity Feed Notifications
      1. 1 13.01 Creating Activity Feed Notification for New Like
      2. 2 13.02 Creating Activity Feed Notification for New Comment
      3. 3 13.03 Displaying Activity Feed Notifications
      4. 4 13.04 Add Post Screen, See Other Users Profiles
    • 14 Following and Unfollowing Users
      1. 1 14.01 Making Follow Unfollow Buttons
      2. 2 14.02 Following Unfollowing Users
    • 15 Cloud Firestore Triggers with Firebase Functions
      1. 1 15.01 General Timeline Overview, Initialize Firebase Functions
      2. 2 15.02 Creating onCreateFollower Firebase Function
      3. 3 15.03 Deleting Unfollowed User Posts with onDeleteFollower Firebase Function
      4. 4 15.04 Deleting Posts and Related Data
      5. 5 15.05 OnCreatePost, OnUpdatePost, and OnDeletePost Firestore Cloud Triggers
    • 16 Building Timeline of User Posts
      1. 1 16.01 Getting, Displaying Timeline Posts
      2. 2 16.02 Suggest Users to Follow in Timeline
    • 17 App Cleanup and Improvements
      1. 1 17.01 Fixing Bugs, More about Async Await
      2. 2 17.02 Preserve Page State with AutomaticKeepAliveClientMixin
    • 18 Live Alerts with Push Notifications
      1. 1 18.01 Sending Push Notifications with Firebase Function
      2. 2 18.02 Displaying Realtime Push Notifications in our App
    • 19 Publishing our App
      1. 1 19.01 Publish App to Google Play Store
      2. 2 19.02 Publish App to iOS App Store

    Share Study:


    guest
    0 Comments
    Inline Feedbacks
    View all comments
    0
    Would love your thoughts, please comment.x
    ()
    x