🌟 Zero coding • One-click build • Feature-rich • Open source & free 🌟
Click to expand/collapse
|
|
||||||||||||||||||||
|
|
|
|
# 1️⃣ Clone the repository
git clone https://github.com/shiahonb777/web-to-app.git
# 2️⃣ Open in Android Studio
# 3️⃣ Build and run on your device
# 4️⃣ Start converting websites to apps!💡 Or download the APK directly from Releases
🌐 Core Features (click to expand)
- URL to App: Enter any website URL to generate a standalone app
- Media to App: Convert images/videos into independent apps
- HTML to App: Convert HTML/CSS/JS projects into standalone apps
- Frontend Framework Support: React, Vue, Next.js, Nuxt, Svelte one-click packaging
- Custom Icon: Select from gallery or generate with AI
- Custom Name: Customize the app display name
- Custom Package Name: Support custom APK package name and version
🧩 Extension Module System
- Tampermonkey-like Scripts: Inject custom JavaScript/CSS into webpages
- 10 Built-in Modules: Video downloader, Bilibili/Douyin/Xiaohongshu video extractor, video enhancer, web analyzer, dark mode, privacy protection, content enhancer, element blocker
- 30+ Code Templates: Quickly create common functionality modules
- Module Categories: 20+ categories (content filter, style modifier, function enhance, media, etc.)
- URL Match Rules: Support wildcards and regex patterns
- Config System: Modules support user-customizable settings
- Permission Declaration: Fine-grained permission control
- Share Code: One-click generate share code for easy module sharing
- Import/Export: Support module file import and export
🤖 AI Module Development Agent
- Natural Language Development: Describe requirements in natural language, AI generates module code
- Syntax Check: Automatic JavaScript/CSS syntax error detection
- Security Scan: Detect XSS, eval, and other security issues
- Auto Fix: AI automatically fixes detected errors
- Code Snippet Library: Quick insert common code snippets
- Debug Test Pages: Built-in test pages to verify module effects
🎨 AI Features
- Multi-Provider Support: Google Gemini, OpenAI, GLM, Volcano, MiniMax, OpenRouter, etc.
- AI HTML Coding: AI-assisted HTML/CSS/JS code generation
- AI Icon Generator: Generate app icons using AI
- Icon Library: Collect and manage generated icons
- Session Management: Multi-session, templates, style customization
- Live Preview: Preview generated code in real-time
- AI Settings: Unified API key and model management
✨ Integrated Features
- Splash Screen: Support image/video splash animations with built-in video trimmer
- Background Music: Add BGM playlist with LRC lyrics sync
- Online Music Search: Search and download music online for BGM with lyrics sync
- Activation Code: Built-in activation with SHA-256 encrypted verification
- Announcements: Display announcements on startup with link support
- Announcement Templates: 10 beautiful templates (Xiaohongshu, gradient, glassmorphism, neon, etc.)
- Ad Blocking: Built-in ad blocking engine to filter web ads and popups
- Hosts Blocking: Custom hosts file for domain-level blocking and filtering
- Auto Web Translation: Automatic webpage translation, supports CN/EN/JP/Arabic
- Browser Engine: Support custom WebView kernel configuration
- Browser Spoofing: User-Agent and browser fingerprint spoofing
- Isolated Browser Environment: Independent runtime for each app with fingerprint spoofing and multi-instance isolation
- Long Press Menu: Enhanced long-press context menu with custom actions
- Background Running: Keep running in background after exit, maintain task execution
- Forced Run Mode: Scheduled forced run, block Home/Back keys, black tech features
- Auto Start: Support boot auto-start and scheduled auto-start
- APK Encryption: Config/code/media encryption, integrity check, anti-debug protection
- Ad Integration: Reserved ad SDK interfaces (banner/interstitial/splash)
📤 Export Options
- Desktop Shortcut: Create desktop icons, launch like native apps
- Build APK: Generate standalone APK packages without Android Studio
- APK Architecture: Select target CPU architectures (arm64-v8a, armeabi-v7a, x86, x86_64)
- Project Template: Export complete Android Studio projects
🎥 Media App Features
- Image to App: Full-screen image display with fill screen option
- Video to App: Video playback with loop, audio toggle, autoplay (supports large video streaming)
- Media Gallery: Built-in gallery for managing and browsing images and videos
- Display Config: Audio toggle, loop, autoplay, fill screen options
- Encryption Support: Media files support encryption protection
- APK Export: Media apps support standalone APK export
🎨 Theme System
- Multiple Themes: Beautiful built-in theme styles
- Dark Mode: Follow system or manual toggle
- Animations: Customizable animation effects and speed
- Particle Effects: Some themes support particle backgrounds
⚡ App Modifier
- App Scanner: Automatically scan all installed apps
- Icon/Name Modifier: Freely modify any app's icon and name
- Clone Install: Install modified apps with independent package names
- Shortcut Launch: Create shortcuts with new icons to launch original apps
| Category | Technology |
|---|---|
| 📝 Language | Kotlin 1.9+ |
| 🎨 UI | Jetpack Compose + Material 3 |
| 🏗️ Architecture | MVVM + Repository |
| 🗄️ Database | Room |
| 🌐 Network | OkHttp |
| 🖼️ Image | Coil |
| 🔐 Encryption | AES-256-GCM + PBKDF2 |
| ✍️ Signing | JarSigner + Keystore |
| 🌍 i18n | Dynamic Switching |
| 📱 Min SDK | Android 6.0 (API 23) |
| 🎯 Target SDK | Android 16 (API 36) |
app/src/main/java/com/webtoapp/
├── WebToAppApplication.kt # Application class
├── core/ # Core modules
│ ├── activation/ # Activation code management
│ ├── adblock/ # Ad blocking engine
│ ├── ai/ # AI features
│ │ ├── AiApiClient.kt # Multi-provider AI API client
│ │ └── htmlcoding/ # AI HTML coding Agent
│ ├── announcement/ # Announcement management
│ ├── apkbuilder/ # APK builder
│ │ ├── ApkBuilder.kt # Build core (streaming, encryption)
│ │ ├── ApkSigner.kt # JarSigner APK signing
│ │ └── ApkTemplate.kt # Config/template management
│ ├── autostart/ # Boot auto-start/scheduled start
│ ├── background/ # Background running service
│ ├── bgm/ # Background music
│ │ ├── BgmPlayer.kt # Player (lyrics sync)
│ │ └── OnlineMusicApi.kt # Online music search/download
│ ├── crypto/ # Encryption system
│ │ ├── AssetEncryptor.kt # AES-256-GCM encryption
│ │ └── AssetDecryptor.kt # Runtime decryption
│ ├── extension/ # Extension module system
│ │ ├── BuiltInModules.kt # 10 built-in modules
│ │ ├── ModuleTemplates.kt # 30+ code templates
│ │ └── agent/ # AI Agent module development
│ ├── forcedrun/ # Forced run mode
│ │ ├── ForcedRunManager.kt # Forced run manager
│ │ └── ForcedRunHardwareController.kt # Black tech features
│ ├── i18n/ # Multi-language support
│ ├── isolation/ # Isolated browser environment
│ │ └── IsolationManager.kt # Fingerprint spoofing/isolation
│ ├── shell/ # Shell mode management
│ └── webview/ # WebView management
│ ├── TranslateBridge.kt # Translation bridge
│ ├── NativeBridge.kt # Native capability bridge
│ └── DownloadBridge.kt # Download bridge
├── ui/ # UI layer
│ ├── MainActivity.kt # Main Activity
│ ├── screens/ # Screens
│ │ ├── HomeScreen.kt # Home (app list)
│ │ ├── CreateAppScreen.kt # Create website app
│ │ ├── CreateMediaAppScreen.kt # Create media app
│ │ ├── CreateHtmlAppScreen.kt # Create HTML app
│ │ ├── ExtensionModuleScreen.kt # Extension modules
│ │ ├── AiModuleDeveloperScreen.kt # AI module dev
│ │ ├── HtmlCodingScreen.kt # AI HTML coding
│ │ ├── AppModifierScreen.kt # App modifier
│ │ └── AboutScreen.kt # About/changelog
│ ├── components/ # Reusable components
│ │ ├── announcement/ # 10 announcement templates
│ │ ├── IconGeneratorDialog.kt # AI icon generator
│ │ ├── OnlineMusicSelector.kt # Online music
│ │ ├── EncryptionConfigCard.kt # Encryption config
│ │ ├── IsolationConfigCard.kt # Isolation config
│ │ ├── BackgroundRunConfigCard.kt # Background run config
│ │ └── ForcedRunConfigCard.kt # Forced run config
│ └── theme/ # Theme system
└── util/ # Utilities
- Click "Create App" button on home screen
- Enter app name and website URL
- (Optional) Select custom icon or generate with AI
- (Optional) Configure splash screen, BGM, activation code, announcement, ad blocking, etc.
- (Optional) Select extension modules to enhance functionality
- Click Save
- Click "Create Media App" button
- Select image or video file
- Configure display options (loop, autoplay, audio toggle, etc.)
- (Optional) Add background music
- Save and build APK
- Click "Create HTML App" button
- Select HTML project folder or single file
- Set entry file (default index.html)
- Supports React/Vue/Next.js build outputs
- Save and build APK
- When creating/editing an app, expand the "Extension Modules" card
- Click "Select Modules" to browse 10 built-in modules
- Select desired modules (video download, dark mode, privacy protection, etc.)
- Modules will automatically inject and execute when the app runs
- Go to "Extension Modules" > "AI Module Development"
- Describe the functionality you want in natural language
- AI generates module code with syntax check and security scan
- Preview the effect and save
- Click app card to preview directly
- Long press or click menu for more options
- Click app card menu > "Build APK"
- Configure encryption options (optional)
- Configure isolated browser environment (optional)
- Configure background running (optional)
- Click "Start Build"
- Installation dialog appears automatically when complete
- When creating/editing an app, expand "Forced Run" card
- Enable forced run and select mode (fixed time/countdown/duration)
- Configure time period and active days
- Configure black tech features (optional)
- Build APK and app will force run at specified times
- Click home menu > "App Modifier"
- Search or filter target app in the app list
- Click app to enter modification interface
- Select new icon, enter new name
- Choose operation:
- Shortcut: Create desktop shortcut with new icon
- Clone Install: Generate new APK and install as independent app
- Android Studio Hedgehog (2023.1.1) or later
- JDK 17
- Gradle 8.2
# Clone the repository
git clone https://github.com/shiahonb777/web-to-app.git
# Enter project directory
cd web-to-app
# Build Debug version
./gradlew assembleDebug
# Build Release version
./gradlew assembleReleaseFor Release builds, configure signing in app/build.gradle.kts:
signingConfigs {
create("release") {
storeFile = file("your-keystore.jks")
storePassword = "your-store-password"
keyAlias = "your-key-alias"
keyPassword = "your-key-password"
}
}| Module | Function |
|---|---|
| ⬇️ Video Downloader | Auto-detect webpage videos, supports MP4 and Blob stream download |
| 📺 Bilibili Video Extractor | Extract Bilibili highest quality video and audio stream URLs |
| 🎬 Douyin Video Extractor | Extract Douyin watermark-free video URLs |
| 📱 Xiaohongshu Video Extractor | Extract Xiaohongshu video playback URLs |
| ⚡ Video Enhancer | Speed control (0.5x-5x), picture-in-picture, background play, block app redirect |
| 🔧 Web Analyzer | Element inspector, network monitor, cookie manager, console injection |
| 🌙 Advanced Dark Mode | Smart color inversion, image brightness control, scheduled toggle |
| 🛡️ Privacy Protection | Ad blocking, anti-fingerprint tracking, click hijack protection, external link warning |
| 📝 Content Enhancer | Force copy, selection translate, long screenshot, Markdown conversion |
| 🚫 Element Blocker | Block ads, popups, and specified elements |
- Content Filter, Content Enhance, Style Modifier, Theme
- Function Enhance, Automation, Navigation, Data Extract
- Media, Video Enhance, Image Processing, Audio Control
- Security & Privacy, Anti-Tracking, Social, Shopping
- Reading Mode, Translation, Developer Tools, Other
// Example: Auto hide ads
const selectors = getConfig('selectors', '.ad-banner').split('\n');
function hideAds() {
selectors.forEach(sel => {
document.querySelectorAll(sel).forEach(el => {
el.style.display = 'none';
});
});
}
hideAds();
new MutationObserver(hideAds).observe(document.body, { childList: true, subtree: true });10 beautiful announcement popup templates:
- Minimal - Clean and simple
- Xiaohongshu Style - Lively and cute
- Gradient - Modern and stylish
- Glassmorphism - Transparent texture
- Neon - Cool glowing effect
- Cute - Pink and sweet
- Elegant - Golden and noble
- Festive - Celebratory and lively
- Dark - Mysterious and deep
- Nature - Fresh and green
- Some websites may have anti-crawling mechanisms, loading may be limited
- Network permission required for normal use
- Exported projects need to be compiled with Android Studio on PC
- Activation codes are verified locally only, extend for server-side verification if needed
- Extension modules execute in WebView, some sites may have CSP restrictions
MIT License
New Features
- Cookies persistence feature
- Multi API key management configuration
- Model name search feature
- Hide URL preview feature
- Popup blocker feature
Improvements
- Optimized custom API endpoint adaptation
- Optimized model name display
- Optimized multi-language content adaptation
Bug Fixes
- Fixed gallery app build path issue
- Fixed microphone permission issue
- Fixed zoom property not working issue
- Fixed activation code language display issue
- Fixed frontend and gallery app filename display issue
- Fixed core config edit for some app types not working
- Fixed keyboard initialization issue
New Features
- Browser Engine: Support for custom WebView kernel configuration
- Browser Spoofing: User-Agent and browser fingerprint spoofing
- Hosts Blocking: Custom hosts file for domain-level blocking
- Long Press Menu: Enhanced long-press context menu options
- APK Architecture: Support for selecting target CPU architectures (arm64-v8a, armeabi-v7a, x86, x86_64)
- Media Gallery: Built-in media gallery for managing images and videos
Improvements
- Optimized extension module functionality
- Improved English and Arabic translation support
- Enhanced theme interactions and performance
- Optimized API configuration testing
Bug Fixes
- Fixed app name displaying excessive spaces
- Fixed popup announcement navigation issues
- Fixed crash when calling external browser
- Fixed download errors
- Fixed crash when editing modules
- Fixed AI image generation not working
- Fixed downloader and player coordination issues
New Features
- App Category: Organize apps into custom categories
- Website Favicon Fetch: Automatically fetch website icons as app icons
- Random App Name: Generate random app names with one click
- Multi App Icons: Support multiple icon options per app
Improvements
- Optimized data backup functionality
- Optimized BlackTech feature
Bug Fixes
- Fixed element blocker issues
- Fixed background run feature crash
- Fixed multi-language string adaptation issues
New Features
- Multi-language Support: Chinese, English, and Arabic languages
- Share APK Feature: Share built APK files
- Element Blocker Extension Module: Visually block webpage elements
- Forced Run Mode: Support app forced run mode
- Linux One-Click Build: Support one-click frontend project build in Linux environment
- Vue/React/Vite to APK: Convert frontend framework projects to APK
Improvements
- Optimized theme functionality
- Optimized About page UI
Bug Fixes
- Fixed status bar issue in fullscreen mode
- Fixed crash issue on some devices/emulators
New Features
- Status bar style configuration: Custom height, background color/image, transparency
- APK encryption protection: Encrypt configuration files and resources
New Features & Improvements
- Boot auto-start and scheduled auto-start functionality
- Data backup: One-click export/import all app data
- Transparent status bar overlay in fullscreen mode
New Features & Improvements
- Show status bar option in fullscreen mode: Solves the navigation bar issue when not using fullscreen mode
- Fixed long-press text cannot be copied in HTML projects
- Support Android 6.0 (API 23)
Bug Fixes
- Fixed HTML app not showing status bar issue
- Fixed some system apps showing empty names
- Fixed code block content overlay issue in AI Module Developer
- Fixed tool calling failure in AI HTML Coding
- Optimized AI HTML Coding prompts and model compatibility
New Features & Improvements
- Status bar color follows theme: Defaults to theme color, light background for light theme, dark background for dark theme
- Support custom status bar background color: Choose transparent, follow theme, or custom color
- Fixed status bar text visibility issue
Bug Fixes
- Fixed JS file picker compatibility issue on some systems
- Fixed video fullscreen not auto-rotating to landscape, now auto-rotates and fills screen
Bug Fixes & New Features
- Fixed long-press image save not working on Xiaohongshu and similar sites
- Added Xiaohongshu image downloader module with batch download support
- Fixed Blob format file (e.g., JSON) export failure
- Fixed CSS/JS not working after HTML project import
- Fixed duplicate app name display in recent tasks list
Bug Fixes & Improvements
- Fixed dozens of known issues
- Optimized AI Agent programming architecture
- Immersive fullscreen mode for exported APKs
- Status bar and navigation bar fully transparent
- Content fills the entire screen
- Support for notch/punch-hole displays
- Auto-hide virtual buttons during video playback
- Extended app name length support (up to ~60 Chinese characters)
New Features
- Extension Module System: Tampermonkey-like JS/CSS injection system
- 9 feature-rich built-in modules (video download, platform video extractors, video enhancer, web analyzer, dark mode, privacy protection, content enhancer)
- 30+ code templates for quick module creation
- 20+ module categories covering common needs
- URL match rules support (wildcards/regex)
- User-configurable settings
- Share code import/export
- AI Module Development Agent: AI-assisted extension module development
- Natural language requirement description, auto code generation
- Automatic syntax check and security scan
- Auto-fix detected errors
- Code snippet library for quick insertion
- AI Icon Generator: Generate app icons using AI
- Icon Library: Collect and manage generated icons
- Online Music Search: Search and download music online for BGM
- Announcement Template System: 10 beautiful popup templates
- Auto Web Translation: Automatic webpage content translation
Improvements
- Refactored extension module architecture for more flexible development
- Optimized AI features, support more models and providers
New Features
- AI HTML Coding Assistant: AI-powered code generation
- Multiple text/image generation models
- Session management, templates, styles
- Code block parsing, live preview
- AI Settings: Unified API key and model management
- Multiple API keys, real-time connection testing
- Custom Base URL, model list fetched from API
- HTML App: Convert HTML/CSS/JS projects into standalone Android apps
- Theme System: Brand new theme customization
- Multiple beautiful theme styles, dark mode support
- Customizable animation effects and speed
- Background Music (BGM): Add BGM with LRC lyrics sync
Improvements
- Home UI integration with AI Coding, Theme, AI Settings entries
- FAB menu adds HTML app creation
New Features
- Media App: Convert images/videos into standalone apps
- User Scripts: Support custom JavaScript injection
- Splash Screen: Support image/video with audio toggle, landscape, fill screen
- Video Trimmer: Visual video segment selection with real-time preview
Improvements
- Data model refactoring for video trimming configuration persistence
- Shell mode (APK export) fully supports splash screen playback
- Optimized MediaPlayer for precise seek and auto-stop
Bug Fixes
- Fixed shortcut icon incorrectly using splash image
- Fixed database schema mismatch causing crashes
- APK icon cropping fix (Android Adaptive Icon compliance)
- Release build custom icon fix
- Fullscreen mode support
- One-click APK building
- App modifier with clone install
- Desktop mode for web pages
- Material Design 3 UI
- Initial release
- URL to shortcut
- Activation codes, announcements, ad blocking
- Project template export
Developed independently by shiaho. Feel free to reach out!
| Platform | Account | Link |
|---|---|---|
| X (Twitter) | @shiaho777 | x.com/@shiaho777 |
| Telegram | webtoapp777 | t.me/webtoapp777 |
| GitHub | shiahonb777 | github.com/shiahonb777/web-to-app |
| Bilibili | Video Tutorials | b23.tv/8mGDo2N |
| Platform | Group ID/Link | Description |
|---|---|---|
| QQ Group | 1041130206 | Daily interaction, updates & latest releases |
| Telegram Group | t.me/webtoapp777 | International user community |
| Method | Account |
|---|---|
| Author QQ | 2711674184 |
| QQ Email | 2711674184@qq.com |
| Gmail | weuwo479@gmail.com |
Important Notice: By using this software, you acknowledge that you have read, understood, and agreed to all the following terms.
This software is an open-source technical research and educational demonstration tool. All features are implemented based on Android's public APIs, intended to demonstrate mobile application development technology. This software does not encourage or support any illegal use.
Users should ensure they use this software in legal and legitimate scenarios, including but not limited to:
- Self-Management: For personal focus training and study time management
- Enterprise Display: For exhibition terminals in trade shows, malls, etc.
- Parental Supervision: Reasonable use with minors' informed consent
- Educational Research: For technical learning and security research
⛔ Strictly prohibited to use this software for any behavior that infringes on others' personal freedom, privacy, property rights, or other legitimate rights and interests.
The "Forced Run" and related hardware control features (hereinafter referred to as "Advanced Features") contained in this software are of a technical demonstration nature:
- [Informed Consent Principle] Advanced features should only be enabled when the device owner or user is fully informed and has explicitly consented
- [Autonomous Control Principle] All features provide emergency exit mechanisms; users can terminate at any time via password
- [Technology Neutrality Principle] The features themselves are not illegal; their legality depends on the user's specific use method and purpose
- [Risk Assumption Principle] Enabling advanced features may cause device heating, accelerated battery consumption, etc.; users must assume related risks
- This software is provided "AS IS"; the developer makes no express or implied warranties regarding the software's suitability, reliability, or security
- All legal liabilities arising from users' use of this software in violation of laws, regulations, or this statement shall be borne by the users themselves and have nothing to do with the developer
- The developer shall not be liable for any direct, indirect, incidental, special, or punitive damages caused by the use of this software
- Any third party's modification or distribution of this software's source code shall bear its own legal responsibility
To ensure legal and compliant use, users are advised to:
- ✅ Obtain written or electronic consent from the actual device user before use
- ✅ Develop corresponding usage specifications and management systems in enterprise scenarios
- ✅ Ensure compliance with relevant educational regulations in educational scenarios
- ✅ Regularly check and comply with the latest requirements of local laws and regulations
This software is released under the MIT Open Source License. Users may freely use, modify, and distribute it, but must retain the original copyright notice. Legal responsibilities for secondary development based on this software shall be borne by the secondary developer.
By continuing to use this software, you confirm that:
- ✓ You are at least 18 years old or have obtained consent from a legal guardian
- ✓ You have fully read and understood all the above terms
- ✓ You agree to comply with all terms of use and local laws and regulations
- ✓ You voluntarily assume all risks and responsibilities that may arise from using this software
This statement takes effect from the date of publication. The developer reserves the right to modify this statement at any time.
Last updated: January 2026
Open Source · Free Forever · Star ⭐ to Support