Feedback: Improve Workload & Gantt View with WebAssembly (Wasm)
s
sk W
Dear ClickUp Team,
I am writing to provide detailed technical feedback regarding the loading performance of the Workload and Gantt views. While I greatly appreciate the depth of functionality in ClickUp 4.0, the current load times for complex projects create significant friction in my daily workflow. I would like to propose a specific architectural solution for your consideration.
- The Problem
Currently, navigating to the Workload or Gantt view results in a prolonged "white screen" delay and choppy scrolling behavior. Upon reviewing network activity in DevTools, I observed that the initial JavaScript payload and associated task data can reach upwards of 20MB+.
· Impact: For teams like mine that manage hundreds of active projects, this latency renders quick daily check-ins nearly impossible. The high cost of context switching (waiting for the view to become interactive) forces users to revert to external spreadsheets just for speed.
· Specific Pain Point: The main thread becomes bottlenecked during the heavy JavaScript execution and data hydration phase, degrading the overall user experience.
- Proposed Solution
I strongly recommend integrating WebAssembly (Wasm) as a dedicated compute engine specifically for the rendering and logic of the Workload and Gantt modules.
· Data Processing in Wasm: Offload intensive calculations—such as timeline collision detection, dependency graph resolution, and "Remaining Time" metrics—from JavaScript to Wasm (compiled from Rust or Go).
· Efficient Data Loading: Implement a Wasm-based streaming parser to incrementally deserialize the 20MB payload, rather than waiting for the browser's JS engine to parse the entire monolithic file upfront.
· Canvas Rendering: Utilize Wasm to manage Canvas draw calls. This would enable 60fps scrolling and zooming, bypassing the performance limitations of traditional DOM manipulation for the chart area.
- Technical Feasibility
This proposal aligns well with ClickUp 4.0's existing modern Angular and micro-frontend architecture.
· Stack Alignment: WebAssembly modules integrate seamlessly via standard browser APIs and can be lazy-loaded as separate, cacheable chunks to minimize the impact on the initial application bundle.
· Maturity: This approach is already production-proven by industry leaders. Figma uses Wasm for rendering engine performance, and Google Sheets relies on Wasm for calculation speed. The technology is mature and supported across all modern browsers.
· Implementation Path: The team could de-risk this initiative by first migrating the Time Calculations & Sorting logic to Wasm. This would provide an immediate, high-impact performance win before undertaking a full Canvas rendering overhaul.
- Expected Impact
· Payload Efficiency: Wasm binaries compress more efficiently than equivalent JavaScript. The compute-heavy logic payload could shrink from megabytes to just a few hundred kilobytes.
· Perceived Performance: I estimate this could reduce Time-to-Interactive (TTI) for these views by 60-70% , making the switch between views feel near-instantaneous.
· Scalability: This enhancement would empower teams to visualize 10,000+ tasks with smooth, native-like responsiveness, eliminating the risk of browser tab freezing.
Thank you for your time and for building such a powerful platform. I hope this specific, technical feedback is helpful for the roadmap planning of future performance updates.
Best regards,
Sk W
Log In
Vasil Enchev
This is one of the most thorough pieces of technical feedback we've gotten - appreciate the depth. Performance is a real focus for us right now: we just opened a Workload 4.5 post collecting input on what to tackle next. Would you mind reposting the perf points there (or dropping a vote)? We're sequencing performance work in the upcoming releases and your specific framing - incremental data hydration, offloading dependency graph resolution - maps directly to ideas on our list.
s
sk W
Vasil Enchev Hi dev, thank you for genuinely listening to my feedback. I'll figure out a way to split some of the features into separate posts.
s
sk W
Vasil Enchev How are you planning to implement WebAssembly in ClickUp? Which language(s) are you considering (e.g. Rust, C++), and which parts of the app would you tackle first with Wasm — virtual scrolling, graph layout calculations, or something else?
Vasil Enchev
sk W: I'm not on the perf team myself and I am not fully aware if WASM is ever going to get implemented but I know we are exploring all paths forward to get perf gains. There are different bottlenecks paiting is not the only one.
Are you refering maynly to the list view, how big is your list where you experince slowness? Theh thing stopping us from switching to something like web assambly is there we will need to port 100 different components that live on the task item.
s
sk W
Vasil Enchev Yes, I can answer that. The views where the lag is most severe are Timeline, Gantt, Table, and List — I currently use these four for planning and layout. I have a workspace with over 1,580 tasks. I tested on Windows 10 22H2 with Edge version 147 and an 11th-gen Intel i5 CPU, and it still lags; Task Manager shows Edge using up to 1049 MB of memory (total process). If you don't mind, I can grant you access to this workspace so you can check it yourself.
s
sk W
Vasil EnchevThe loading times are also painful — with a good network, the first load takes about 6 seconds; with a poor network, it can even take a minute.