nextcloud / nextcloud/cookbook

Separate and minimize the JS files

Open
#455 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Frontend maintenance
Dominant language
HTML
Stars
641
Forks
113
Avg merge
21h 31m
Merged PRs (30d)
26

Description

The JS file grows significantly in recent times. This is an anti-pattern as it increases load time significantly especially for mobile users. The following steps should be carried out:

  • Check all dependencies if they are needed or if a minimal version (with only the required functionality) is available
  • Separate the vue.js file into multiple chunks to load asynchronously. This is mainly handled by Vue but NC poses some CSP restrictions here.

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 auditing the JavaScript dependencies and the Vue.js bundling setup, then review how Nextcloud's CSP restrictions affect asynchronous chunks. Done means unnecessary dependencies are removed or minimized and the JavaScript is separated into asynchronously loaded chunks without violating CSP, with load-time impact checked for mobile users.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
frontend, performance
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.