Work Intent: File Manager
@elibosley is already working on this.
Since Aug 20, 2025.
Assessment
This issue has not been assessed yet.
Description
Overview
I want to work on integrating a modern file management API into Unraid by leveraging an existing, mature file management service (FileBrowser). The current system lacks a performant, API-driven file manager that can power modern web interfaces, mobile apps, and automation tools. By integrating FileBrowser as a sidecar service into the Unraid API, we avoid reinventing the wheel and provide users with a robust, extensible, and secure solution.
Technical Approach
I intend to use the sidecar mechanism as stated in the original issue #1599.
The approach includes:
- Running FileBrowser as a subprocess (sidecar) managed by the Unraid API lifecycle.
- Proxying API requests and WebSocket connections through NestJS, enforcing Unraid authentication via headers (X-Unraid-User, X-Unraid-Roles).
- Disabling FileBrowser’s built-in authentication and bridging Unraid session cookies/tokens to handle user identity and permissions.
- Bundling the FileBrowser binary into the Unraid plugin build process (build-txz.ts) so it is always available on installation.
- Creating a WebGUI integration following the LogViewer.vue pattern with iframe embedding, so users can access the File Manager directly from the Tools menu.
- Adding documentation and tests to ensure reliability, performance, and security.
Scope
- API
- Plugin
- Web UI
- Build/Deploy Process
- Documentation
Timeline & Impact
- Estimated time needed: ~2–3 weeks (including development, integration, and testing).
- Potential impacts:
Pre-submission Checklist
- I have searched for similar work/issues
- I understand this needs approval before starting
- I am willing to make adjustments based on feedback
- Dominant language
- TypeScript
- Stars
- 113
- Forks
- 22
- Avg merge
- 10h 40m
- Merged PRs (30d)
- 13
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.
More from unraid/api
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
-
Difficulty 3/5 1-2 days Newbie friendliness 72/100
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 35/100
-
Difficulty 3/5 1-2 days Newbie friendliness 72/100
-
Difficulty 4/5 3-5 days Newbie friendliness 52/100
Similar issues
-
comp/dashboard P3 type/bug
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
NousResearch/hermes-agent#117722 ·
-
clawsweeper:fix-shape-clear clawsweeper:queueable-fix clawsweeper:source-repro impact:ux-friction issue-rating: 🦞 diamond lobster no-stale P3
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
Difficulty 1/5 Under an hour Newbie friendliness 76/100
-
code-quality refactoring
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
github/gh-aw-firewall#8816 ·
-
integration:quickjs org:external priority:backlog topic:code-interpreter topic:middleware type:feature
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
langchain-ai/deepagents#6450 ·