nextcloud / nextcloud/recommendations

[RFC] Files Recommendations: Improve algorithm and data sources

Open
#888 7 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

design
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

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.