cloud_firestore
適用於 Android 與 iOS 的 Cloud Firestore Flutter 插件,一個雲端主機的 NoSQL 資料庫,支援即時同步與離線功能。
使用 Firebase 即時資料庫和儲存功能在 Flutter 框架中建構的完整功能 Twitter 克隆應用
適用於 Android 與 iOS 的 Cloud Firestore Flutter 插件,一個雲端主機的 NoSQL 資料庫,支援即時同步與離線功能。
適用於 Google Analytics for Firebase 的 Flutter 插件,這是一款應用測量解決方案,可提供 Android 和 iOS 上的應用使用情況和使用者參與度的洞察。
Firebase Auth 的 Flutter 插件,支援使用密碼、電話號碼以及 Google、Facebook 和 Twitter 等身分提供者進行驗證。
Firebase Database 的 Flutter 插件,一個託管於雲端的 NoSQL 資料庫,可在 Android 和 iOS 客戶端之間實時同步資料,並支援離線存取。
適用於 Firebase 云訊息傳遞的 Flutter 插件,一種跨平台訊息解決方案,可讓您在 Android 和 iOS 上可靠地傳遞訊息。
Firebase Remote Config 的 Flutter 插件。無需重新發佈應用即可更新應用的外觀與行為。
適用於 Firebase Cloud Storage 的 Flutter 插件,這是一項功能強大、簡單且具成本效益的物件儲存服務,適用於 Android 與 iOS。
一個包裝 InheritedWidget 的工具,讓它們更容易使用且更具可重複使用性。
基於蘋果風格圖標的Cupertino元件預設圖示資源
一個用於從 fonts.google.com 使用字體的 Flutter 套件。支援 HTTP 取得、快取和資源封裝。
用於 Google 登入的 Flutter 插件,一種透過 Google 帳戶登入的安全驗證系統。
用於從 Android 和 iOS 圖像庫中選擇圖片,以及使用相機拍攝新照片的 Flutter 插件。
{"sdk":"flutter"}^1.0.3^0.10.0^7.2.0^2.0.3^3.3.1^6.0.1^5.1.3^11.0.4^11.2.1^5.2.0^12.1.2^2.0.3^1.0.0^8.0.1^2.0.8^15.0.4^6.1.2^0.19.0^6.0.12^10.0.0^6.2.1^5.0.4^6.0.4^1.0.0^4.1.0^0.28.0^1.0.0^1.17.10{"sdk":"flutter"}^0.13.1以下為英文專案原文快照,最新內容請造訪 GitHub。
A working Twitter clone built in Flutter using Firebase auth,realtime,firestore database and storage.
Fwiiter BannerDart CI GitHub pull requests GitHub closed pull requests GitHub last commit GitHub issues Open Source Love
Awesome Flutterhttps://play.google.com/intl/en_us/badges/static/images/badges/en_badge_web_generic.png
:boom: Fwitter app now uses both firebase realtime and firestore database.:boom:
Firestore database for app.Firebase Realtime database for app.| Welcome Page | Login Page | Signup Page | Forgot Password Page |
|---|---|---|---|
| https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Auth/screenshot_1.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Auth/screenshot_2.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Auth/screenshot_3.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Auth/screenshot_4.jpg?raw=true |
| Home Page Sidebaar | Home Page | Home Page | Home Page |
|---|---|---|---|
| https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Home/screenshot_5.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Home/screenshot_2.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Home/screenshot_7.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Home/screenshot_6.jpg?raw=true |
| Compose Tweet Page | Reply To Tweet | Reply to Tweet | Compose Retweet with comment |
|---|---|---|---|
| https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/CreateTweet/screenshot_1.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/CreateTweet/screenshot_2.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/CreateTweet/screenshot_4.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/CreateTweet/screenshot_3.jpg?raw=true |
| Tweet Detail Page | Tweet Thread | Nested Tweet Thread | Tweet options |
|---|---|---|---|
| https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/TweetDetail/screenshot_3.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/TweetDetail/screenshot_4.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/TweetDetail/screenshot_1.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/TweetDetail/screenshot_2.jpg?raw=true |
| Notification Page | Notification Page | Notification Page | Notification Setting Page |
|---|---|---|---|
| https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Notification/screenshot_1.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Notification/screenshot_2.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Notification/screenshot_3.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Notification/screenshot_4.jpg?raw=true |
| Profile Page | Profile Page | Profile Page | Profile Page |
|---|---|---|---|
| https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Profile/screenshot_1.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Profile/screenshot_2.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Profile/screenshot_4.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Profile/screenshot_7.jpg?raw=true |
| Select User Page | Chat Page | Chat Users List | Conversation Info Page |
|---|---|---|---|
| https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Chat/screenshot_1.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Chat/screenshot_2.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Chat/screenshot_3.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Chat/screenshot_4.jpg?raw=true |
| Search Page | Search Setting Page | Tweet Options - 1 | Tweet Options - 2 |
|---|---|---|---|
| https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Search/screenshot_1.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Search/screenshot_2.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/TweetDetail/screenshot_5.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/TweetDetail/screenshot_6.jpg?raw=true |
| Setting Page | Account Setting Page | Privacy Setting Page | Privacy Settings Page |
|---|---|---|---|
| https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Settings/screenshot_1.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Settings/screenshot_2.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Settings/screenshot_4.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Settings/screenshot_3.jpg?raw=true |
| Content Prefrences Page | Display Setting Page | Data Settings Page | Accessibility Settings |
|---|---|---|---|
| https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Settings/screenshot_5.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Settings/screenshot_6.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Settings/screenshot_7.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Settings/screenshot_8.jpg?raw=true |
| Users who likes Tweet | About Setting Page | Licenses Settings | Settings |
|---|---|---|---|
| https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/TweetDetail/screenshot_7.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Settings/screenshot_9.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Settings/screenshot_10.jpg?raw=true | https://github.com/TheAlphamerc/flutter_twitter_clone/blob/master/screenshots/Settings/screenshot_81.jpg?raw=true |
|-- lib
| |-- helper
| | |-- constant.dart
| | |-- customRoute.dart
| | |-- enum.dart
| | |-- routes.dart
| | |-- theme.dart
| | |-- utility.dart
| | '-- validator.dart
| |-- main.dart
| |-- model
| | |-- chatModel.dart
| | |-- feedModel.dart
| | |-- notificationModel.dart
| | '-- user.dart
| |-- page
| | |-- Auth
| | | |-- forgetPasswordPage.dart
| | | |-- selectAuthMethod.dart
| | | |-- signin.dart
| | | |-- signup.dart
| | | |-- verifyEmail.dart
| | | '-- widget
| | | '-- googleLoginButton.dart
| | |-- common
| | | |-- sidebar.dart
| | | |-- splash.dart
| | | |-- usersListPage.dart
| | | '-- widget
| | | '-- userListWidget.dart
| | |-- feed
| | | |-- composeTweet
| | | | |-- composeTweet.dart
| | | | |-- state
| | | | | '-- composeTweetState.dart
| | | | '-- widget
| | | | |-- composeBottomIconWidget.dart
| | | | |-- composeTweetImage.dart
| | | | '-- widgetView.dart
| | | |-- feedPage.dart
| | | |-- feedPostDetail.dart
| | | '-- imageViewPage.dart
| | |-- homePage.dart
| | |-- message
| | | |-- chatListPage.dart
| | | |-- chatScreenPage.dart
| | | |-- conversationInformation
| | | | '-- conversationInformation.dart
| | | '-- newMessagePage.dart
| | |-- notification
| | | '-- notificationPage.dart
| | |-- profile
| | | |-- EditProfilePage.dart
| | | |-- follow
| | | | |-- followerListPage.dart
| | | | '-- followingListPage.dart
| | | |-- profileImageView.dart
| | | |-- profilePage.dart
| | | '-- widgets
| | | '-- tabPainter.dart
| | |-- search
| | | '-- SearchPage.dart
| | '-- settings
| | |-- accountSettings
| | | |-- about
| | | | '-- aboutTwitter.dart
| | | |-- accessibility
| | | | '-- accessibility.dart
| | | |-- accountSettingsPage.dart
| | | |-- contentPrefrences
| | | | |-- contentPreference.dart
| | | | '-- trends
| | | | '-- trendsPage.dart
| | | |-- dataUsage
| | | | '-- dataUsagePage.dart
| | | |-- displaySettings
| | | | '-- displayAndSoundPage.dart
| | | |-- notifications
| | | | '-- notificationPage.dart
| | | |-- privacyAndSafety
| | | | |-- directMessage
| | | | | '-- directMessage.dart
| | | | '-- privacyAndSafetyPage.dart
| | | '-- proxy
| | | '-- proxyPage.dart
| | |-- settingsAndPrivacyPage.dart
| | '-- widgets
| | |-- headerWidget.dart
| | |-- settingsAppbar.dart
| | '-- settingsRowWidget.dart
| |-- state
| | |-- appState.dart
| | |-- authState.dart
| | |-- chats
| | | '-- chatState.dart
| | |-- feedState.dart
| | |-- notificationState.dart
| | '-- searchState.dart
| '-- widgets
| |-- bottomMenuBar
| | |-- HalfPainter.dart
| | |-- bottomMenuBar.dart
| | '-- tabItem.dart
| |-- customAppBar.dart
| |-- customWidgets.dart
| |-- newWidget
| | |-- customClipper.dart
| | |-- customLoader.dart
| | |-- customProgressbar.dart
| | |-- customUrlText.dart
| | |-- emptyList.dart
| | |-- rippleButton.dart
| | '-- title_text.dart
| '-- tweet
| |-- tweet.dart
| '-- widgets
| |-- parentTweet.dart
| |-- retweetWidget.dart
| |-- tweetBottomSheet.dart
| |-- tweetIconsRow.dart
| |-- tweetImage.dart
| '-- unavailableTweet.dart
|-- pubspec.yaml
If you wish to contribute a change to any of the existing feature or add new in this repo, please review our contribution guide, and send a pull request. I welcome and encourage all pull requests. It usually will take me within 24-48 hours to respond to any issue or request.
Sonu Sharma (Twitter) (Youtube) (Insta) (Dev.to) Twitter Follow
If you found this project helpful or you learned something from the source code and want to thank me, consider buying me a cup of :coffee:
You can also nominate me for Github Star developer program https://stars.github.com/nominate