cloud_firestore
Android 및 iOS에서 실시간 동기화 및 오프라인 지원이 가능한 클라우드 호스팅형 NoSQL 데이터베이스인 Cloud Firestore용 Flutter 플러그인입니다.
Firebase 실시간 데이터베이스 및 스토리지 기능을 사용하여 Flutter 프레임워크로 구축된 완전히 기능하는 트위터 클론
Android 및 iOS에서 실시간 동기화 및 오프라인 지원이 가능한 클라우드 호스팅형 NoSQL 데이터베이스인 Cloud Firestore용 Flutter 플러그인입니다.
Google Analytics for Firebase용 Flutter 플러그인. Android 및 iOS에서 앱 사용 및 사용자 참여에 대한 통찰력을 제공하는 앱 측정 솔루션입니다.
Firebase Auth용 플러터 플러그인으로, 비밀번호, 전화번호 및 Google, Facebook, Twitter 등의 신원 제공자를 사용한 인증을 가능하게 합니다.
Firebase Database용 Flutter 플러그인으로, 클라우드 호스팅된 NoSQL 데이터베이스로 Android 및 iOS 클라이언트 간 실시간 데이터 동기화와 오프라인 액세스를 지원합니다.
Firebase Cloud Messaging용 플러터 플러그인으로, Android 및 iOS에서 메시지를 신뢰할 수 있게 전달할 수 있는 크로스플랫폼 메시징 솔루션입니다.
Firebase Remote Config용 Flutter 플러그인입니다. 재릴리스 없이 애플리케이션의 외관과 동작을 업데이트하세요.
Android 및 iOS용 강력하고 간편하며 비용 효율적인 객체 저장 서비스인 Firebase Cloud Storage용 Flutter 플러그인입니다.
InheritedWidget를 둘러싸는 래퍼로, 사용하기 쉽게 하고 재사용 가능하게 만듭니다.
애플 스타일 아이콘을 기반으로 한 Cupertino 위젯용 기본 아이콘 자산
fonts.google.com의 폰트를 사용하기 위한 Flutter 패키지입니다. HTTP 가져오기, 캐싱 및 자산 번들링을 지원합니다.
Google 계정으로 로그인하는 데 사용되는 안전한 인증 시스템인 Google Sign-In용 Flutter 플러그인입니다.
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