🧩 Supabase
An extension for appinventor.Developed by ali using Fast.
Specifications
Package: com.ali.supabase
Size: 88.36 KB
Version: 1.0
Minimum API Level: 14
Updated On: 2025-11-07T19:00:00Z
Built & documented using: FAST v5.2.0
Events:
Supabase has total 47 events.
1. ClientInitialized
Event triggered when the Supabase client is successfully initialized
2. TableSet
Event triggered when a table is set for database operations
| Parameter | Type |
|---|---|
| tableName | text |
3. ColumnsSet
Event triggered when columns are set for database operations
| Parameter | Type |
|---|---|
| columns | text |
4. BucketSet
Event triggered when a bucket is set for storage operations
| Parameter | Type |
|---|---|
| bucketName | text |
5. ChannelSet
Event triggered when a channel is set for realtime operations
| Parameter | Type |
|---|---|
| channelName | text |
6. FunctionSet
Event triggered when a function is set for RPC operations
| Parameter | Type |
|---|---|
| functionName | text |
7. SignUpSuccess
Event triggered when a user signs up successfully
| Parameter | Type |
|---|---|
| text | |
| userId | text |
| token | text |
8. SignInSuccess
Event triggered when a user signs in successfully
| Parameter | Type |
|---|---|
| text | |
| userId | text |
| token | text |
9. SignOutSuccess
Event triggered when a user signs out successfully
10. AuthError
Event triggered when there is an authentication error
| Parameter | Type |
|---|---|
| error | text |
11. OTPSent
Event triggered when OTP is sent successfully
| Parameter | Type |
|---|---|
| emailOrPhone | text |
12. GetUserSuccess
Event triggered when user profile is fetched successfully
| Parameter | Type |
|---|---|
| userProfile | dictionary |
13. UserUpdated
Event triggered when user profile is updated successfully
| Parameter | Type |
|---|---|
| text | |
| userId | text |
14. SessionRefreshed
Event triggered when user session is refreshed successfully
| Parameter | Type |
|---|---|
| newToken | text |
15. SelectSuccess
Event triggered when data is successfully fetched from a table
| Parameter | Type |
|---|---|
| data | list |
| tableName | text |
| columns | text |
16. InsertSuccess
Event triggered when data is successfully inserted into a table
| Parameter | Type |
|---|---|
| insertedId | text |
| tableName | text |
17. BulkInsertSuccess
Event triggered when multiple records are successfully inserted into a table
| Parameter | Type |
|---|---|
| insertedIds | text |
| tableName | text |
| count | number |
18. UpsertSuccess
Event triggered when data is successfully upserted into a table
| Parameter | Type |
|---|---|
| upsertedId | text |
| tableName | text |
19. UpdateSuccess
Event triggered when data is successfully updated in a table
| Parameter | Type |
|---|---|
| updatedCount | number |
| tableName | text |
20. DeleteSuccess
Event triggered when data is successfully deleted from a table
| Parameter | Type |
|---|---|
| deletedCount | number |
| tableName | text |
21. DatabaseError
Event triggered when there is a database operation error
| Parameter | Type |
|---|---|
| error | text |
22. UploadSuccess
Event triggered when a file is successfully uploaded
| Parameter | Type |
|---|---|
| publicUrl | text |
| bucketName | text |
| filePath | text |
23. DownloadSuccess
Event triggered when a file is successfully downloaded
| Parameter | Type |
|---|---|
| fileData | text |
| bucketName | text |
| filePath | text |
24. PublicUrlSuccess
Event triggered when a public URL is successfully generated
| Parameter | Type |
|---|---|
| publicUrl | text |
| bucketName | text |
| filePath | text |
25. FileDeleted
Event triggered when a file is successfully deleted
| Parameter | Type |
|---|---|
| bucketName | text |
| filePath | text |
26. SignedUrlCreated
Event triggered when a signed URL is successfully created
| Parameter | Type |
|---|---|
| signedUrl | text |
| bucketName | text |
| filePath | text |
27. FileMoved
Event triggered when a file is successfully moved
| Parameter | Type |
|---|---|
| bucketName | text |
| fromPath | text |
| toPath | text |
28. FileCopied
Event triggered when a file is successfully copied
| Parameter | Type |
|---|---|
| bucketName | text |
| fromPath | text |
| toPath | text |
29. ListFilesSuccess
Event triggered when files are successfully listed
| Parameter | Type |
|---|---|
| fileList | list |
| bucketName | text |
30. StorageError
Event triggered when there is a storage operation error
| Parameter | Type |
|---|---|
| error | text |
31. SubscriptionSuccess
Event triggered when a subscription is successfully created
| Parameter | Type |
|---|---|
| channelName | text |
| subscriptionType | text |
| tableName | text |
| eventType | text |
32. DatabaseChange
Event triggered when a database change is received
| Parameter | Type |
|---|---|
| channelName | text |
| tableName | text |
| eventType | text |
| payload | dictionary |
33. BroadcastReceived
Event triggered when a broadcast message is received
| Parameter | Type |
|---|---|
| channelName | text |
| eventName | text |
| payload | dictionary |
34. BroadcastSent
Event triggered when a broadcast message is sent
| Parameter | Type |
|---|---|
| channelName | text |
| eventName | text |
35. PresenceTracked
Event triggered when presence is tracked
| Parameter | Type |
|---|---|
| channelName | text |
36. PresenceChange
Event triggered when presence state changes
| Parameter | Type |
|---|---|
| channelName | text |
| joins | list |
| leaves | list |
37. Unsubscribed
Event triggered when unsubscribed from a channel
| Parameter | Type |
|---|---|
| channelName | text |
38. ChannelStatus
Event triggered with channel status information
| Parameter | Type |
|---|---|
| channelName | text |
| status | text |
39. RealtimeError
Event triggered when there is a realtime operation error
| Parameter | Type |
|---|---|
| error | text |
40. RPCSuccess
Event triggered when an RPC function is called successfully
| Parameter | Type |
|---|---|
| result | list |
| functionName | text |
41. RPCError
Event triggered when there is an RPC operation error
| Parameter | Type |
|---|---|
| error | text |
42. FunctionDefinitionsReceived
Event triggered when function definitions are received
| Parameter | Type |
|---|---|
| definitions | list |
43. UUIDGenerated
Event triggered when a UUID is generated
| Parameter | Type |
|---|---|
| uuid | text |
44. TimestampReceived
Event triggered when current timestamp is received
| Parameter | Type |
|---|---|
| timestamp | text |
45. TimestampConverted
Event triggered when timestamp is converted to milliseconds
| Parameter | Type |
|---|---|
| milliseconds | number |
46. ClientStatusReceived
Event triggered when client status is received
| Parameter | Type |
|---|---|
| status | dictionary |
47. ClientReset
Event triggered when client is reset
Methods:
Supabase has total 73 methods.
1. InitializeClient
Initialize the Supabase client with the provided URL and key
2. SetTable
Set the current table for database operations
| Parameter | Type |
|---|---|
| tableName | text |
3. SetColumns
Set the columns to select in database operations (default: *)
| Parameter | Type |
|---|---|
| columns | text |
4. SetBucket
Set the current bucket for storage operations
| Parameter | Type |
|---|---|
| bucketName | text |
5. SetChannel
Set the current channel for realtime operations
| Parameter | Type |
|---|---|
| channelName | text |
6. SetFunction
Set the current RPC function for remote procedure calls
| Parameter | Type |
|---|---|
| functionName | text |
7. SignUpWithOptions
Sign up a new user with email and password, with additional options
| Parameter | Type |
|---|---|
| text | |
| password | text |
| options | dictionary |
8. SignInWithOAuth
Sign in with an OAuth provider (Google, GitHub, etc.)
| Parameter | Type |
|---|---|
| provider | text |
9. SignInWithOTP
Sign in with a One-Time Password sent to email or phone
| Parameter | Type |
|---|---|
| emailOrPhone | text |
10. VerifyOTP
Verify OTP and sign in the user
| Parameter | Type |
|---|---|
| emailOrPhone | text |
| token | text |
| type | text |
11. GetUser
Get the profile of the currently logged in user
12. UpdateUser
Update the profile of the currently logged in user
| Parameter | Type |
|---|---|
| userData | dictionary |
13. RefreshSession
Refresh the current user's session
14. SignIn
Sign in an existing user with email and password
| Parameter | Type |
|---|---|
| text | |
| password | text |
15. SignOut
Sign out the currently logged in user
16. SelectWithFilters
Fetch data from the current Supabase table with filters
| Parameter | Type |
|---|---|
| filters | dictionary |
17. SelectWithOrder
Fetch data from the current Supabase table with ordering
| Parameter | Type |
|---|---|
| orderByColumn | text |
| ascending | boolean |
18. SelectWithLimit
Fetch data from the current Supabase table with limit
| Parameter | Type |
|---|---|
| limit | number |
19. SelectWithPagination
Fetch data from the current Supabase table with pagination
| Parameter | Type |
|---|---|
| page | number |
| pageSize | number |
20. BulkInsert
Insert multiple records into the current Supabase table
| Parameter | Type |
|---|---|
| dataList | list |
21. Upsert
Upsert data into the current Supabase table (insert or update)
| Parameter | Type |
|---|---|
| data | dictionary |
| conflictColumn | text |
22. BulkUpdate
Update multiple records in the current Supabase table with a filter
| Parameter | Type |
|---|---|
| data | dictionary |
| filterColumn | text |
| filterValue | text |
23. BulkDelete
Delete multiple records from the current Supabase table with a filter
| Parameter | Type |
|---|---|
| filterColumn | text |
| filterValue | text |
24. Select
Fetch data from the current Supabase table
25. SelectFrom
Fetch data from a specific Supabase table with specific columns
| Parameter | Type |
|---|---|
| tableName | text |
| columns | text |
26. Insert
Insert data into the current Supabase table
| Parameter | Type |
|---|---|
| data | dictionary |
27. InsertInto
Insert data into a specific Supabase table
| Parameter | Type |
|---|---|
| tableName | text |
| data | dictionary |
28. Update
Update data in the current Supabase table with a filter
| Parameter | Type |
|---|---|
| data | dictionary |
| filterColumn | text |
| filterValue | text |
29. UpdateTable
Update data in a specific Supabase table with a filter
| Parameter | Type |
|---|---|
| tableName | text |
| data | dictionary |
| filterColumn | text |
| filterValue | text |
30. Delete
Delete data from the current Supabase table with a filter
| Parameter | Type |
|---|---|
| filterColumn | text |
| filterValue | text |
31. DeleteFrom
Delete data from a specific Supabase table with a filter
| Parameter | Type |
|---|---|
| tableName | text |
| filterColumn | text |
| filterValue | text |
32. UploadFileWithOptions
Upload a file to the current Supabase storage bucket with options
| Parameter | Type |
|---|---|
| filePath | text |
| fileData | text |
| options | dictionary |
33. UploadFile
Upload a file to the current Supabase storage bucket
| Parameter | Type |
|---|---|
| filePath | text |
| fileData | text |
34. UploadToBucket
Upload a file to a specific Supabase storage bucket
| Parameter | Type |
|---|---|
| bucketName | text |
| filePath | text |
| fileData | text |
35. DownloadFile
Download a file from the current Supabase storage bucket
| Parameter | Type |
|---|---|
| filePath | text |
36. DownloadFromBucket
Download a file from a specific Supabase storage bucket
| Parameter | Type |
|---|---|
| bucketName | text |
| filePath | text |
37. GetPublicUrl
Get the public URL for a file in the current Supabase storage bucket
| Parameter | Type |
|---|---|
| filePath | text |
38. GetPublicUrlFromBucket
Get the public URL for a file in a specific Supabase storage bucket
| Parameter | Type |
|---|---|
| bucketName | text |
| filePath | text |
39. ListFiles
List all files in the current Supabase storage bucket
40. ListFilesInBucket
List all files in a specific Supabase storage bucket
| Parameter | Type |
|---|---|
| bucketName | text |
41. DeleteFile
Delete a file from the current Supabase storage bucket
| Parameter | Type |
|---|---|
| filePath | text |
42. DeleteFileFromBucket
Delete a file from a specific Supabase storage bucket
| Parameter | Type |
|---|---|
| bucketName | text |
| filePath | text |
43. CreateSignedUrl
Create a signed URL for a file in the current Supabase storage bucket
| Parameter | Type |
|---|---|
| filePath | text |
| expiresIn | number |
44. CreateSignedUrlForBucket
Create a signed URL for a file in a specific Supabase storage bucket
| Parameter | Type |
|---|---|
| bucketName | text |
| filePath | text |
| expiresIn | number |
45. MoveFile
Move a file within the current Supabase storage bucket
| Parameter | Type |
|---|---|
| fromPath | text |
| toPath | text |
46. CopyFile
Copy a file within the current Supabase storage bucket
| Parameter | Type |
|---|---|
| fromPath | text |
| toPath | text |
47. SubscribeToChangesWithFilters
Subscribe to changes in the current Supabase table with filters
| Parameter | Type |
|---|---|
| eventType | text |
| filters | dictionary |
48. SubscribeToPresence
Subscribe to presence updates on the current channel
49. SubscribeToChannelPresence
Subscribe to presence updates on a specific channel
| Parameter | Type |
|---|---|
| channelName | text |
50. Unsubscribe
Unsubscribe from the current channel
51. UnsubscribeFromChannel
Unsubscribe from a specific channel
| Parameter | Type |
|---|---|
| channelName | text |
52. GetChannelStatus
Get the status of the current channel
53. SubscribeToChanges
Subscribe to changes in the current Supabase table
| Parameter | Type |
|---|---|
| eventType | text |
54. SubscribeToTableChanges
Subscribe to changes in a specific Supabase table
| Parameter | Type |
|---|---|
| channelName | text |
| tableName | text |
| eventType | text |
55. SubscribeToBroadcast
Subscribe to broadcast messages on the current channel
| Parameter | Type |
|---|---|
| eventName | text |
56. SubscribeToChannelBroadcast
Subscribe to broadcast messages on a specific channel
| Parameter | Type |
|---|---|
| channelName | text |
| eventName | text |
57. SendBroadcast
Send a broadcast message on the current channel
| Parameter | Type |
|---|---|
| eventName | text |
| payload | dictionary |
58. SendChannelBroadcast
Send a broadcast message on a specific channel
| Parameter | Type |
|---|---|
| channelName | text |
| eventName | text |
| payload | dictionary |
59. TrackPresence
Track user presence on the current channel
| Parameter | Type |
|---|---|
| state | dictionary |
60. TrackChannelPresence
Track user presence on a specific channel
| Parameter | Type |
|---|---|
| channelName | text |
| state | dictionary |
61. CallRPCWithOptions
Call a PostgreSQL function through RPC with parameters and options
| Parameter | Type |
|---|---|
| parameters | dictionary |
| options | dictionary |
62. CallFunctionWithOptions
Call a specific PostgreSQL function through RPC with parameters and options
| Parameter | Type |
|---|---|
| functionName | text |
| parameters | dictionary |
| options | dictionary |
63. GetFunctionDefinitions
Get the definitions of available PostgreSQL functions
64. CallRPC
Call a PostgreSQL function through RPC with parameters
| Parameter | Type |
|---|---|
| parameters | dictionary |
65. CallFunction
Call a specific PostgreSQL function through RPC with parameters
| Parameter | Type |
|---|---|
| functionName | text |
| parameters | dictionary |
66. CallSecureRPC
Call an obfuscated RPC function for enhanced security
| Parameter | Type |
|---|---|
| obfuscatedFunctionName | text |
| obfuscatedParameters | dictionary |
67. MakeHttpRequest
Demonstrates how to use the OkHttp dependency to make HTTP requests
| Parameter | Type |
|---|---|
| url | text |
68. DecodeJwtToken
Demonstrates how to use the JWT dependency to decode tokens
| Parameter | Type |
|---|---|
| token | text |
69. GenerateUUID
Generate a UUID for use as a unique identifier
70. GetCurrentTimestamp
Get the current timestamp in ISO 8601 format
71. TimestampToMilliseconds
Convert an ISO 8601 timestamp to milliseconds since epoch
| Parameter | Type |
|---|---|
| timestamp | text |
72. GetClientStatus
Get the current status of the Supabase client
73. ResetClient
Reset the Supabase client to its initial state
Designer:
Supabase has total 2 designer properties.
1. SupabaseUrl
- Input type:
string
2. SupabaseKey
- Input type:
string
Setters:
Supabase has total 2 setter properties.
1. SupabaseUrl
The Supabase project URL (e.g., https://your-project.supabase.co)
- Input type:
text
2. SupabaseKey
The Supabase API key (anon or service key)
- Input type:
text
Getters:
Supabase has total 12 getter properties.
1. SupabaseUrl
The Supabase project URL (e.g., https://your-project.supabase.co)
- Return type:
text
2. SupabaseKey
The Supabase API key (anon or service key)
- Return type:
text
3. IsConnected
Returns whether the Supabase client is connected
- Return type:
boolean
4. UserEmail
Returns the email of the currently logged in user
- Return type:
text
5. UserId
Returns the ID of the currently logged in user
- Return type:
text
6. UserToken
Returns the JWT token of the currently logged in user
- Return type:
text
7. UserLoggedIn
Returns whether a user is currently logged in
- Return type:
boolean
8. CurrentTable
Returns the currently selected table for database operations
- Return type:
text
9. CurrentColumns
Returns the currently selected columns for database operations
- Return type:
text
10. CurrentBucket
Returns the currently selected storage bucket
- Return type:
text
11. CurrentChannel
Returns the currently selected realtime channel
- Return type:
text
12. CurrentFunction
Returns the currently selected RPC function
- Return type:
text
com.ali.supabase.aix (88.4 KB)
How to Use the Supabase Extension
Based on the enhanced Supabase extension with all the new features, here's how to use it:
1. Initial Setup
- Add the Supabase extension to your MIT App Inventor project
- Set your Supabase project URL and API key:
Supabase.SupabaseUrl("https://your-project.supabase.co")
Supabase.SupabaseKey("your-anon-or-service-key")
- Initialize the client:
Supabase.InitializeClient()
2. Authentication
Sign up a new user:
Supabase.SignUp("user@example.com", "password")
Sign in with email and password:
Supabase.SignIn("user@example.com", "password")
Sign in with OAuth:
Supabase.SignInWithOAuth("google")
Sign in with OTP:
Supabase.SignInWithOTP("user@example.com")
Sign out:
Supabase.SignOut()
3. Database Operations
Set table and perform CRUD operations:
Supabase.SetTable("users")
Supabase.Select()
Supabase.Insert(dataDictionary)
Supabase.Update(dataDictionary, "id", "123")
Supabase.Delete("id", "123")
Advanced database operations:
Supabase.SelectWithFilters(filtersDictionary)
Supabase.BulkInsert(dataList)
Supabase.Upsert(dataDictionary, "email")
4. Storage Operations
Upload and manage files:
Supabase.SetBucket("avatars")
Supabase.UploadFile("profile.jpg", fileData)
Supabase.DownloadFile("profile.jpg")
Supabase.DeleteFile("profile.jpg")
5. Realtime Operations
Subscribe to changes:
Supabase.SetChannel("public")
Supabase.SubscribeToChanges("INSERT")
Supabase.SendBroadcast("message", payloadDictionary)
6. RPC Operations
Call PostgreSQL functions:
Supabase.SetFunction("get_user_count")
Supabase.CallRPC(parametersDictionary)
7. Utility Functions
Generate UUIDs and timestamps:
Supabase.GenerateUUID()
Supabase.GetCurrentTimestamp()
