A Flutter mobile application for browsing and managing Gradio spaces from HuggingFace. Features OAuth authentication, automatic username detection, and categorized space browsing.
- 📱 Space Categories - Browse by Image Generation, Text Generation, etc.
- ❤️ Liked Spaces - View your public liked Gradio spaces
- 👨💻 Created Spaces - See your own Gradio spaces
- 🔐 OAuth Authentication - Secure login with HuggingFace
- 💾 Save Generated Outputs (In Progress) - Save generated outputs from spaces on device to come back to later
Before running this app, ensure you have:
- Flutter SDK (3.9.0 or higher)
- Dart SDK (included with Flutter)
- Xcode (for iOS development on macOS)
- Android Studio (for Android development)
# Install Xcode from Mac App Store
# Install Xcode command line tools
sudo xcode-select --install
# Install CocoaPods
sudo gem install cocoapods
# Install Android Studio
# Configure Android SDK and create virtual device
# Accept Android licenses
flutter doctor --android-licenses
The app requires a HuggingFace OAuth application:
- Go to HuggingFace Connected Applications
- Click "Create Application"
- Fill in:
- Application Name:
Gradio Mobile App
(or your preferred name) - Redirect URI:
com.example.gradiomobileapp://oauth
- Scopes: Select
openid
,profile
, andread-repos
- Application Name:
- Save and copy the generated Client ID
If you want to test the app immediately without setting up Flutter, you can use the prebuilt iOS app.
- Download Runner-iOS-Simulator.zip
- Unzip the file to extract
Runner.app
- Open iOS Simulator:
open -a Simulator
- Wait for the simulator to load, then drag
Runner.app
onto the simulator screen - The app will install automatically and appear on the home screen
- Tap the app icon to launch it
Requirements: macOS with Xcode and iOS Simulator installed.
Note: The prebuilt app is configured for iOS Simulator only and won't work on physical devices.
# Clone the repository
git clone <repository-url>
cd gradio-mobile-app
# Install Flutter dependencies
flutter pub get
# For iOS: Install CocoaPods dependencies
cd ios
pod install
cd ..
# Check Flutter installation and connected devices
flutter doctor
# List available devices
flutter devices
# Run on iOS Simulator
flutter run -d "iPhone 16 Pro"
# Run on Android Emulator
flutter run -d "Pixel_8_API_34"
# Run in debug mode (default)
flutter run --debug
# Run in release mode (optimized)
flutter run --release
- Open the project in VS Code
- Install the Flutter extension
- Press
F5
or use the "Run and Debug" panel - Select your target device
- Open the project in Android Studio
- Select your target device from the device dropdown
- Click the "Run" button (green play icon)
- Open
ios/Runner.xcworkspace
in Xcode - Select your target device/simulator
- Press
Cmd + R
to run