| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Transform any website into a native mobile app with Flutter
WebWrap is a lightweight, highly configurable Flutter app that wraps any website into a native mobile experience. Perfect for quickly deploying web apps to iOS and Android app stores.
✅ Single YAML Configuration - Configure everything from one file ✅ Native Feel - Gesture navigation, system integration, adaptive theming ✅ Dark Mode Support - Automatic, light, or dark theme modes ✅ Offline Ready - Works offline with WebView caching ✅ Native URL Handling - Opens tel:, mailto:, maps:, and social links in native apps ✅ Customizable Splash Screen - Brand your app with custom logo and colors ✅ iOS-Style Swipe Navigation - Swipe from left edge to go back ✅ Store Ready - Meets Apple and Google Play requirements
git clone https://github.com/loSpaccaBit/webwrapper-flutter.git
cd webwrap
flutter pub getEdit assets/config.yaml:
app:
name: "My App"
website_url: "https://yourwebsite.com"
description: "Your app description"
theme:
dark_mode: "system" # "system", "light", or "dark"
light:
primary_color: "#2196F3"
background_color: "#FFFFFF"
dark:
primary_color: "#1976D2"
background_color: "#121212"Place your logo at assets/splash/logo.png (150x150px recommended)
flutter runapp:
name: "App Name" # App title
website_url: "https://..." # Website to wrap
description: "Description" # App descriptionWebWrap supports three theme modes:
theme:
dark_mode: "system"
light:
primary_color: "#2196F3"
status_bar_color: "#1976D2"
status_bar_brightness: "dark"
background_color: "#FFFFFF"
dark:
primary_color: "#1976D2"
status_bar_color: "#000000"
status_bar_brightness: "light"
background_color: "#121212"splash_screen:
image: "assets/splash/logo.png"
background_color: "#FFFFFF"
duration_seconds: 2webview:
enable_javascript: true
enable_dom_storage: true
enable_zoom: false
clear_cache_on_start: false
allow_media_playback: true
allow_inline_media_playback: true
user_agent: null # null = defaultURLs with these prefixes will open in native apps:
native_url_handlers:
- "tel:" # Phone calls
- "mailto:" # Email
- "sms:" # SMS messages
- "maps:" # Maps
- "whatsapp:" # WhatsApp
- "tg:" # Telegramoffline:
enabled: true
light:
background_color: "#F5F5F5"
text_color: "#333333"
dark:
background_color: "#121212"
text_color: "#FFFFFF"Swipe from the left edge to navigate back - works just like iOS Safari. A subtle indicator appears during the gesture.
The app works offline by leveraging WebView's native caching:
Automatically adapts to system theme or uses fixed light/dark mode. All UI elements (status bar, background, indicators) respect the current theme.
WebWrap includes features required for App Store and Play Store approval:
flutter build ios --releaseThen open ios/Runner.xcworkspace in Xcode to:
flutter build appbundle --releaseUpload build/app/outputs/bundle/release/app-release.aab to Google Play Console.
webwrap/ ├── assets/ │ ├── config.yaml # Main configuration │ └── splash/ │ └── logo.png # Splash screen logo ├── lib/ │ ├── config/ # Configuration models │ ├── screens/ # UI screens │ ├── services/ # Business logic │ └── main.dart # App entry point └── pubspec.yaml # Dependencies
MIT License - See LICENSE file for details
For issues and feature requests, please open an issue on GitHub.
Made with Flutter 💙
| Back | FazBrowse Home | New Git URL |