@@ -33,6 +33,8 @@ OffgridMobile is a React Native application that brings large language models, v
3333## Key Features at a Glance
3434
3535- ** Text Generation** - Multi-model GGUF support, streaming inference, custom system prompts
36+ - ** Bring Your Own Model** - Import local .gguf files from device storage alongside HuggingFace downloads
37+ - ** Smart Model Discovery** - Curated recommendations by device RAM, advanced filters (org, size, quantization, type)
3638- ** Vision AI** - Multimodal understanding with automatic mmproj handling
3739- ** Image Generation** - On-device Stable Diffusion (CPU/NPU), real-time preview, background generation
3840- ** AI Prompt Enhancement** - Use text LLM to expand simple prompts into detailed descriptions for better image quality
@@ -56,7 +58,7 @@ OffgridMobile is a React Native application that brings large language models, v
5658
5759### Text Generation
5860
59- Multi-model LLM inference using llama.cpp compiled for ARM64 Android via llama.rn native bindings. Supports any GGUF-format model compatible with llama.cpp:
61+ Multi-model LLM inference using llama.cpp compiled for ARM64 Android via llama.rn native bindings. Supports any GGUF-format model compatible with llama.cpp — downloaded from HuggingFace or imported directly from device storage :
6062
6163- ** Streaming inference** with real-time token callbacks
6264- ** OpenCL GPU offloading** on Qualcomm Adreno GPUs (experimental, optional)
@@ -92,7 +94,8 @@ Multimodal understanding via vision-language models (VLMs) with automatic mmproj
9294
9395** Supported Vision Models:**
9496- SmolVLM (500M, 2.2B) - Fast, compact, 7-10s inference on flagship devices
95- - Qwen2-VL, Qwen3-VL - Excellent multilingual vision understanding
97+ - Qwen3-VL (2B, 8B) - Vision-language with thinking mode, excellent multilingual understanding
98+ - Gemma 3n E4B - Vision + audio, built for mobile with selective activation
9699- LLaVA - Large Language and Vision Assistant
97100- MiniCPM-V - Efficient multimodal
98101
@@ -731,10 +734,19 @@ Subscribers are weakly held, services never leak references.
731734
732735** Text Models:**
733736- Hugging Face API integration (` src/services/modelManager.ts ` )
734- - Filters: LM Studio compatible, Official/Verified/Community
737+ - Curated recommended models filtered by device RAM (Qwen 3, Llama 3.2, Gemma 3, SmolLM3, Phi-4)
738+ - Advanced filtering: organization (Qwen, Meta, Google, Microsoft, Mistral, DeepSeek, HuggingFace, NVIDIA), size category (tiny/small/medium/large), quantization level, model type (text/vision/code)
739+ - Filters: LM Studio compatible, Official/Verified/Community credibility badges
735740- Automatic GGUF quantization detection
736741- RAM compatibility checks based on device memory
737742
743+ ** Local Model Import (Bring Your Own Model):**
744+ - Import ` .gguf ` files directly from device storage via native file picker
745+ - Validates file format, parses model name and quantization from filename
746+ - Handles Android ` content:// ` URIs by copying to app storage
747+ - Progress tracking during file import
748+ - Imported models appear alongside downloaded models in the model selector
749+
738750** Image Models:**
739751- xororz HuggingFace repos (pre-converted MNN/QNN)
740752- Dynamic model list fetch
@@ -795,7 +807,7 @@ Prevents OOM crashes by blocking loads that would exceed safe RAM limits.
795807** Scenario:** User travels with no internet access, needs AI assistance for writing, research, or problem-solving.
796808
797809** Implementation:**
798- - Download Qwen3-2B-Instruct (Q4_K_M, ~ 2.5GB) once
810+ - Download Qwen 3 0.6B or Llama 3.2 3B (Q4_K_M) from curated recommendations, or import your own .gguf model from device storage
799811- Create project with custom system prompt: "You are a helpful writing assistant..."
800812- Generate responses entirely on-device
801813- All conversations persist locally
@@ -831,7 +843,7 @@ Prevents OOM crashes by blocking loads that would exceed safe RAM limits.
831843** Scenario:** Developer needs code assistance without sharing proprietary code with cloud services.
832844
833845** Implementation:**
834- - Download Qwen3- Coder or Phi-3- Mini (Q4_K_M)
846+ - Download Qwen 3 Coder A3B or Phi-4 Mini (Q4_K_M)
835847- Create "Code Review" project with system prompt
836848- Paste code snippets, receive suggestions
837849- All code stays on device
@@ -889,7 +901,7 @@ Prevents OOM crashes by blocking loads that would exceed safe RAM limits.
889901- ** React Navigation 7.x** - Native navigation
890902- ** React Native Reanimated 4.x** - Performant native-thread animations
891903- ** React Native Haptic Feedback** - Haptic responses on interactions
892- - ** @react-native-documents/picker ** - Native document picker for file attachments
904+ - ** @react-native-documents/picker ** - Native document picker for file attachments and local model import
893905- ** @react-native-documents/viewer ** - Native document viewer (QuickLook / Intent.ACTION_VIEW)
894906
895907### Native Modules
@@ -1055,10 +1067,10 @@ OffgridMobile/
10551067│ │ ├── AnimatedListItem.tsx # Entry animation + press feedback combo
10561068│ │ ├── AnimatedPressable.tsx # Spring scale + haptic press wrapper
10571069│ │ ├── AppSheet.tsx # Custom swipe-to-dismiss bottom sheet
1058- │ │ ├── ChatInput.tsx # Message input with attachments
1070+ │ │ ├── ChatInput.tsx # Message input with attachments, vision/image-mode badges
10591071│ │ ├── ChatMessage.tsx # Message bubbles with metadata
10601072│ │ ├── DebugSheet.tsx # Developer debug bottom sheet
1061- │ │ ├── ModelCard.tsx # Model display card
1073+ │ │ ├── ModelCard.tsx # Model display card (compact/full modes, icon actions)
10621074│ │ ├── ModelSelectorModal.tsx # Quick model switcher
10631075│ │ ├── GenerationSettingsModal.tsx # Image generation settings
10641076│ │ ├── ProjectSelectorSheet.tsx # Project picker bottom sheet
0 commit comments