diff --git a/README.md b/README.md index 3ce1c1f2c8f..314bff0e01c 100644 --- a/README.md +++ b/README.md @@ -73,6 +73,10 @@ Jellyfin Web is the frontend used for most of the clients available for end user ## Directory Structure +> [!NOTE] +> We are in the process of refactoring to a [new structure](https://forum.jellyfin.org/t-proposed-update-to-the-structure-of-jellyfin-web) based on [Bulletproof React](https://github.com/alan2207/bulletproof-react/blob/master/docs/project-structure.md) architecture guidelines. +> Most new code should be organized under the appropriate app directory unless it is common/shared. + ``` . └── src @@ -82,8 +86,9 @@ Jellyfin Web is the frontend used for most of the clients available for end user │   └── stable # Classic (stable) app layout and routes ├── assets # Static assets ├── components # Higher order visual components and React components - ├── controllers # Legacy page views and controllers 🧹 - ├── elements # Basic webcomponents and React wrappers 🧹 + ├── constants # Common constant values + ├── controllers # Legacy page views and controllers 🧹 ❌ + ├── elements # Basic webcomponents and React equivalents 🧹 ├── hooks # Custom React hooks ├── lib # Reusable libraries │   ├── globalize # Custom localization library @@ -91,13 +96,14 @@ Jellyfin Web is the frontend used for most of the clients available for end user │   ├── navdrawer # Navigation drawer library for classic layout │   └── scroller # Content scrolling library ├── plugins # Client plugins - ├── scripts # Random assortment of visual components and utilities 🐉 - ├── strings # Translation files + ├── scripts # Random assortment of visual components and utilities 🐉 ❌ + ├── strings # Translation files (only commit changes to en-us.json) ├── styles # Common app Sass stylesheets ├── themes # CSS themes ├── types # Common TypeScript interfaces/types └── utils # Utility functions ``` +- ❌ — Deprecated, do **not** create new files here - 🧹 — Needs cleanup - 🐉 — Serious mess (Here be dragons)