A modern web client for Jellyfin based on Vue
Go to file
Julien Machiels 810341e897
Merge pull request #793 from jellyfin/dependabot/npm_and_yarn/nuxt-i18n-6.20.3
fix(deps): bump nuxt-i18n from 6.20.1 to 6.20.3
2021-02-26 22:58:38 +01:00
.devcontainer fix(devcontainer): move to suggested extensions, switch default shell to zsh 2020-09-03 18:13:14 +00:00
.docker refactor: cleanup readme and remove env variables from ssr package 2021-01-23 14:43:15 +01:00
.github fix(deps): bump actions/setup-node from v2.1.4 to v2.1.5 2021-02-26 16:05:28 +00:00
.husky chore(husky): fix husky hook permissions and command 2021-02-13 12:50:13 +01:00
.run feat(.run): add WebStorm run configurations 2020-09-02 22:30:42 +02:00
.vscode fix: recommended extensions 2021-01-27 21:47:26 +01:00
assets feat(usercard): convert to a button 2021-02-12 15:22:13 +01:00
components Merge pull request #782 from themegaphoenix/addAttributes 2021-02-24 13:02:46 +01:00
layouts refactor(default layout): add typings for subscribe function in default layout 2021-02-10 19:40:46 +00:00
locales Translated using Weblate (Slovenian) 2021-02-25 18:20:33 -05:00
middleware refactor: address review comments 2021-01-26 19:41:58 +01:00
mixins feat: handle fallbacks in blurhashimage 2021-02-12 14:27:47 +01:00
pages fix(login): fix bugged redirection when auto reconnecting to offline server 2021-02-24 15:59:37 +01:00
plugins chore: replace ts-ignore with ts-expect-error 2021-02-15 23:26:43 +01:00
schemes fix(logout): fix logout failing if a base url is not set 2021-02-09 09:37:25 +00:00
static feat: add initial Nuxt template 2020-09-02 20:48:53 +02:00
store Merge pull request #759 from jellyfin/playback-fix 2021-02-25 20:25:50 +01:00
utils Merge pull request #741 from jellyfin/miss-test 2021-02-15 17:56:29 -05:00
.babelrc feat: add initial Nuxt template 2020-09-02 20:48:53 +02:00
.editorconfig feat: add initial Nuxt template 2020-09-02 20:48:53 +02:00
.eslintignore build(eslint): add more files to eslintignore 2020-09-04 17:23:18 +02:00
.eslintrc.js chore: disable void html elements erroring on self-close 2021-02-10 18:56:45 +01:00
.gitattributes chore(git): add merge attributes for locale files 2020-11-17 19:11:40 +01:00
.gitignore feat: add initial Nuxt template 2020-09-02 20:48:53 +02:00
.prettierrc feat: add initial Nuxt template 2020-09-02 20:48:53 +02:00
.yarnrc refactor: address review comments 2021-02-24 01:00:49 +01:00
codecov.yml ci(codecov): add configuration file 2021-02-09 18:51:37 +00:00
commitlint.config.js feat: add initial Nuxt template 2020-09-02 20:48:53 +02:00
CONTRIBUTING.md chore: improve readme and add contributing guide 2020-10-20 19:57:43 +02:00
Dockerfile refactor: address review comments 2021-02-24 01:00:49 +01:00
Dockerfile.static refactor: address review comments 2021-02-24 01:00:49 +01:00
jest.config.js test(jest config): add missing directories to collect coverage from 2021-02-04 00:19:13 +00:00
jest.setup.ts test(like button): add tests for like button 2021-02-04 18:42:52 +00:00
LICENSE feat: add initial Nuxt template 2020-09-02 20:48:53 +02:00
nuxt-i18n.d.ts refactor: override typings for $t and remove string casting 2021-01-02 15:55:37 +01:00
nuxt.config.ts fix: build with nuxt 2.15 2021-02-22 11:10:15 +01:00
package.json fix(deps): bump nuxt-i18n from 6.20.1 to 6.20.3 2021-02-26 21:52:56 +00:00
README.md build: build ssr by default 2021-01-26 16:45:00 +01:00
stylelint.config.js feat(dark-theme): add dark theme colors 2021-01-09 11:36:43 +01:00
tsconfig.json build(tsconfig): add MediaSession API typings 2021-01-17 06:21:16 +01:00
vue-shims.d.ts refactor(login): move requests from login and server form to vuex 2020-11-29 20:59:10 +01:00
yarn.lock fix(deps): bump nuxt-i18n from 6.20.1 to 6.20.3 2021-02-26 21:52:56 +00:00

Jellyfin Vue

Part of the Jellyfin Project


Logo Banner

GPL 3.0 License Current Release Commitizen friendly
Donate Feature Requests Discuss on our Forum 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.

Requirements

This project uses Yarn as a package manager.

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

Pre-requirements

Jellyfin >=10.7.0

Build Process

# install dependencies
$ yarn install

# server with hot reload at localhost:3000
$ yarn dev

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

# build for production and launch server
$ yarn build
$ yarn start

# build for production in static mode
# you will need a web server to host the client
$ yarn build: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
$ yarn install

# build for production in standalone mode, with server-side rendering
$ yarn build --standalone

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

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