Tiktok Clone
Hello there. This is a Tiktok clone developed in flutter. This app was developed according to the classes of:
Flutter & Firebase Tutorial: Build 5 Social Media Apps – UDEMY;
Versions
- Flutter: 3.0.5
- Dart: 2.17.6
Setup
Clone it in your machine:
git clone https://github.com/RodrigoNP3/Tiktok_Clone.git
Dependecies:
dependencies: cupertino_icons: ^1.0.2 get: ^4.6.5 firebase_core: ^1.24.0 firebase_auth: ^3.11.0 cloud_firestore: ^3.5.0 firebase_storage: ^10.3.10 image_picker: ^0.8.5+3 video_player: ^2.4.7 video_compress: ^3.1.1 timeago: ^3.3.0 cached_network_image: ^3.2.0
Firebase Setup:
1 – Create a new firebase project in the firebase console; You can deactivate the Google Analytics.
2 – Setup authentication by email/password;
3 – Create a Firestore Database;
Change the rules from:
rules_version = '2'; service cloud.firestore { match /databases/{database}/documents { match /{document=**} { allow read, write: if request.time < timestamp.date(2022, 10, 31); } } }
Change to:
rules_version = '2'; service cloud.firestore { match /databases/{database}/documents { match /{document=**} { allow read, write: if request.auth != null; } } }
4 – Create a Storage Database;
Change the rules from:
rules_version = '2'; service firebase.storage { match /b/{bucket}/o { match /{allPaths=**} { allow read, write: if false; } } }
Change to:
rules_version = '2'; service firebase.storage { match /b/{bucket}/o { match /{allPaths=**} { allow read, write: if request.auth != null; } } }
5 – Create an iOS app;
Apple bundle id: com.example.tiktokClone
Download the GoogleService-Info.plist and put it in the Runner folder.
ios>Runner>GoogleService-Info.plist
You can skip the next iOS app creation steps.
6 – Create an Android app;
Android package name: com.example.tiktok_clone
Download the google-services.json and put it in the app folder.
android>app>google-services.json
You can skip the next Android app creation steps.
Navigation
Download Tiktok Clone Source code on GitHub
Provides the list of the opensource Flutter apps collection with GitHub repository.