Why not simply switch the default search to using the sort by name option instead of sort by “freshness”? That is a very easy change that would improve things greatly.
If you guys are interested in accepting that idea I would be more than willing to change the few lines of code necessary to make that happen and submit it as an MR.
I agree with sorenstoutner. Change the search defaults so it at least finds the apps that match the search term by their name first then apps with similar words in their app description second
BTW, dvckdvkgo is burying “privacy browser” IDK how far down, and mogeek has your site on bottom of page 2, for me… (and they continue regularly giving plain 403 errors for searches with Tor).
Neither of those surprise me. There is a huge difference in searching the general web for Privacy Browser and searching an app repository that contains an app named Privacy Browser for that exact phrase. Although I expect that over time, as Privacy Browser increases in popularity, that problem will take care of itself.
Regarding Tor, it does not surprise me that parts of the internet are inaccessible through their network. My own website blocks some Tor traffic because hacking attempts have come from those IP addresses:
IIRC, it uses app name, description and package name. It doesn’t ignore app name, but the reason you get no result here is because it’s “hacker’s keyboard”, not “hackers keyboard”. The word “hackers” is nowhere to be found, so it doesn’t match.
I find it very interesting you claim you can see I edited my comment, as I haven’t. If I did, there would’ve been a pencil icon and you could see exactly what I edited.
I don’t understand why you need to have such an attitude, telling me I’m posting “low-effort bullshit” and when I prove you wrong claim I edited my post while everyone can see I didn’t and claiming I said something everyone can verify I didn’t. Just admit you made a mistake? Everyone is wrong sometimes, there’s no shame in that. Hell, I am wrong often enough myself. Attacking people like you’re doing though is not cool.
I agree that this should be discussed without resorting to personal attacks.
So far, in this thread, I have yet to see an example where the default search results in the app are better than the search results when sorted by name. And there are several examples where the search results by name are demonstrably better. Is there any reason why the search by name shouldn’t be the default?
AFAICT, the search is based on SQLite’s “like” function along with some extra fields (name, description) in the app description. In reading through dbhelper it’s clear that we could use FTS5 to greatly improve search results. One option could be to load the metadata.json into SQLite via the json1 extension, and then use the FTS5 engine against that table.
We’ve recreated the six year discussion in #336 in this thread.
I’m willing to contract someone to implement FTS5 in the client because clearly the community needs it and the current state annoys the crap out of me when trying to find apps on device. My java is rusty and I don’t have time to write the code. If anyone wants to take a crack at it, dm me. If not, upwork exists for this reason. The end of the contract is an accepted MR on gitlab.
Can we expect a better search in fdroid like is is any exect word in written the actual app moat times shows in 3or 2apps down and if you make a spelling mistake then you can’t even find the app.
Interesting discussion. I switched to Foxy Droid a few years ago, its search returned much more relevant results than the official client at the time. Haven’t used the F-Droid app since.
@human Am I on shrooms or did you just throw a bunch of words together?!
Plz Lower the bar to the (excessive, IMO) management-specified level:
Be civil. Don’t post anything that a reasonable person would consider offensive, abusive, or hate speech. (See FAQ - F-Droid Forum )
Maybe human was just careless. Or experimenting with alpha quality text obfuscating software. A polite reminder their statement made no sense is perfectly acceptable, IMO.
create view app_search as
(select id, PACKAGE_NAME, PACKAGE_NAME search, 1000 score from app) union
(select id, PACKAGE_NAME, SEARCH_NAME search, 1000 score from app) union
(select id, PACKAGE_NAME, SEARCH_SUMMARY search, 100 score from app) union
(select id, PACKAGE_NAME, SEARCH_Whats_New search, 10 score from app) union
(select id, PACKAGE_NAME, SEARCH_Category search, 50 score from app) union
(select id, PACKAGE_NAME, SEARCH_DESCRIPTION search, 1 score from app)
;
-- example search for "photo"
select
id,
PACKAGE_NAME,
sum(score) score
from APP_SEARCH
where search like '%photo%'
group by id, PACKAGE_NAME
order by sum(score) desc, PACKAGE_NAME;
this way finding in the app-name or app-packagename has a higher score that app-summary or app-description and is therefore listed at the beginning.