[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-6749":3},{"id":4,"name":5,"fullName":6,"owner":5,"repo":5,"description":7,"homepage":8,"htmlUrl":9,"language":10,"languages":9,"totalLinesOfCode":9,"stars":11,"forks":12,"watchers":13,"openIssues":14,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":15,"forks30d":15,"starsTrendScore":19,"compositeScore":20,"rankGlobal":9,"rankLanguage":9,"license":21,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":24,"hasPages":22,"topics":25,"createdAt":9,"pushedAt":9,"updatedAt":26,"readmeContent":27,"aiSummary":28,"trendingCount":15,"starSnapshotCount":15,"syncStatus":29,"lastSyncTime":30,"discoverSource":31},6749,"LiveContainer","LiveContainer\u002FLiveContainer","Run iOS apps without actually installing them!","",null,"Swift",8443,705,54,39,0,25,100,352,116,114.55,"GNU Affero General Public License v3.0",false,"main",true,[],"2026-06-12 04:00:30","\u003Cdiv align=\"center\">\n   \u003Cimg width=\"217\" height=\"217\" src=\".\u002Fscreenshots\u002Flivecontainer_icon.png\" alt=\"Logo\">\n\u003C\u002Fdiv>\n   \n\n\u003Cdiv align=\"center\">\n  \u003Ch1>\u003Cb>LiveContainer\u003C\u002Fb>\u003C\u002Fh1>\n  \u003Cp>\u003Ci>An app launcher that runs iOS apps without actually installing them! \u003C\u002Fi>\u003C\u002Fp>\n\u003C\u002Fdiv>\n\u003Ch6 align=\"center\">\n\nCrowdin Project: [![Crowdin](https:\u002F\u002Fbadges.crowdin.net\u002Flivecontainer\u002Flocalized.svg)](https:\u002F\u002Fcrowdin.com\u002Fproject\u002Flivecontainer) &nbsp;| &nbsp; Documentation:[liveconainer.github.io](https:\u002F\u002Flivecontainer.github.io\u002Fdocs\u002Fintro)\n\n# LiveContainer\n\n- LiveContainer is an app launcher (not emulator or hypervisor) that allows you to run iOS apps inside it.\n- Allows you to install unlimited apps (3 app\u002F10 app id free developer account limit does not apply here) with only one app & app id. You can also have multiple versions of an app installed with multiple data containers.\n- (Below iOS 26) When JIT is available, codesign is entirely bypassed, no need to sign your apps before installing. Otherwise, your app will be signed with the same certificate used by LiveContainer.\n\n> [!CAUTION]\n> **Important Notice Regarding Third-Party Builds of LiveContainer**\n>\n> We have recently noticed the appearance of certain closed-source third-party builds of LiveContainer. Please be aware that all your apps are installed within LiveContainer, which means these third-party builds **have full access to your data, including sensitive information such as keychain items and login credentials**. \n> \n> Furthermore, please note that we do not provide any support for issues of these third-party builds.\n\n\n# Installation\n**LiveContainer comes with a standalone version and a version with built-in SideStore. [Please read the install guide here](https:\u002F\u002Flivecontainer.github.io\u002Fdocs\u002Finstallation)**\n\nIf you encounter any issue please [read our FAQ here](https:\u002F\u002Flivecontainer.github.io\u002Fdocs\u002Ffaq)\n\n### Standalone \n\u003Ctable>\n\u003Ctr>\n\u003Ctd>\nStable\n\u003C\u002Ftd>\n\u003Ctd>\n\u003Ca href=\"https:\u002F\u002Fstikstore.app\u002Faltdirect\u002F?url=https:\u002F\u002Fgithub.com\u002FLiveContainer\u002FLiveContainer\u002Freleases\u002Fdownload\u002F1.0\u002Fapps.json&exclude=livecontainer\" target=\"_blank\">\n   \u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002FStikStore\u002Faltdirect\u002Frefs\u002Fheads\u002Fmain\u002Fassets\u002Fpng\u002FAltSource_Blue.png\" alt=\"Add AltSource\" width=\"200\"\u002F>\n\u003C\u002Fa>\n\u003C\u002Ftd>\n\u003Ctd>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FLiveContainer\u002FLiveContainer\u002Freleases\u002Flatest\u002Fdownload\u002FLiveContainer.ipa\" target=\"_blank\">\n   \u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002FStikStore\u002Faltdirect\u002Frefs\u002Fheads\u002Fmain\u002Fassets\u002Fpng\u002FDownload_Blue.png\" alt=\"Download .ipa\" width=\"200\"\u002F>\n\u003C\u002Fa>\n\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\nNightly\n\u003C\u002Ftd>\n\u003Ctd>\n\u003Ca href=\"https:\u002F\u002Fstikstore.app\u002Faltdirect\u002F?url=https:\u002F\u002Fgithub.com\u002FLiveContainer\u002FLiveContainer\u002Freleases\u002Fdownload\u002Fnightly\u002Fapps_nightly.json&exclude=livecontainer\" target=\"_blank\">\n   \u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002FStikStore\u002Faltdirect\u002Frefs\u002Fheads\u002Fmain\u002Fassets\u002Fpng\u002FAltSource_Blue.png\" alt=\"Add AltSource\" width=\"200\"\u002F>\n\u003C\u002Fa>\n\u003C\u002Ftd>\n\u003Ctd>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FLiveContainer\u002FLiveContainer\u002Freleases\u002Fdownload\u002Fnightly\u002FLiveContainer.ipa\" target=\"_blank\">\n   \u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002FStikStore\u002Faltdirect\u002Frefs\u002Fheads\u002Fmain\u002Fassets\u002Fpng\u002FDownload_Blue.png\" alt=\"Download .ipa\" width=\"200\"\u002F>\n\u003C\u002Fa>\n\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftable>\n\n### LiveContainer+SideStore\n|Stable|Nightly|\n|:-:|:-:|\n|\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FLiveContainer\u002FLiveContainer\u002Freleases\u002Flatest\u002Fdownload\u002FLiveContainer+SideStore.ipa\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002FStikStore\u002Faltdirect\u002Frefs\u002Fheads\u002Fmain\u002Fassets\u002Fpng\u002FDownload_Blue.png\" alt=\"Download .ipa\" width=\"200\" \u002F>\u003C\u002Fa>|\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FLiveContainer\u002FLiveContainer\u002Freleases\u002Fdownload\u002Fnightly\u002FLiveContainer+SideStore.ipa\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002FStikStore\u002Faltdirect\u002Frefs\u002Fheads\u002Fmain\u002Fassets\u002Fpng\u002FDownload_Blue.png\" alt=\"Download .ipa\" width=\"200\" \u002F>\u003C\u002Fa>|\n\n\n## Requirements\n\n- iOS\u002FiPadOS 15+\n   + Multitasking requires iOS\u002FiPadOS 16.0+\n- AltStore 2.0+ \u002F SideStore 0.6.0+\n\n\n# Features & Guides\n\n### Installing Apps\n- Open LiveContainer, tap the plus icon in the upper right hand corner and select IPA files to install.\n- Choose the app you want to open in the next launch.\n- You can long-press the app to manage it.\n\n### [Add Apps to Home Screen](https:\u002F\u002Flivecontainer.github.io\u002Fdocs\u002Fguides\u002Fadd-to-home-screen)\n\n### [Multiple LiveContainers](https:\u002F\u002Flivecontainer.github.io\u002Fdocs\u002Fguides\u002Fmultiple-livecontainers)\nUsing multiple LiveContainers allows you to run multiples different apps simultaneously, with *almost* seamless data transfer between the LiveContainers.\n\n### [Multitasking](https:\u002F\u002Flivecontainer.github.io\u002Fdocs\u002Fguides\u002Fmultitask)\nYou can now launch multiple apps simultaneously in in-app virtual windows. These windows can be resized, scaled, and even displayed using the native Picture-in-Picture (PiP) feature. On iPads, apps can run in native window mode, displaying each app in a separate system window. And if you wish, you can choose to run apps in multitasking mode by default in settings.\n\nTo use multitasking, hold its banner and tap **\"Multitask\"**. You can also make Multitask the default launch mode in settings.\n\n>[!Note]\n>1. To use multitasking, ensure you select **\"Keep App Extensions\"** when installing via SideStore\u002FAltStore.  \n>2. If you want to enable JIT for multitasked apps, you’ll need a JIT enabler that supports attaching by PID. (StikDebug)\n\n### [JIT Support](https:\u002F\u002Flivecontainer.github.io\u002Fdocs\u002Fguides\u002Fjit-support)\n### [Installing external tweaks](https:\u002F\u002Flivecontainer.github.io\u002Fdocs\u002Fguides\u002Ftweaks)\n### [Multiple Containers\u002FExternal Containers](https:\u002F\u002Flivecontainer.github.io\u002Fdocs\u002Fguides\u002Fcontainers-and-external-data)\n### [Hiding Apps](https:\u002F\u002Flivecontainer.github.io\u002Fdocs\u002Fguides\u002Flock-app)\n\n### Fix File Picker & Local Notification\nSome apps may experience issues with their file pickers or not be able to apply for notification permission in LiveContainer. To resolve this, enable \"Fix File Picker\" & \"Fix Local Notifications\" accordingly in the app-specific settings.\n\n### \"Open In App\" Support\n- Tap the link icon in the top-right corner of the \"Apps\" tab and input the URL. LiveContainer will detect the appropriate app and ask if you want to launch it.\n- What's more, you can share a web page to LiveContainer using [this shortcut](https:\u002F\u002Fwww.icloud.com\u002Fshortcuts\u002F44ea82ce7ed8469ea24198c375db09a0). Be sure to add this shortcut to \"Favorites\" in share sheet actions.\n\n\n## Compatibility\nUnfortunately, not all apps work in LiveContainer, so we have a [compatibility list](https:\u002F\u002Fgithub.com\u002FLiveContainer\u002FLiveContainer\u002Flabels\u002Fcompatibility) to tell if there is apps that have issues. If they aren't on this list, then it's likely going run. However, if it doesn't work, please make an [issue](https:\u002F\u002Fgithub.com\u002FLiveContainer\u002FLiveContainer\u002Fissues\u002Fnew\u002Fchoose) about it.\n\n## Building\nOpen Xcode, edit `DEVELOPMENT_TEAM[config=Debug]` in `xcconfigs\u002FGlobal.xcconfig` to your team id and compile.\n\n## Project structure\n### Main executable\n- Core of LiveContainer\n- Contains the logic of setting up guest environment and loading guest app.\n- If no app is selected, it loads LiveContainerSwiftUI.\n\n### LiveContainerSwiftUI\n- SwiftUI rewrite of LiveContainerUI (by @hugeBlack)\n- Language file `Localizable.xcstrings` is in here for multilingual support. To help us translate LiveContainer, please visit [our crowdin project](https:\u002F\u002Fcrowdin.com\u002Fproject\u002Flivecontainer)\n\n### MultitaskSupport\n- Contains the implementation of multitasking feature.\n- Based on [FrontBoardAppLauncher](https:\u002F\u002Fgithub.com\u002Fkhanhduytran0\u002FFrontBoardAppLauncher)\n\n### SideStore\n- Supporting code for SideStore's app refreshing integration\n\n### TweakLoader\n- A simple tweak injector, which loads CydiaSubstrate and loads tweaks.\n- Injected to every app you install in LiveContainer.\n\n### ZSign\n- The app signer shipped with LiveContainer.\n- Originally made by [zhlynn](https:\u002F\u002Fgithub.com\u002Fzhlynn\u002Fzsign).\n- LiveContainer uses [Feather's](https:\u002F\u002Fgithub.com\u002Fkhcrysalis\u002FFeather) version of ZSign modified by khcrysalis.\n- Changes are made to meet LiveContainer's needs.\n\n## How does it work?\n\n### Patching guest executable\n- Patch `__PAGEZERO` segment:\n  + Change `vmaddr` to `0xFFFFC000` (`0x100000000 - 0x4000`)\n  + Change `vmsize` to `0x4000`\n- Change `MH_EXECUTE` to `MH_DYLIB`.\n- Inject a load command to load `TweakLoader.dylib`\n\n### Patching `@executable_path`\n- Hook `dyld4::APIs::_NSGetExecutablePath`\n- Call `_NSGetExecutablePath`\n- Replace `config.process.mainExecutablePath`\n  - Calculate address of `config.process.mainExecutablePath` using `dyld4::APIs` instance (passed as first parameter)\n  - Use `builtin_vm_protect` or TPRO unlock to make it writable\n  - Replace the address with one we have control of\n- Put the original `dyld4::APIs::_NSGetExecutablePath` back\n\n> Old Method\n>- Call `_NSGetExecutablePath` with an invalid buffer pointer input -> SIGSEGV\n>- Do some [magic stuff](https:\u002F\u002Fgithub.com\u002Fkhanhduytran0\u002FLiveContainer\u002Fblob\u002F5ef1e6a\u002Fmain.m#L74-L115) to overwrite the contents of executable_path.\n\n### Patching `NSBundle.mainBundle`\n- This property is overwritten with the guest app's bundle.\n\n### Bypassing Library Validation\n- JIT is optional to bypass codesigning. In JIT-less mode, all executables are signed so this does not apply.\n- Derived from [Restoring Dyld Memory Loading](https:\u002F\u002Fblog.xpnsec.com\u002Frestoring-dyld-memory-loading)\n\n### dlopening the executable\n- Call `dlopen` with the guest app's executable\n- TweakLoader loads all tweaks in the selected folder\n- Find the entry point\n- Jump to the entry point\n- The guest app's entry point calls `UIApplicationMain` and start up like any other iOS apps.\n\n### Multi-Account support & Keychain Semi-Separation\n[128 keychain access groups](.\u002Fentitlements.xml) are created and LiveContainer allocates them randomly to each container of the same app. So you can create 128 container with different keychain access groups.\n\n## Limitations\n- Entitlements from the guest app are not applied to the host app. This isn't a big deal since sideloaded apps requires only basic entitlements.\n- App Permissions are globally applied.\n- Guest app containers are not sandboxed. This means one guest app can access other guest apps' data.\n- App extensions aren't supported. they cannot be registered because: LiveContainer is sandboxed, SpringBoard doesn't know what apps are installed in LiveContainer, and they take up App ID.\n- Multitasking can be achieved by using multiple LiveContainer and the multitasking feature. However, while we were able to fix physical keyboard input issue on iPadOS (https:\u002F\u002Fgithub.com\u002FLiveContainer\u002FLiveContainer\u002Fissues\u002F524), iPhone Mirroring uses different checks which still broke it (https:\u002F\u002Fgithub.com\u002FLiveContainer\u002FLiveContainer\u002Fissues\u002F793).\n- Remote push notification will not work\n- Querying custom URL schemes might not work(?)\n\n## TODO\n- Use ChOma instead of custom MachO parser\n\n## License\n[Apache License 2.0](https:\u002F\u002Fgithub.com\u002Fkhanhduytran0\u002FLiveContainer\u002Fblob\u002Fmain\u002FLICENSE)\n\n## Credits\n- [xpn's blogpost: Restoring Dyld Memory Loading](https:\u002F\u002Fblog.xpnsec.com\u002Frestoring-dyld-memory-loading)\n- [LinusHenze's CFastFind](https:\u002F\u002Fgithub.com\u002Fpinauten\u002FPatchfinderUtils\u002Fblob\u002Fmaster\u002FSources\u002FCFastFind\u002FCFastFind.c): [MIT license](https:\u002F\u002Fgithub.com\u002Fpinauten\u002FPatchfinderUtils\u002Fblob\u002Fmaster\u002FLICENSE)\n- [litehook](https:\u002F\u002Fgithub.com\u002Fopa334\u002Flitehook): [MIT license](https:\u002F\u002Fgithub.com\u002Fopa334\u002Flitehook\u002Fblob\u002Fmain\u002FLICENSE)\n- @haxi0 & @m1337v for icon\n- @Vishram1123 for the initial shortcut implementation.\n- @hugeBlack for SwiftUI contribution\n- @Staubgeborener for automatic AltStore\u002FSideStore source updater\n- @fkunn1326 for improved app hiding\n- @slds1 for dynamic color feature\n- @Vishram1123 for iOS 26+ JIT Script Support\n- @StephenDev0 for AltStore source support\n","LiveContainer 是一个应用启动器，允许用户在不实际安装的情况下运行 iOS 应用。其核心功能包括支持在一个应用和应用 ID 下无限量地安装应用，并且可以为同一应用的多个版本配置多个数据容器。当 JIT 可用时，代码签名完全被绕过，无需预先对应用进行签名。LiveContainer 适用于需要频繁测试或使用多个 iOS 应用但不想受制于安装限制的开发者和测试人员。需要注意的是，由于所有应用都安装在 LiveContainer 内部，因此对于第三方构建版本的安全性应保持警惕。",2,"2026-06-11 03:08:42","top_language"]