1. Introduction
Description: This extension uses latest Firebase Storage SDK [20.2.1] and Firebase Auth SDK [22.2.0] to integrate its features in your app. You can easily do these operations:
- upload file
- download file
- list files
- delete file
- get metadata of files
…. and all basic authentication features which includes
- Sign up with email & password
- Login with email & password
- Login with Google
- Login with Microsoft
- Sign In with Phone Number
- Get User info
- Update User info (Profile, Email, Password)
- Verify Email address with link
- Send password reset link on email
- Get Id Token
- Delete user
Latest Version: 3.2
Released: September 8, 2023
Last Updated: August 4, 2024
2. Blocks






3. Docs
| UploadFailed | Event raised when uploading failsfile | texterrorMsg | text |
| UploadProgress | Event raised when upload progress changesfile | textbytesTransferred | numbertotalBytes | number |
| FileUploaded | Event raised after file has been uploadedfile | textfileName | textdownloadUrl | text |
| GotMetadata | Event raised after getting metadata. If any error occurred then dictionary will have single key named ‘errorMsg’.metadataDict | dictionary |
| DownloadSuccessful | Event indicating file has been downloadedfileName | textoutputPath | text |
| DownloadFailed | Event indicating file downloading has failedfileName | texterrorMsg | text |
| GotFilesList | Event raised after getting files listlist | list |
| FileDeleted | Event raised after getting delete response. If successful then response will be empty, otherwise error msg.successful | booleanresponse | text |
| GetUserInfoFailed | Event raised if some error occurred while getting user info |
| GotUserInfo | Event raised after getting user infoprovider | textuserId | textname | textemail | textprofilePicture | textphoneNumber | text |
| GotIdToken | Event raised after getting Id Token of current usertoken | text |
| SignUpSuccessful | Event raised if sign up was successfulprovider | textuserId | textname | textemail | textprofilePicture | textphoneNumber | text |
| SignUpFailed | Event raised if sign up failederrorMsg | text |
| LoginSuccessful | Event raised if login was successful and provides user infoprovider | textuserId | textname | textemail | textprofilePicture | textphoneNumber | text |
| LoginFailed | Event raised when login failedprovider | texterrorMsg | text |
| UserUpdateFailed | Event raised when some error occurred while updating usertype | texterrorMsg | text |
| UserUpdateSuccess | Event raised when user info was successfully updatedtype | text |
| UserDeletedResult | Event raised after getting DeleteUser resultsuccessful | boolean |
| OtpSent | Event raised when OTP has been sent |
| Init | Initializes firebase storage with provided credentialsprojectId | textapiKey | textstorageBucket | textappId | textoauthKey | text |
| Upload | Uploads file from given path/urifilePath | textfileName | text |
| BucketName | Returns storage bucket name |
| GetMetadata | Tries to get metadata of filefileName | text |
| Download | Tries to download specified file to output path/uri. If providing Uri as output then make sure to create the file first with SAF. If path provided then file will be created if it doesn’t exixt.fileName | textoutputPath | text |
| ListFiles | Gets a list of files in specified folder. For root folder provide ‘/’ as argument.folder | text |
| Delete | Delets specified filefileName | text |
| PauseDownloads | Pause all active downloads |
| ResumeDownloads | Resume all download tasks |
| PauseUploads | Pause all upload tasks |
| SignUpWithEmail | Sign up with email and passwordemail | textpassword | text |
| IsSignedIn | Return whether there is an active user or not |
| GetUserInfo | Tries to get user info of currently signed user |
| GetIdToken | Tries to get id token |
| LoginWithEmail | Login user with email and passwordemail | textpassword | text |
| LoginWithGoogle | Login the user with Google |
| SignOut | Sign out the currently signed user |
| UpdateEmail | Update the email address of current useremail | text |
| UpdateProfile | Update display name and profile picture of current userdisplayName | textphotoUrl | text |
| VerifyEmail | Send email for verification |
| SendPasswordResetEmail | Sends password reset email |
| UpdatePassword | Updates the password of currently signed usernewPassword | text |
| DeleteUser | Deletes currently signed user |
| SignInWithPhone | Sign in user with Phone NumberphoneNumber | text |
| SignInWithMicrosoft | Sign In user with Microsoft Azure Active DirectorycustomParameters | dictionaryscopes | list |
| VerifyPhoneNumber | Verify OTP to sign in with Phone Numberotp | text |
4. Usages
Init
You can easily find these credentials in google-services.json file which you get after adding your app to Firebase project and adding Auth + Storage features.
Upload
Image will be uploaded in test subfolder. Use / as prefix (eg. /sample.jpg) to upload files into root folder.
List Files, Get Metadata and Download

metadata dictionary keys
- downloadUrl
- contentDisposition
- contentEncoding
- contentType
- timeCreated
- updated
- size
Values may contain \ , make sure to remove it
Authentication blocks are self explanatory. So I’ll add blocks for that later, if needed.
5. Downloads
Licensed under creativecommons.org/licenses/by-sa/4.0
An attribution and link to sunnythedeveloper.in is must
6. Support Me
Your support will really motivate me to create more such extensions.
Thank you.
Hope it helps!