Overview
This document outlines the technical user journey for Unsorted AI, a company that collects data from users through a mobile app and provides processed datasets to users via a web application. The document covers two main flows: the Contributing Flow for mobile users and the Data Usage Flow for web users.
Contributing Flow (Mobile)

-
User Opens App: The user launches the Unsorted AI mobile application on their device.
-
Authentication: The user logs in to the app, and their credentials are verified. Upon successful authentication, the user’s information is stored in the “Users” database table.
-
Device Registration: The user’s device is registered within the app and a record is made in the database
-
Set Data Permissions: The user sets permissions for the types of data they are willing to share. These permissions are stored in the “Permissions” database table.
-
Data Collection:
- A background task runs on the user’s device, collecting data based on the set permissions.
- The collected data is temporarily stored in the device’s local storage.
- Periodically, the data is synced from the local storage to Supabase Storage, a cloud storage solution. The raw data is stored in the “Raw Data” database table.
-
ML Server Processing:
- The data sync to Supabase Storage triggers the ML Server to process the newly uploaded data.
- The ML Server sorts and validates the data, creating processed datasets.
- The processed datasets are stored in the “Processed Data” database table.
-
Token Distribution:
- The ML Server calculates the value of the user’s contributed data based on predefined metrics.
- Tokens are distributed to the user’s wallet as a reward for their data contribution.
- The token distribution information is stored in the “Tokens” database table.
Use a data-set (web)

-
User Login: The user logs in to the Unsorted AI web application using their credentials.
-
Browse Datasets: Upon successful authentication, the user can browse the available processed datasets.
-
Payment Processing: If the user selects a dataset they want to access, they proceed to the payment processing step. Once the payment is successfully completed, the user gains access to the dataset.
-
Dataset Access: The user can choose one of two options:
- Option 1: Use an existing pre-trained model provided by Unsorted AI.
- Option 2: Upload their own custom model to train on the selected dataset.
-
Training Process: Regardless of the chosen option, the selected model is trained on the dataset. Upon completion, the trained model is generated.
-
Model Delivery: The trained model is made available for the user to download and use as needed.