A modern web client for Jellyfin based on Vue.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
renovate[bot] 070b2a5f43 chore(deps): update rust crate tauri to 1.0.6 [security] 2 weeks ago
.devcontainer chore(node16): update Docker and development environment to Node 16 11 months ago
.docker refactor(docker): lint Dockerfile 9 months ago
.github feat: cancel previous unstable actions when new one comes in 1 month ago
.vscode chore: fix i18n confioguration to work in vsc 1 month ago
frontend chore(i18n): translate terms (Chinese (Simplified)) 2 weeks ago
tauri chore(deps): update rust crate tauri to 1.0.6 [security] 2 weeks ago
.dockerignore ci(docker): build the client entirely in the Docker context 9 months ago
.editorconfig feat: replace circle loader with Jellyfin-Vue logo 10 months ago
.gitattributes chore(git): add merge attributes for locale files 2 years ago
.gitignore fix(localization): remove Kiswahili from gitignore and reorder eslint config 7 months ago
.node-version ci(cf-pages): add node version for CloudFlare Pages 7 months ago
.npmrc chore(deps): update development dependencies 7 months ago
.prettierignore chore(tauri): monorepo structure for the project 7 months ago
.prettierrc feat: add initial Nuxt template 2 years ago
CONTRIBUTING.md docs: update docs regarding tests and conventional commits 5 months ago
Dockerfile fix: commit hash not being applied correctly in Dockerfile and when building from CF Pages 4 months ago
LICENSE feat: add initial Nuxt template 2 years ago
README.md docs: remove husky reference 7 months ago
codecov.yml ci(codecov): removed patch check 2 years ago
jest.config.js chore(tauri): monorepo structure for the project 7 months ago
package-lock.json chore: remove unnecessary dependencies 2 months ago
package.json chore(tauri): monorepo structure for the project 7 months ago
stylelint.config.js chore: fix lint for stylelint 14 9 months ago
vetur.config.js chore(tauri): monorepo structure for the project 7 months ago

README.md

Jellyfin Vue

Part of the Jellyfin Project


Logo Banner

Docker Pulls GHCR images
GPL 3.0 License Current Release Commitizen friendly
Donate Feature Requests Chat on Matrix Join our Subreddit

This is an experimental web client for Jellyfin based on Vue.js. 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.

View demo

Build Process

Dependencies

  • Node.js LTS >=16.13.1 <17.0.0
  • npm >=8.1.2 (included in Node.js)
  • Jellyfin Server >=10.7.0

Getting Started

  1. Clone or download this repository.

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

    npm install
    
  3. Run the web client with Nuxt as a server for local development.

    npm start
    

    The client will be available at http://127.0.0.1:3000 by default.

    Build for production

    When you're ready to deploy the client, you must build the client specifically production:

    npm run build
    

    Build output will be available under the src/dist folder.

Other build features

Running a production build

Instead of a development version, you can run a server with a production-ready build of the client directly with Nuxt, so you can verify in advance how the client will work in a production environment:

npm run prod

Although the build of the client is production-ready, Nuxt's own HTTP server should never be exposed directly to the internet and a proper hosting tool like Nginx should always be used instead.

Contributing

We provide a devcontainer to help you setup your environment.

The project also contains recommended extensions for Visual Studio Code, which will help you with syntax style and development.

Finally, we try to follow the ConventionalCommits Guidelines when writing commit messages.

For more information about how to contribute to this project, see CONTRIBUTING.md