Web Client for Jellyfin
Go to file
2023-11-09 22:32:03 +00:00
.ci Update to node 20 2023-09-27 23:50:53 -04:00
.devcontainer I hate this i hate this i hate this 2023-09-28 22:15:51 +03:00
.github Merge pull request #4970 from jellyfin/renovate/actions-setup-node-4.x 2023-11-09 15:25:49 -05:00
.vscode Add vscode configuration to fix issues on saving 2022-06-28 16:17:56 -04:00
debian Run web build script manually 2023-03-10 12:32:06 -05:00
deployment Remove more package caches from docker images 2023-10-11 16:30:30 +02:00
fedora Update to node 20 2023-09-27 23:50:53 -04:00
scripts Remove NPM prepare script 2023-03-10 12:32:06 -05:00
src Merge pull request #4919 from grafixeyehero/Add-music-view 2023-11-09 15:19:36 -05:00
.copr Run bump_version in make srpm 2021-12-13 13:01:48 -05:00
.editorconfig Fixed editorconfig spec 2020-07-21 20:19:44 +02:00
.escheckrc cleanup: formatting, escheck 2023-03-16 15:42:44 +01:00
.eslintignore Migrate navdrawer to ES6 2020-08-06 20:59:14 +02:00
.eslintrc.js chore: add jsx-no-useless-fragment rule 2023-11-09 00:53:09 -05:00
.gitattributes Add more filetypes to gitattributes 2020-04-25 15:02:42 +02:00
.gitignore Add vscode configuration to fix issues on saving 2022-06-28 16:17:56 -04:00
.npmignore Azure pipelines (#470) 2019-09-19 14:35:30 -04:00
.npmrc Use engine-strict 2022-09-30 01:20:49 -04:00
.sonarcloud.properties Exclude test files from Sonar scanning 2023-10-25 20:09:50 -04:00
.stylelintrc.json Enable Stylelint rules for vendor prefixes 2022-12-20 23:49:26 +01:00
.stylelintrc.scss.json Fix stylelint upgrade 2021-10-27 00:19:44 -04:00
babel.config.js fix: babel jassub worker 2023-03-15 12:50:02 +01:00
build.sh build.sh: Allow docker build on non debian systems 2021-09-25 22:12:45 +02:00
build.yaml Bump version to 10.8.0 for next release 2020-12-04 21:58:48 -05:00
bump_version Run bump_version in make srpm 2021-12-13 13:01:48 -05:00
CONTRIBUTORS.md chore: add grhallenbeck to contributors 2023-10-27 18:14:18 -07:00
cssnano.config.js Fix CSS fallback 2022-10-08 23:45:54 +03:00
LICENSE First separation commit. 2019-01-09 12:36:54 +01:00
package-lock.json Update dependency marked to v9 2023-11-09 22:32:03 +00:00
package.json Update dependency marked to v9 2023-11-09 22:32:03 +00:00
postcss.config.js Fix eslint issues 2023-03-29 00:38:22 -04:00
README.md Update README 2023-09-29 16:55:45 -04:00
tsconfig.json Add support for absolute imports 2023-05-02 16:44:07 -04:00
vite.config.ts Add jsdom lib for testing DOM related functionality 2023-10-25 20:09:47 -04:00
webpack.analyze.js Add webpack config for analyzing builds and improve ts speed 2023-09-12 12:54:50 -04:00
webpack.common.js Add serviceworker webpack entry point 2023-10-25 22:25:24 +02:00
webpack.dev.js Only allow jsx in jsx/tsx files 2022-09-29 13:11:56 -04:00
webpack.prod.js Add serviceworker webpack entry point 2023-10-25 22:25:24 +02:00

Jellyfin Web

Part of the Jellyfin Project


Logo Banner

GPL 2.0 License Current Release Translation Status
Donate Feature Requests Chat on Matrix Join our Subreddit

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!

Detailed Translation Status

Build Process

Dependencies

  • Node.js
  • npm (included in Node.js)

Getting Started

  1. Clone or download this repository.

    git clone https://github.com/jellyfin/jellyfin-web.git
    cd jellyfin-web
    
  2. Install build dependencies in the project directory.

    npm install
    
  3. Run the web client with webpack for local development.

    npm start
    
  4. 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
    ├── legacy            # Polyfills for legacy browsers
    ├── libraries         # Third party libraries 🧹
    ├── 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)