nextcloud / nextcloud/recommendations
[RFC] Files Recommendations: Improve algorithm and data sources
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 15
- Forks
- 19
- Avg merge
- 6d 15h
- Merged PRs (30d)
- 9
Description
Goals
I think we can improve the current state.
Right now we support three providers:
- Recently Commented
- Recently Edited
- Recently Shared
Sources suggestions
- Recently Accessed
- Recently Uploaded (because we keep the mtime when uploading, so new files might not appear as Recently Edited)
- Frequently Accessed
- Time of day: Accessed files during specific time of days ?
Aggregation bonus
- Some data could be regrouped too. Like if you frequently access more than x files in the same folder, also recommend the folder directly?
Distribution
I also suggest to add a weight combining score
Something that can be fined tuned over time, but we could weight the relevancy of a result if it matches multiple criterias (dumb values used for this example below)
$score = (
0.3 * $recencyScore +
0.2 * $frequencyScore +
0.1 * $editScore +
0.1 * $sharedScore +
0.1 * $commentedScore
);
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the existing Recently Commented, Recently Edited, and Recently Shared providers, then assess the proposed Recently Accessed, Recently Uploaded, and Frequently Accessed sources. Define a concrete aggregation and weighting model before implementation; the issue does not identify files, tests, or a verifiable completion target.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- backend, data
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100