Hi,
I’m currently working on a script which uses the descriptions available in metadata · master · F-Droid / Data · GitLab
to find the “closest” matches for any given app on f-droid (made some progress since Does F-Droid provide any sort of stats? - #47 by hans ).
The ‘main deliverable’ of the script would be output like this:
org.zeroxlab.zeroxbenchmark "0xBenchmark" 2746 2127 733 1907 2418 2291 1218 875 942 2379 902 2588 1129 2676 2266 1053 1525 634 2889 2368 304 1064 878 36 2740 2337 2494 2681 1586 2311 46 649
io.github.lonamiwebs.klooni "1010! Klooni" 1817 404 766 310 1050 2736 1073 976 2015 2115 2522 2761 825 2816 1345 2350 506 2856 2239 1847 2458 424 1845 1980 1310 982 1216 1552 2598 665 313 196
com.lucasdnd.bitclock16 "16-bit Clock Widget" 816 603 1633 817 1312 328 1995 157 297 1798 707 2347 383 1147 61 1538 1192 496 2964 144 1701 2047 405 818 2348 218 354 2823 1336 454 2352 2908
com.github.wakhub.tinyclock "1x1 clock" 603 328 157 1995 1633 1798 383 707 1312 297 816 817 818 1147 1192 496 2964 1336 2047 274 218 405 1701 354 2078 2352 2348 473 1520 974 483 2347
com.uberspot.a2048 "2048" 1237 2356 1756 2856 1644 1602 2190 313 1057 2458 877 1362 196 1216 882 1983 1980 2349 615 665 1646 976 271 2003 2350 2115 14 2618 1345 1643 506 1307
com.traffar.a24game "24game" 1218 1214 681 2616 2015 2368 2746 1630 285 2608 1643 1645 2831 550 1386 1652 2790 1647 394 196 950 828 2945 941 431 2598 1101 442 395 179 1151 798
info.staticfree.android.twentyfourhour "24h Analog Clock" 1798 1381 157 603 328 1995 274 383 1312 1633 144 297 817 707 1147 816 818 1192 611 496 2347 1208 677 1336 2078 375 2352 121 405 354 1701 2348
com.twobuntu.twobuntu "2buntu" 1231 759 1445 2444 372 981 2097 1677 1635 1963 1551 123 1943 2279 651 1836 1430 1076 1248 353 2035 830 1093 30 158 1582 1204 461 912 726 996 82
nerd.tuxmobil.fahrplan.camp "30C3 Schedule (Camp)" 1993 1994 2136 1794 2421 2428 2036 2799 1333 919 1399 2582 2329 187 106 2521 1865 282 302 746 2802 607 2236 2684 2449 42 66 962 2650 2400 2320 1321
de.audioattack.yacy31c3search "31c3 Search" 1375 1376 146 953 1395 1432 2846 304 2420 2511 1553 147 657 2917 176 1773 756 475 913 2883 1484 2689 2109 2677 981 1689 1994 223 739 2424 2589 2949
...
at.huber.sampleDownload "YouTube Download" "YouTube Download" "YouTube Cacher" "WebTube" "dentex.youtube.downloader.txt" "NetMBuddy" "MinTube" "YouTube Stream" "MusicPiped" "NewPipe" "SkyTube"
com.drodin.zxdroid "ZXdroid" "ZXdroid" "Oscilloscope" "J2ME Loader" "Tuner" "L9Droid" "Hexiano" "yaft" "Heading Calculator" "Chip8" "RF Analyzer"
com.googlecode.tcime "注音倉頡輸入法" "注音倉頡輸入法" "Visualizer" "Dodge" "Simple Keyboard" "Tibetan Keyboard" "WiFiKeyboard" "Scandinavian keyboard" "TV-Browser" "TaigIME" "BeHe Keyboard"
com.android.inputmethod.pinyin "谷歌拼音输入法" "谷歌拼音输入法" "TaigIME" "Sophia keyboard" "OpenWnn" "Presentation" "Changjie Input Method" "OpenWnn Legacy" "四次元" "Bluez IME" "Puff"
This might look huge but could be boiled down to 32 (12 bit) indexes (48 byte) per app. So a table with 32 suggestions per app can be on the smartphone and could be used while scrolling through available apps.
While calculating the best matches the script is able to calculate diagrams about the keywords (much more shiny:).
So one can actually have an idea on which grounds the algorithm suggests / ranks the apps.
Appending the heatmap (png (svg was not allowed)) for one of the apps (with good description) listed in stats/latestapps.txt · master · F-Droid / Data · GitLab
In the context of this app, the term “password” is probably most interesting to the user.
In this case the algorithm works particularly well, only one app has a white blank in the corresponding column (it instead scores on “generat” and “uniqu”).
The app description in fdroiddata is:
"Summary: Generate unique passwords for your accounts based on a master password" "Description: LessPass is a stateless password manager. It derives a site, a login and a master password to generate a unique password. You don't need to sync your password vault across every device."
If there’s interest (website, TWIF, f-droid.apk, g-droid.apk, other) I’ll happily gitlab the script.
The script currently uses data of 2965 apps. Is there an easily accessible list with apps that are stale or where the current versions are not built?
Greetings,