[{"data":1,"prerenderedAt":265},["ShallowReactive",2],{"i-ph:moon-bold":3,"i-ph:globe-simple":8,"i-ph:caret-down":10,"i-ph:list":12,"i-ph:heart-fill":14,"i-ph:discord-logo-bold":16,"i-ph:github-logo-bold":18,"i-ph:cookie-bold":20,"feature-article-en-apps-web":22,"i-ph:arrow-left":259,"i-ph:monitor-bold":261,"i-ph:device-mobile-bold":263},{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":7},0,256,false,"\u003Cpath fill=\"currentColor\" d=\"M236.37 139.4a12 12 0 0 0-12-3A84.07 84.07 0 0 1 119.6 31.59a12 12 0 0 0-15-15a108.86 108.86 0 0 0-54.91 38.48A108 108 0 0 0 136 228a107.1 107.1 0 0 0 64.93-21.69a108.86 108.86 0 0 0 38.44-54.94a12 12 0 0 0-3-11.97m-49.88 47.74A84 84 0 0 1 68.86 69.51a84.9 84.9 0 0 1 23.41-21.22Q92 52.13 92 56a108.12 108.12 0 0 0 108 108q3.87 0 7.71-.27a84.8 84.8 0 0 1-21.22 23.41\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":9},"\u003Cpath fill=\"currentColor\" d=\"M128 24a104 104 0 1 0 104 104A104.12 104.12 0 0 0 128 24m87.62 96h-39.83c-1.79-36.51-15.85-62.33-27.38-77.6a88.19 88.19 0 0 1 67.22 77.6ZM96.23 136h63.54c-2.31 41.61-22.23 67.11-31.77 77c-9.55-9.9-29.46-35.4-31.77-77m0-16c2.31-41.61 22.23-67.11 31.77-77c9.55 9.93 29.46 35.43 31.77 77Zm11.36-77.6C96.06 57.67 82 83.49 80.21 120H40.37a88.19 88.19 0 0 1 67.22-77.6M40.37 136h39.84c1.82 36.51 15.85 62.33 27.38 77.6A88.19 88.19 0 0 1 40.37 136m108 77.6c11.53-15.27 25.56-41.09 27.38-77.6h39.84a88.19 88.19 0 0 1-67.18 77.6Z\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":11},"\u003Cpath fill=\"currentColor\" d=\"m213.66 101.66l-80 80a8 8 0 0 1-11.32 0l-80-80a8 8 0 0 1 11.32-11.32L128 164.69l74.34-74.35a8 8 0 0 1 11.32 11.32\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":13},"\u003Cpath fill=\"currentColor\" d=\"M224 128a8 8 0 0 1-8 8H40a8 8 0 0 1 0-16h176a8 8 0 0 1 8 8M40 72h176a8 8 0 0 0 0-16H40a8 8 0 0 0 0 16m176 112H40a8 8 0 0 0 0 16h176a8 8 0 0 0 0-16\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":15},"\u003Cpath fill=\"currentColor\" d=\"M240 102c0 70-103.79 126.66-108.21 129a8 8 0 0 1-7.58 0C119.79 228.66 16 172 16 102a62.07 62.07 0 0 1 62-62c20.65 0 38.73 8.88 50 23.89C139.27 48.88 157.35 40 178 40a62.07 62.07 0 0 1 62 62\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":17},"\u003Cpath fill=\"currentColor\" d=\"M108 136a16 16 0 1 1-16-16a16 16 0 0 1 16 16m56-16a16 16 0 1 0 16 16a16 16 0 0 0-16-16m76.07 76.56l-67 29.71A20.15 20.15 0 0 1 146 214.9l-8.54-23.13c-3.13.14-6.27.24-9.45.24s-6.32-.1-9.45-.24L110 214.9a20.19 20.19 0 0 1-27.08 11.37l-67-29.71a19.93 19.93 0 0 1-11.3-23.15L34.15 57a20 20 0 0 1 16.22-14.81l36.06-5.93a20.26 20.26 0 0 1 22.79 14.84l4.41 17.41c4.74-.33 9.52-.51 14.37-.51s9.63.18 14.37.51l4.41-17.41a20.25 20.25 0 0 1 22.79-14.84l36.06 5.93A20 20 0 0 1 221.85 57l29.53 116.38a19.93 19.93 0 0 1-11.31 23.18M227.28 176L199.23 65.46l-30.07-4.94l-2.84 11.17c2.9.58 5.78 1.2 8.61 1.92a12 12 0 1 1-5.86 23.27A168.4 168.4 0 0 0 128 92a168.4 168.4 0 0 0-41.07 4.88a12 12 0 0 1-5.86-23.27c2.83-.72 5.71-1.34 8.61-1.92l-2.83-11.17l-30.08 4.94L28.72 176l60.22 26.7l5-13.57c-4.37-.76-8.67-1.65-12.88-2.71a12 12 0 0 1 5.86-23.28A168.4 168.4 0 0 0 128 168a168.4 168.4 0 0 0 41.07-4.88a12 12 0 0 1 5.86 23.28c-4.21 1.06-8.51 1.95-12.88 2.71l5 13.57Z\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":19},"\u003Cpath fill=\"currentColor\" d=\"M212.62 75.17A63.7 63.7 0 0 0 206.39 26A12 12 0 0 0 196 20a63.71 63.71 0 0 0-50 24h-20a63.71 63.71 0 0 0-50-24a12 12 0 0 0-10.39 6a63.7 63.7 0 0 0-6.23 49.17A61.5 61.5 0 0 0 52 104v8a60.1 60.1 0 0 0 45.76 58.28A43.66 43.66 0 0 0 92 192v4H76a20 20 0 0 1-20-20a44.05 44.05 0 0 0-44-44a12 12 0 0 0 0 24a20 20 0 0 1 20 20a44.05 44.05 0 0 0 44 44h16v12a12 12 0 0 0 24 0v-40a20 20 0 0 1 40 0v40a12 12 0 0 0 24 0v-40a43.66 43.66 0 0 0-5.76-21.72A60.1 60.1 0 0 0 220 112v-8a61.5 61.5 0 0 0-7.38-28.83M196 112a36 36 0 0 1-36 36h-48a36 36 0 0 1-36-36v-8a37.87 37.87 0 0 1 6.13-20.12a11.65 11.65 0 0 0 1.58-11.49a39.9 39.9 0 0 1-.4-27.72a39.87 39.87 0 0 1 26.41 17.8a12 12 0 0 0 10.1 5.53h32.35a12 12 0 0 0 10.11-5.53a39.84 39.84 0 0 1 26.41-17.8a39.9 39.9 0 0 1-.4 27.72a12 12 0 0 0 1.61 11.53A37.85 37.85 0 0 1 196 104Z\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":21},"\u003Cpath fill=\"currentColor\" d=\"M167.31 160.69a16 16 0 1 1-22.62 0a16 16 0 0 1 22.62 0m-86.62-8a16 16 0 1 0 22.62 0a16 16 0 0 0-22.62 0m14.62-33.38a16 16 0 1 0-22.62 0a16 16 0 0 0 22.62 0m48-6.62a16 16 0 1 0 0 22.62a16 16 0 0 0 0-22.62M236 128A108 108 0 1 1 128 20a12 12 0 0 1 12 12a36 36 0 0 0 36 36a12 12 0 0 1 12 12a36 36 0 0 0 36 36a12 12 0 0 1 12 12m-24.67 10.65A60.17 60.17 0 0 1 165 91a60.17 60.17 0 0 1-47.66-46.32a84 84 0 1 0 94 94Z\"\u002F>",{"id":23,"title":24,"body":25,"category":35,"date":247,"description":248,"extension":249,"featureKey":250,"meta":251,"navigation":252,"path":253,"platform":254,"readingTime":255,"seo":256,"stem":257,"__hash__":258},"features_en\u002Ffeatures\u002Fapps\u002Fweb.md","App Manager in the Web Dashboard",{"type":26,"value":27,"toc":237},"minimark",[28,42,49,56,61,105,109,160,164,197,201,209,213],[29,30,31,32,36,37,41],"p",{},"The ",[33,34,35],"strong",{},"Apps"," view in the web dashboard turns any laptop or desktop browser into a full package manager for your Android phone. Visit the URL shown in the PlainApp app (for example, ",[38,39,40],"code",{},"https:\u002F\u002F192.168.1.50:8443\u002Fapps",") from any browser on the same Wi-Fi network, and you'll see every installed package laid out in a sortable table with icons, versions, sizes, and install dates.",[29,43,44,45,48],{},"Because the dashboard runs as a static web app served directly from the phone, there's no cloud relay in the middle. Your browser talks to the phone over an encrypted TLS connection, and every action — search, sort, APK export, uninstall — is dispatched to the phone's ",[38,46,47],{},"PackageManager"," over that channel.",[29,50,51],{},[52,53],"img",{"alt":54,"src":55},"Screenshot: Apps","\u002Ffeatures\u002Fapps\u002Fapps.webp",[57,58,60],"h2",{"id":59},"key-capabilities","Key capabilities",[62,63,64,71,77,83,89,99],"ul",{},[65,66,67,70],"li",{},[33,68,69],{},"Sortable app table"," — each row shows index, icon, name with version, package id, size, and type alongside installed and updated timestamps. Click a sort option in the top app bar to reorder by name, size, or modified date.",[65,72,73,76],{},[33,74,75],{},"Sidebar filters with live counts"," — the left sidebar lists All, User, and System apps, each with a live count fetched from the phone. Click a filter to scope the table; the active filter is reflected in the URL.",[65,78,79,82],{},[33,80,81],{},"Bulk APK export"," — select one or more rows with the checkbox column and click the download button in the top app bar. A single selection downloads the APK directly; multiple selections are zipped together on the fly.",[65,84,85,88],{},[33,86,87],{},"Per-row uninstall and download"," — hover a row to reveal its action buttons: download the APK, or trigger an uninstall. Uninstall prompts you to confirm on the phone, and a spinner on the row tracks the uninstall state until the package is gone.",[65,90,91,94,95,98],{},[33,92,93],{},"Drag-and-drop APK install"," — drag ",[38,96,97],{},".apk"," files from your computer anywhere onto the Apps page. A drop mask appears; release to upload the files to the phone's downloads directory and trigger an install, with progress tracked in the uploads panel.",[65,100,101,104],{},[33,102,103],{},"Search and pagination"," — the search box filters packages by name or id; the table paginates with a configurable page size and a select-all checkbox that handles the full result set even when it spans pages.",[57,106,108],{"id":107},"walkthrough","Walkthrough",[110,111,112,118,132,138,148,154],"ol",{},[65,113,114,117],{},[33,115,116],{},"Open the Apps page"," from the left sidebar. The first time you visit, the table loads All apps with the total count shown in the top app bar.",[65,119,120,123,124,127,128,131],{},[33,121,122],{},"Filter by User apps"," — click ",[33,125,126],{},"User"," in the left sidebar. The table refreshes and the URL updates to ",[38,129,130],{},"\u002Fapps?q=\u003Ctoken>"," so the filter is shareable.",[65,133,134,137],{},[33,135,136],{},"Search for an app"," using the search box. The query is encoded into the URL, so you can bookmark or share a filtered view.",[65,139,140,143,144,147],{},[33,141,142],{},"Click a row's download icon"," to export that app's APK. The file downloads as ",[38,145,146],{},"\u003CAppName>-\u003CpackageId>.apk"," to your browser's default download directory.",[65,149,150,153],{},[33,151,152],{},"Select multiple rows"," with the checkboxes (or select-all) and click the download button in the top app bar to bulk-export the APKs as a single zip.",[65,155,156,159],{},[33,157,158],{},"Uninstall an app"," by clicking its uninstall icon. The row enters an uninstalling state; confirm the prompt on the phone, and the row disappears once the package is removed.",[57,161,163],{"id":162},"tips-tricks","Tips & tricks",[62,165,166,175,181,187],{},[65,167,168,171,172,174],{},[33,169,170],{},"Drag APKs to install",": drop one or more ",[38,173,97],{}," files anywhere on the Apps page to upload and install them. Non-APK files in the drop are ignored.",[65,176,177,180],{},[33,178,179],{},"Sort via the top app bar",": the sort icon opens a dropdown of sort options. The current sort is highlighted; picking a new one reloads the table from page 1.",[65,182,183,186],{},[33,184,185],{},"Select-all across pages",": the select-all checkbox offers a \"select all N results\" option when the result set spans multiple pages, with a clear-selection control to back out.",[65,188,189,192,193,196],{},[33,190,191],{},"Bookmark a filtered view",": the URL carries the active query and page number, so you can share a deep link like ",[38,194,195],{},"\u002Fapps?q=\u003Ctoken>&page=2"," with anyone on the same network.",[57,198,200],{"id":199},"privacy-security-notes","Privacy & security notes",[202,203,204],"web-security-notes",{},[62,205,206],{},[65,207,208],{},"Your browser will warn you the first time — accept the certificate to continue. The connection is encrypted with TLS; the warning is only about identity, not security.",[57,210,212],{"id":211},"related-features","Related features",[62,214,215,223,230],{},[65,216,217,222],{},[218,219,221],"a",{"href":220},"\u002Ffeatures\u002Fapps\u002Fmobile","App Manager on Android"," — the on-phone app manager UI for when you're not at a computer.",[65,224,225,229],{},[218,226,228],{"href":227},"\u002Ffeatures\u002Ffiles\u002Fweb","File Management in the Web Dashboard"," — the desktop file manager for the phone's storage volumes.",[65,231,232,236],{},[218,233,235],{"href":234},"\u002Ffeatures\u002Fnotes\u002Fweb","Markdown Notes in the Web Dashboard"," — write notes in the browser with a live markdown preview.",{"title":238,"searchDepth":239,"depth":239,"links":240},"",3,[241,243,244,245,246],{"id":59,"depth":242,"text":60},2,{"id":107,"depth":242,"text":108},{"id":162,"depth":242,"text":163},{"id":199,"depth":242,"text":200},{"id":211,"depth":242,"text":212},"2025-08-01","Open any browser on the same Wi-Fi network and get a desktop-grade app manager for your Android phone — sort by name, version, or install date, bulk-export APKs, and uninstall with a tap.","md","apps",{},true,"\u002Ffeatures\u002Fapps\u002Fweb","web","5 min read",{"title":24,"description":248},"features\u002Fapps\u002Fweb","tw13qdzl3yOs9NTN9t92IHXyJH53jFX7bR_llBwCmsc",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":260},"\u003Cpath fill=\"currentColor\" d=\"M224 128a8 8 0 0 1-8 8H59.31l58.35 58.34a8 8 0 0 1-11.32 11.32l-72-72a8 8 0 0 1 0-11.32l72-72a8 8 0 0 1 11.32 11.32L59.31 120H216a8 8 0 0 1 8 8\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":262},"\u003Cpath fill=\"currentColor\" d=\"M208 36H48a28 28 0 0 0-28 28v112a28 28 0 0 0 28 28h160a28 28 0 0 0 28-28V64a28 28 0 0 0-28-28m4 140a4 4 0 0 1-4 4H48a4 4 0 0 1-4-4V64a4 4 0 0 1 4-4h160a4 4 0 0 1 4 4Zm-40 52a12 12 0 0 1-12 12H96a12 12 0 0 1 0-24h64a12 12 0 0 1 12 12\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":264},"\u003Cpath fill=\"currentColor\" d=\"M176 12H80a28 28 0 0 0-28 28v176a28 28 0 0 0 28 28h96a28 28 0 0 0 28-28V40a28 28 0 0 0-28-28M76 76h104v104H76Zm4-40h96a4 4 0 0 1 4 4v12H76V40a4 4 0 0 1 4-4m96 184H80a4 4 0 0 1-4-4v-12h104v12a4 4 0 0 1-4 4\"\u002F>",1788009009527]