mirror of
https://github.com/jellyfin/jellyfin-web.git
synced 2024-11-15 18:08:17 -07:00
Web Client for Jellyfin
6e0ad2ed1b
* Override mp3 remux container The server generally filters out invalid containers for HLS in most cases. However, MP3 is a special case because, while it is technically possible and allowed as a codec for fMP4 on the server side, most browsers do not support it. Override the remux container to force MPEG-TS for MP3. The server will still direct play MP3 in an MP3 container. This is useful for supporting universal containers like MKA. * Fix lint Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> |
||
---|---|---|
.devcontainer | ||
.github | ||
.vscode | ||
scripts | ||
src | ||
.editorconfig | ||
.escheckrc | ||
.eslintignore | ||
.eslintrc.js | ||
.gitattributes | ||
.gitignore | ||
.npmignore | ||
.npmrc | ||
.sonarcloud.properties | ||
.stylelintrc.json | ||
babel.config.js | ||
bump_version | ||
CONTRIBUTORS.md | ||
cssnano.config.js | ||
LICENSE | ||
package-lock.json | ||
package.json | ||
postcss.config.js | ||
README.md | ||
tsconfig.json | ||
vite.config.ts | ||
webpack.analyze.js | ||
webpack.common.js | ||
webpack.dev.js | ||
webpack.prod.js |
Jellyfin Web
Part of the Jellyfin Project
Jellyfin Web is the frontend used for most of the clients available for end users, such as desktop browsers, Android, and iOS. We welcome all contributions and pull requests! If you have a larger feature in mind please open an issue so we can discuss the implementation before you start. Translations can be improved very easily from our Weblate instance. Look through the following graphic to see if your native language could use some work!
Build Process
Dependencies
- Node.js
- npm (included in Node.js)
Getting Started
-
Clone or download this repository.
git clone https://github.com/jellyfin/jellyfin-web.git cd jellyfin-web
-
Install build dependencies in the project directory.
npm install
-
Run the web client with webpack for local development.
npm start
-
Build the client with sourcemaps available.
npm run build:development
Directory Structure
.
└── src
├── apps
│ ├── dashboard # Admin dashboard app layout and routes
│ ├── experimental # New experimental app layout and routes
│ └── 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 🧹
├── hooks # Custom React hooks
├── lib # Reusable libraries
│ ├── globalize # Custom localization library
│ ├── legacy # Polyfills for legacy browsers
│ ├── 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
├── styles # Common app Sass stylesheets
├── themes # CSS themes
├── types # Common TypeScript interfaces/types
└── utils # Utility functions
- 🧹 — Needs cleanup
- 🐉 — Serious mess (Here be dragons)