camc314 / jellyfin-vue

A modern web client for Jellyfin based on Vue.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Jellyfin Vue

Part of the Jellyfin Project


Logo Banner

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

Requirements

This project requires Node 14 and uses npm as a package manager.

You also need the following Jellyfin server version:

Jellyfin >=10.7.0

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 provide useful pre-commit hooks via Husky, as well as Comitizen integration, in order to help you respect the style and naming conventions used throughout this project.

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

Build Process

# install dependencies
$ npm install

# server with hot reload at localhost:3000
$ npm run dev

# serve with hot reload in static mode at localhost:3000
$ npm run dev:static

# build for production
$ npm run build
# launch server
$ npm run start

# build for production and launch server
$ npm run prod

# build for production in static mode
# you will need a web server to host the client
$ npm run build:static

# build for production in static mode and run server
$ npm run prod:static

Running standalone

When using the SSR version of the client, you can run the client in standalone mode in order to save space.

# install dependencies
$ npm install

# build for production in standalone mode, with server-side rendering
$ npm run build:standalone

# move the server and required files to a dedicated directory
$ mkdir -p /opt/jellyfin-vue
$ cp -r .nuxt .docker/nuxt.config.js .docker/package.json /opt/jellyfin-vue

# install the required dependency and start the client
$ cd /opt/jellyfin-vue
$ npm install
$ npm run start

About

A modern web client for Jellyfin based on Vue.

License:GNU General Public License v3.0


Languages

Language:Vue 54.1%Language:TypeScript 43.4%Language:SCSS 1.1%Language:JavaScript 1.0%Language:Dockerfile 0.3%Language:Shell 0.0%