diff --git a/.dockerignore b/.dockerignore index 0cfd62077..9a359354e 100644 --- a/.dockerignore +++ b/.dockerignore @@ -47,7 +47,7 @@ htmlcov *.swo # npm -front/node_modules/ +app/node_modules/ # Compass .sass-cache diff --git a/.env.example b/.env.example index 49112eadd..327e95896 100644 --- a/.env.example +++ b/.env.example @@ -50,8 +50,8 @@ NGINX_MAX_BODY_SIZE=10G FUNKWHALE_API_HOST=api FUNKWHALE_API_PORT=5000 -FUNKWHALE_FRONT_HOST=app -FUNKWHALE_FRONT_PORT=${VUE_PORT} +FUNKWHALE_APP_HOST=app +FUNKWHALE_APP_PORT=${VUE_PORT} # postgres diff --git a/.gitignore b/.gitignore index 1841c3ba9..0614449de 100644 --- a/.gitignore +++ b/.gitignore @@ -50,7 +50,7 @@ report.xml *.swo # npm -front/node_modules/ +app/node_modules/ # Compass .sass-cache @@ -80,30 +80,30 @@ api/celerybeat-* # Front oldfront/node_modules/ -front/static/translations -front/node_modules/ -front/dist/ -front/dev-dist/ -front/npm-debug.log* -front/yarn-debug.log* -front/yarn-error.log* -front/tests/unit/coverage -front/tests/e2e/reports -front/test_results.xml -front/coverage/ -front/selenium-debug.log +app/static/translations +app/node_modules/ +app/dist/ +app/dev-dist/ +app/npm-debug.log* +app/yarn-debug.log* +app/yarn-error.log* +app/tests/unit/coverage +app/tests/e2e/reports +app/test_results.xml +app/coverage/ +app/selenium-debug.log # Vitepress -front/ui-docs/.vitepress/.vite -front/ui-docs/.vitepress/cache -front/ui-docs/.vitepress/dist -front/ui-docs/public +app/ui-docs/.vitepress/.vite +app/ui-docs/.vitepress/cache +app/ui-docs/.vitepress/dist +app/ui-docs/public # Docs docs/_build #Tauri -front/tauri/gen +app/tauri/gen /data/ .state diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index b30332c96..de76d1827 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -22,21 +22,21 @@ variables: FF_DISABLE_UMASK_FOR_DOCKER_EXECUTOR: 'true' .shared_caches: - # Cache for front related jobs + # Cache for app related jobs yarn_cache: &yarn_cache - key: front-yarn-$CI_COMMIT_REF_SLUG + key: app-yarn-$CI_COMMIT_REF_SLUG paths: [$YARN_CACHE_FOLDER] node_cache: &node_cache key: - prefix: front-node_modules-$CI_COMMIT_REF_SLUG - files: [front/yarn.lock] - paths: [front/node_modules] + prefix: app-node_modules-$CI_COMMIT_REF_SLUG + files: [app/yarn.lock] + paths: [app/node_modules] lint_cache: &lint_cache key: - prefix: front-lint-$CI_COMMIT_REF_SLUG + prefix: app-lint-$CI_COMMIT_REF_SLUG files: - - front/.eslintcache - - front/tsconfig.tsbuildinfo + - app/.eslintcache + - app/tsconfig.tsbuildinfo cypress_cache: &cypress_cache key: cypress-cache-$CI_COMMIT_REF_SLUG paths: @@ -85,7 +85,7 @@ stages: - build - publish -review_front: +review_app: allow_failure: true stage: review needs: [] @@ -95,29 +95,29 @@ review_front: image: $CI_REGISTRY/funkwhale/ci/node-python:18 variables: - BASE_URL: /-/$CI_PROJECT_NAME/-/jobs/$CI_JOB_ID/artifacts/front-review/ - VUE_APP_ROUTER_BASE_URL: /-/$CI_PROJECT_NAME/-/jobs/$CI_JOB_ID/artifacts/front-review/ + BASE_URL: /-/$CI_PROJECT_NAME/-/jobs/$CI_JOB_ID/artifacts/app-review/ + VUE_APP_ROUTER_BASE_URL: /-/$CI_PROJECT_NAME/-/jobs/$CI_JOB_ID/artifacts/app-review/ VUE_APP_INSTANCE_URL: https://demo.funkwhale.audio NODE_ENV: review NODE_OPTIONS: --max-old-space-size=4096 environment: - name: review/front/$CI_COMMIT_REF_NAME - url: http://$CI_PROJECT_NAMESPACE.pages.funkwhale.audio/-/$CI_PROJECT_NAME/-/jobs/$CI_JOB_ID/artifacts/front-review/index.html + name: review/app/$CI_COMMIT_REF_NAME + url: http://$CI_PROJECT_NAMESPACE.pages.funkwhale.audio/-/$CI_PROJECT_NAME/-/jobs/$CI_JOB_ID/artifacts/app-review/index.html cache: - *yarn_cache - *node_cache - *lint_cache before_script: - - mkdir front-review - - cd front + - mkdir app-review + - cd app - yarn install --frozen-lockfile script: - yarn run build --base ./ - - cp -r dist/* ../front-review + - cp -r dist/* ../app-review artifacts: expire_in: 2 weeks paths: - - front-review + - app-review review_docs: allow_failure: true @@ -193,12 +193,12 @@ lint_api: script: - make lint -lint_front: +lint_app: stage: lint needs: [] rules: - if: $CI_COMMIT_BRANCH =~ /(stable|develop)/ - - changes: [front/**/*] + - changes: [app/**/*] image: $CI_REGISTRY/funkwhale/ci/node-python:18 cache: @@ -206,7 +206,7 @@ lint_front: - *node_cache - *lint_cache before_script: - - cd front + - cd app - yarn install --frozen-lockfile script: - yarn lint @@ -280,13 +280,13 @@ test_api: path: api/coverage.xml coverage: '/TOTAL\s*\d*\s*\d*\s*(\d*%)/' -test_front: +test_app: stage: test needs: - - job: lint_front + - job: lint_app rules: - if: $CI_COMMIT_BRANCH =~ /(stable|develop)/ - - changes: [front/**/*] + - changes: [app/**/*] image: $CI_REGISTRY/funkwhale/ci/node-python:18 cache: @@ -294,16 +294,16 @@ test_front: - *node_cache - *lint_cache before_script: - - cd front + - cd app - yarn install --frozen-lockfile script: - yarn test:unit artifacts: reports: - junit: front/test_results.xml + junit: app/test_results.xml coverage_report: coverage_format: cobertura - path: front/coverage/cobertura-coverage.xml + path: app/coverage/cobertura-coverage.xml coverage: '/All files\s+(?:\|\s+((?:\d+\.)?\d+)\s+){4}.*/' build_metadata: @@ -321,7 +321,7 @@ build_metadata: paths: - docker-bake.json - docker-bake.api.json - - docker-bake.front.json + - docker-bake.app.json test_integration: stage: test @@ -339,7 +339,7 @@ test_integration: - *cypress_cache before_script: - - cd front + - cd app - yarn install script: - yarn run cypress run @@ -404,16 +404,16 @@ build_docs: paths: - public -build_front: +build_app: stage: build needs: - # The test_front job is currently disabled - # - job: test_front - - job: lint_front + # The test_app job is currently disabled + # - job: test_app + - job: lint_app optional: true rules: - if: $CI_COMMIT_BRANCH =~ /(stable|develop)/ - - changes: [front/**/*] + - changes: [app/**/*] image: $CI_REGISTRY/funkwhale/ci/node-python:18 variables: @@ -424,14 +424,14 @@ build_front: - *node_cache - *lint_cache before_script: - - cd front + - cd app - yarn install --frozen-lockfile script: - yarn run build:deployment artifacts: - name: front_${CI_COMMIT_REF_NAME} + name: app_${CI_COMMIT_REF_NAME} paths: - - front/dist + - app/dist build_api: stage: build @@ -460,7 +460,7 @@ build_api: # stage: build # rules: # - if: $CI_COMMIT_BRANCH =~ /(stable|develop)/ -# - changes: [front/**/*] +# - changes: [app/**/*] # image: $CI_REGISTRY/funkwhale/ci/node-tauri:18 # variables: @@ -473,7 +473,7 @@ build_api: # artifacts: # name: desktop_${CI_COMMIT_REF_NAME} # paths: -# - front/tauri/target/release/bundle/appimage/*.AppImage +# - app/tauri/target/release/bundle/appimage/*.AppImage deploy_docs: interruptible: false @@ -500,7 +500,7 @@ docker: artifacts: true - job: test_api optional: true - - job: test_front + - job: test_app optional: true rules: - if: $CI_COMMIT_TAG @@ -562,7 +562,7 @@ package: artifacts: true - job: build_api artifacts: true - - job: build_front + - job: build_app artifacts: true # - job: build_tauri # artifacts: true diff --git a/.gitlab/renovate.json b/.gitlab/renovate.json index a2f7ac64a..56d9e9c6e 100644 --- a/.gitlab/renovate.json +++ b/.gitlab/renovate.json @@ -16,7 +16,7 @@ "ignoreDeps": ["$CI_REGISTRY/funkwhale/backend-test-docker"], "packageRules": [ { - "matchFileNames": ["api/*", "front/*", "docs/*"], + "matchFileNames": ["api/*", "app/*", "docs/*"], "additionalBranchPrefix": "{{parentDir}}-", "semanticCommitScope": "{{parentDir}}" }, diff --git a/.gitpod.yml b/.gitpod.yml index 993afaf10..3752c309e 100644 --- a/.gitpod.yml +++ b/.gitpod.yml @@ -40,10 +40,10 @@ tasks: gp ports await 5000 poetry run celery -A funkwhale_api.taskapp worker -l debug -B --concurrency=0 - - name: Frontend + - name: App env: VUE_EDITOR: code - before: cd front + before: cd app init: | yarn install command: yarn dev --host 0.0.0.0 --base ./ @@ -98,7 +98,7 @@ ports: visibility: private onOpen: ignore - - name: Frontend + - name: App port: 8080 visibility: private onOpen: ignore diff --git a/.gitpod/docker-compose.yml b/.gitpod/docker-compose.yml index acd09c9cf..cec549e28 100644 --- a/.gitpod/docker-compose.yml +++ b/.gitpod/docker-compose.yml @@ -30,8 +30,8 @@ services: - 'FUNKWHALE_API_IP=host.docker.internal' - 'FUNKWHALE_API_HOST=host.docker.internal' - 'FUNKWHALE_API_PORT=5000' - - 'FUNKWHALE_FRONT_IP=host.docker.internal' - - 'FUNKWHALE_FRONT_PORT=8080' + - 'FUNKWHALE_APP_HOST=host.docker.internal' + - 'FUNKWHALE_APP_PORT=8080' - 'FUNKWHALE_HOSTNAME=${FUNKWHALE_HOSTNAME-host.docker.internal}' - 'FUNKWHALE_PROTOCOL=https' volumes: @@ -40,4 +40,4 @@ services: - ../data/staticfiles:/usr/share/nginx/html/staticfiles/:ro - ../deploy/funkwhale_proxy.conf:/etc/nginx/funkwhale_proxy.conf:ro - ../docker/nginx/conf.dev:/etc/nginx/templates/default.conf.template:ro - - ../front:/frontend:ro + - ../app:/funkwhale-app:ro diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 4abd55f3f..cb2f7a8a9 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -10,7 +10,7 @@ repos: (?x)( ^api/funkwhale_api/common/schema.yml| ^api/tests/music/test_coverart.ogg| - ^front/src/generated/types.ts + ^app/src/generated/types.ts ) - id: check-case-conflict diff --git a/.yarnrc b/.yarnrc index 723d87649..979f03620 100644 --- a/.yarnrc +++ b/.yarnrc @@ -1,2 +1,2 @@ ---cwd front +--cwd app --add.exact true diff --git a/Makefile b/Makefile index 55096db77..1a78a1c97 100644 --- a/Makefile +++ b/Makefile @@ -4,7 +4,7 @@ CPU_CORES := $(shell N=$$(nproc); echo $$(( $$N > 4 ? 4 : $$N ))) BAKE_FILES = \ docker-bake.json \ docker-bake.api.json \ - docker-bake.front.json + docker-bake.app.json docker-bake.%.json: ./scripts/build_metadata.py --format bake --bake-target $* --bake-image docker.io/funkwhale/$* > $@ @@ -39,19 +39,19 @@ package: zip -q 'funkwhale-api.zip' -r api && \ rm -Rf api - tar --create --gunzip --file='$(BUILD_DIR)/funkwhale-front.tar.gz' \ + tar --create --gunzip --file='$(BUILD_DIR)/funkwhale-app.tar.gz' \ --owner='root' \ --group='root' \ --exclude-vcs \ - --transform='s/^front\/dist/front/' \ - front/dist + --transform='s/^app\/dist/app/' \ + app/dist cd '$(BUILD_DIR)' && \ - tar --extract --gunzip --file='funkwhale-front.tar.gz' && \ - zip -q 'funkwhale-front.zip' -r front && \ - rm -Rf front + tar --extract --gunzip --file='funkwhale-app.tar.gz' && \ + zip -q 'funkwhale-app.zip' -r app && \ + rm -Rf app # cd '$(BUILD_DIR)' && \ - # cp ../front/tauri/target/release/bundle/appimage/funkwhale_*.AppImage FunkwhaleDesktop.AppImage + # cp ../app/tauri/target/release/bundle/appimage/funkwhale_*.AppImage FunkwhaleDesktop.AppImage cd '$(BUILD_DIR)' && sha256sum * > SHA256SUMS diff --git a/README.md b/README.md index 2400701de..041d505e7 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Funkwhale -[![The Funkwhale logo](./front/src/assets/logo/logo-full-500.png)](https://funkwhale.audio) +[![The Funkwhale logo](./app/src/assets/logo/logo-full-500.png)](https://funkwhale.audio) Funkwhale is a platform for uploading, sharing, and publishing audio content across the federated web. Curate your music library, listen to podcasts, or create your own content and share it with the world. diff --git a/api/config/settings/common.py b/api/config/settings/common.py index 814f3f169..e282e8689 100644 --- a/api/config/settings/common.py +++ b/api/config/settings/common.py @@ -189,7 +189,7 @@ If a URL is specified, the index.html file will be fetched through HTTP. If a path is provided, it will be accessed from disk. -Use something like ``/srv/funkwhale/front/dist/`` if the web processes shows +Use something like ``/srv/funkwhale/app/dist/`` if the web processes shows request errors related to this. """ diff --git a/api/funkwhale_api/moderation/serializers.py b/api/funkwhale_api/moderation/serializers.py index ca81f2d8b..def5dd006 100644 --- a/api/funkwhale_api/moderation/serializers.py +++ b/api/funkwhale_api/moderation/serializers.py @@ -273,7 +273,7 @@ def get_target_state(target): state = target_state_serializer(target).data # freeze target type/id in JSON so even if the corresponding object is deleted - # we can have the info and display it in the frontend + # we can have the info and display it in the app target_data = TARGET_FIELD.to_representation(target) state["_target"] = json.loads(json.dumps(target_data, cls=DjangoJSONEncoder)) diff --git a/front/.dockerignore b/app/.dockerignore similarity index 100% rename from front/.dockerignore rename to app/.dockerignore diff --git a/front/.eslintrc.cjs b/app/.eslintrc.cjs similarity index 100% rename from front/.eslintrc.cjs rename to app/.eslintrc.cjs diff --git a/front/.gitignore b/app/.gitignore similarity index 97% rename from front/.gitignore rename to app/.gitignore index 1b65e24b7..f9a5ebea2 100644 --- a/front/.gitignore +++ b/app/.gitignore @@ -1,6 +1,7 @@ .DS_Store node_modules /dist +.vite # local env files .env.local diff --git a/front/Dockerfile b/app/Dockerfile similarity index 100% rename from front/Dockerfile rename to app/Dockerfile diff --git a/front/Dockerfile.dev b/app/Dockerfile.dev similarity index 100% rename from front/Dockerfile.dev rename to app/Dockerfile.dev diff --git a/front/README.md b/app/README.md similarity index 88% rename from front/README.md rename to app/README.md index 682829543..79be8440f 100644 --- a/front/README.md +++ b/app/README.md @@ -1,3 +1,3 @@ -# Funkwhale Frontend +# Funkwhale App Please follow the instructions in [Set up your development environment — funkwhale 1.4.0 documentation](https://docs.funkwhale.audio/developer/setup/index.html). diff --git a/front/cypress.config.ts b/app/cypress.config.ts similarity index 100% rename from front/cypress.config.ts rename to app/cypress.config.ts diff --git a/front/cypress/cypress.d.ts b/app/cypress/cypress.d.ts similarity index 100% rename from front/cypress/cypress.d.ts rename to app/cypress/cypress.d.ts diff --git a/front/cypress/e2e/favorite.cy.ts b/app/cypress/e2e/favorite.cy.ts similarity index 100% rename from front/cypress/e2e/favorite.cy.ts rename to app/cypress/e2e/favorite.cy.ts diff --git a/front/cypress/e2e/login.cy.ts b/app/cypress/e2e/login.cy.ts similarity index 100% rename from front/cypress/e2e/login.cy.ts rename to app/cypress/e2e/login.cy.ts diff --git a/front/cypress/fixtures/testuser.json b/app/cypress/fixtures/testuser.json similarity index 100% rename from front/cypress/fixtures/testuser.json rename to app/cypress/fixtures/testuser.json diff --git a/front/cypress/support/commands.ts b/app/cypress/support/commands.ts similarity index 100% rename from front/cypress/support/commands.ts rename to app/cypress/support/commands.ts diff --git a/front/cypress/support/e2e.ts b/app/cypress/support/e2e.ts similarity index 100% rename from front/cypress/support/e2e.ts rename to app/cypress/support/e2e.ts diff --git a/front/cypress/tsconfig.json b/app/cypress/tsconfig.json similarity index 100% rename from front/cypress/tsconfig.json rename to app/cypress/tsconfig.json diff --git a/front/docker/entrypoint.sh b/app/docker/entrypoint.sh similarity index 100% rename from front/docker/entrypoint.sh rename to app/docker/entrypoint.sh diff --git a/front/docker/funkwhale.conf.template b/app/docker/funkwhale.conf.template similarity index 99% rename from front/docker/funkwhale.conf.template rename to app/docker/funkwhale.conf.template index b7081f56d..c1d367f70 100644 --- a/front/docker/funkwhale.conf.template +++ b/app/docker/funkwhale.conf.template @@ -88,7 +88,7 @@ server { try_files $uri $uri/ /index.html; } - location ~ "/(front/)?embed.html" { + location ~ "/(app/)?embed.html" { alias /usr/share/nginx/html/embed.html; add_header Content-Security-Policy "connect-src https: http: 'self'; default-src 'self'; script-src 'self' unpkg.com 'unsafe-inline' 'unsafe-eval'; style-src https: http: 'self' 'unsafe-inline'; img-src https: http: 'self' data:; font-src https: http: 'self' data:; object-src 'none'; media-src https: http: 'self' data:"; add_header Referrer-Policy "strict-origin-when-cross-origin"; diff --git a/front/docker/funkwhale_proxy.conf b/app/docker/funkwhale_proxy.conf similarity index 100% rename from front/docker/funkwhale_proxy.conf rename to app/docker/funkwhale_proxy.conf diff --git a/front/index.html b/app/index.html similarity index 100% rename from front/index.html rename to app/index.html diff --git a/front/package.json b/app/package.json similarity index 98% rename from front/package.json rename to app/package.json index 4b5ce2a36..938f13212 100644 --- a/front/package.json +++ b/app/package.json @@ -1,9 +1,9 @@ { - "name": "front", - "version": "0.1.0", + "name": "funkwhale-app", + "version": "2.0.0-rc0", "type": "module", "private": true, - "description": "Funkwhale front-end", + "description": "Funkwhale app", "author": "Funkwhale Collective ", "scripts": { "dev": "vite", diff --git a/front/public/android-chrome-192x192.png b/app/public/android-chrome-192x192.png similarity index 100% rename from front/public/android-chrome-192x192.png rename to app/public/android-chrome-192x192.png diff --git a/front/public/android-chrome-512x512.png b/app/public/android-chrome-512x512.png similarity index 100% rename from front/public/android-chrome-512x512.png rename to app/public/android-chrome-512x512.png diff --git a/front/public/apple-touch-icon.png b/app/public/apple-touch-icon.png similarity index 100% rename from front/public/apple-touch-icon.png rename to app/public/apple-touch-icon.png diff --git a/front/public/browserconfig.xml b/app/public/browserconfig.xml similarity index 100% rename from front/public/browserconfig.xml rename to app/public/browserconfig.xml diff --git a/front/public/custom.css b/app/public/custom.css similarity index 100% rename from front/public/custom.css rename to app/public/custom.css diff --git a/front/public/embed-default-cover.jpeg b/app/public/embed-default-cover.jpeg similarity index 100% rename from front/public/embed-default-cover.jpeg rename to app/public/embed-default-cover.jpeg diff --git a/front/public/embed.css b/app/public/embed.css similarity index 100% rename from front/public/embed.css rename to app/public/embed.css diff --git a/front/public/embed.html b/app/public/embed.html similarity index 100% rename from front/public/embed.html rename to app/public/embed.html diff --git a/front/public/favicon-16x16.png b/app/public/favicon-16x16.png similarity index 100% rename from front/public/favicon-16x16.png rename to app/public/favicon-16x16.png diff --git a/front/public/favicon-32x32.png b/app/public/favicon-32x32.png similarity index 100% rename from front/public/favicon-32x32.png rename to app/public/favicon-32x32.png diff --git a/front/public/favicon.ico b/app/public/favicon.ico similarity index 100% rename from front/public/favicon.ico rename to app/public/favicon.ico diff --git a/front/public/logo-white.svg b/app/public/logo-white.svg similarity index 100% rename from front/public/logo-white.svg rename to app/public/logo-white.svg diff --git a/front/public/mstile-144x144.png b/app/public/mstile-144x144.png similarity index 100% rename from front/public/mstile-144x144.png rename to app/public/mstile-144x144.png diff --git a/front/public/mstile-150x150.png b/app/public/mstile-150x150.png similarity index 100% rename from front/public/mstile-150x150.png rename to app/public/mstile-150x150.png diff --git a/front/public/mstile-310x150.png b/app/public/mstile-310x150.png similarity index 100% rename from front/public/mstile-310x150.png rename to app/public/mstile-310x150.png diff --git a/front/public/mstile-310x310.png b/app/public/mstile-310x310.png similarity index 100% rename from front/public/mstile-310x310.png rename to app/public/mstile-310x310.png diff --git a/front/public/mstile-70x70.png b/app/public/mstile-70x70.png similarity index 100% rename from front/public/mstile-70x70.png rename to app/public/mstile-70x70.png diff --git a/front/public/robots.txt b/app/public/robots.txt similarity index 100% rename from front/public/robots.txt rename to app/public/robots.txt diff --git a/front/public/safari-pinned-tab.svg b/app/public/safari-pinned-tab.svg similarity index 100% rename from front/public/safari-pinned-tab.svg rename to app/public/safari-pinned-tab.svg diff --git a/front/public/settings.json b/app/public/settings.json similarity index 100% rename from front/public/settings.json rename to app/public/settings.json diff --git a/front/pwa-manifest.json b/app/pwa-manifest.json similarity index 100% rename from front/pwa-manifest.json rename to app/pwa-manifest.json diff --git a/front/scripts/contextualize.py b/app/scripts/contextualize.py similarity index 100% rename from front/scripts/contextualize.py rename to app/scripts/contextualize.py diff --git a/front/src/App.vue b/app/src/App.vue similarity index 100% rename from front/src/App.vue rename to app/src/App.vue diff --git a/front/src/api/index.ts b/app/src/api/index.ts similarity index 100% rename from front/src/api/index.ts rename to app/src/api/index.ts diff --git a/front/src/api/player.ts b/app/src/api/player.ts similarity index 100% rename from front/src/api/player.ts rename to app/src/api/player.ts diff --git a/front/src/assets/audio/default-cover.png b/app/src/assets/audio/default-cover.png similarity index 100% rename from front/src/assets/audio/default-cover.png rename to app/src/assets/audio/default-cover.png diff --git a/front/src/assets/logo/License.md b/app/src/assets/logo/License.md similarity index 100% rename from front/src/assets/logo/License.md rename to app/src/assets/logo/License.md diff --git a/front/src/assets/logo/logo-full-500-white.png b/app/src/assets/logo/logo-full-500-white.png similarity index 100% rename from front/src/assets/logo/logo-full-500-white.png rename to app/src/assets/logo/logo-full-500-white.png diff --git a/front/src/assets/logo/logo-full-500.png b/app/src/assets/logo/logo-full-500.png similarity index 100% rename from front/src/assets/logo/logo-full-500.png rename to app/src/assets/logo/logo-full-500.png diff --git a/front/src/assets/logo/logo.png b/app/src/assets/logo/logo.png similarity index 100% rename from front/src/assets/logo/logo.png rename to app/src/assets/logo/logo.png diff --git a/front/src/assets/logo/logo.svg b/app/src/assets/logo/logo.svg similarity index 100% rename from front/src/assets/logo/logo.svg rename to app/src/assets/logo/logo.svg diff --git a/front/src/assets/logo/text-white.svg b/app/src/assets/logo/text-white.svg similarity index 100% rename from front/src/assets/logo/text-white.svg rename to app/src/assets/logo/text-white.svg diff --git a/front/src/assets/logo/text.svg b/app/src/assets/logo/text.svg similarity index 100% rename from front/src/assets/logo/text.svg rename to app/src/assets/logo/text.svg diff --git a/front/src/assets/network.png b/app/src/assets/network.png similarity index 100% rename from front/src/assets/network.png rename to app/src/assets/network.png diff --git a/front/src/components/About.vue b/app/src/components/About.vue similarity index 100% rename from front/src/components/About.vue rename to app/src/components/About.vue diff --git a/front/src/components/AboutPod.vue b/app/src/components/AboutPod.vue similarity index 100% rename from front/src/components/AboutPod.vue rename to app/src/components/AboutPod.vue diff --git a/front/src/components/Home.vue b/app/src/components/Home.vue similarity index 100% rename from front/src/components/Home.vue rename to app/src/components/Home.vue diff --git a/front/src/components/Logo.vue b/app/src/components/Logo.vue similarity index 100% rename from front/src/components/Logo.vue rename to app/src/components/Logo.vue diff --git a/front/src/components/LogoText.vue b/app/src/components/LogoText.vue similarity index 100% rename from front/src/components/LogoText.vue rename to app/src/components/LogoText.vue diff --git a/front/src/components/PageNotFound.vue b/app/src/components/PageNotFound.vue similarity index 100% rename from front/src/components/PageNotFound.vue rename to app/src/components/PageNotFound.vue diff --git a/front/src/components/Queue.vue b/app/src/components/Queue.vue similarity index 100% rename from front/src/components/Queue.vue rename to app/src/components/Queue.vue diff --git a/front/src/components/QueueItem.vue b/app/src/components/QueueItem.vue similarity index 100% rename from front/src/components/QueueItem.vue rename to app/src/components/QueueItem.vue diff --git a/front/src/components/RemoteSearchForm.vue b/app/src/components/RemoteSearchForm.vue similarity index 100% rename from front/src/components/RemoteSearchForm.vue rename to app/src/components/RemoteSearchForm.vue diff --git a/front/src/components/SanitizedHtml.vue b/app/src/components/SanitizedHtml.vue similarity index 100% rename from front/src/components/SanitizedHtml.vue rename to app/src/components/SanitizedHtml.vue diff --git a/front/src/components/ServiceMessages.vue b/app/src/components/ServiceMessages.vue similarity index 100% rename from front/src/components/ServiceMessages.vue rename to app/src/components/ServiceMessages.vue diff --git a/front/src/components/SetInstanceModal.vue b/app/src/components/SetInstanceModal.vue similarity index 100% rename from front/src/components/SetInstanceModal.vue rename to app/src/components/SetInstanceModal.vue diff --git a/front/src/components/admin/SettingsGroup.vue b/app/src/components/admin/SettingsGroup.vue similarity index 100% rename from front/src/components/admin/SettingsGroup.vue rename to app/src/components/admin/SettingsGroup.vue diff --git a/front/src/components/admin/SignupFormBuilder.vue b/app/src/components/admin/SignupFormBuilder.vue similarity index 100% rename from front/src/components/admin/SignupFormBuilder.vue rename to app/src/components/admin/SignupFormBuilder.vue diff --git a/front/src/components/album/Card.vue b/app/src/components/album/Card.vue similarity index 100% rename from front/src/components/album/Card.vue rename to app/src/components/album/Card.vue diff --git a/front/src/components/album/Widget.vue b/app/src/components/album/Widget.vue similarity index 100% rename from front/src/components/album/Widget.vue rename to app/src/components/album/Widget.vue diff --git a/front/src/components/artist/Card.vue b/app/src/components/artist/Card.vue similarity index 100% rename from front/src/components/artist/Card.vue rename to app/src/components/artist/Card.vue diff --git a/front/src/components/artist/Widget.vue b/app/src/components/artist/Widget.vue similarity index 100% rename from front/src/components/artist/Widget.vue rename to app/src/components/artist/Widget.vue diff --git a/front/src/components/audio/ArtistCreditLabel.vue b/app/src/components/audio/ArtistCreditLabel.vue similarity index 100% rename from front/src/components/audio/ArtistCreditLabel.vue rename to app/src/components/audio/ArtistCreditLabel.vue diff --git a/front/src/components/audio/ArtistLabel.vue b/app/src/components/audio/ArtistLabel.vue similarity index 100% rename from front/src/components/audio/ArtistLabel.vue rename to app/src/components/audio/ArtistLabel.vue diff --git a/front/src/components/audio/ChannelCard.vue b/app/src/components/audio/ChannelCard.vue similarity index 100% rename from front/src/components/audio/ChannelCard.vue rename to app/src/components/audio/ChannelCard.vue diff --git a/front/src/components/audio/ChannelEntries.vue b/app/src/components/audio/ChannelEntries.vue similarity index 100% rename from front/src/components/audio/ChannelEntries.vue rename to app/src/components/audio/ChannelEntries.vue diff --git a/front/src/components/audio/ChannelEntryCard.vue b/app/src/components/audio/ChannelEntryCard.vue similarity index 100% rename from front/src/components/audio/ChannelEntryCard.vue rename to app/src/components/audio/ChannelEntryCard.vue diff --git a/front/src/components/audio/ChannelForm.vue b/app/src/components/audio/ChannelForm.vue similarity index 100% rename from front/src/components/audio/ChannelForm.vue rename to app/src/components/audio/ChannelForm.vue diff --git a/front/src/components/audio/ChannelSerieCard.vue b/app/src/components/audio/ChannelSerieCard.vue similarity index 100% rename from front/src/components/audio/ChannelSerieCard.vue rename to app/src/components/audio/ChannelSerieCard.vue diff --git a/front/src/components/audio/ChannelSeries.vue b/app/src/components/audio/ChannelSeries.vue similarity index 100% rename from front/src/components/audio/ChannelSeries.vue rename to app/src/components/audio/ChannelSeries.vue diff --git a/front/src/components/audio/ChannelsWidget.vue b/app/src/components/audio/ChannelsWidget.vue similarity index 100% rename from front/src/components/audio/ChannelsWidget.vue rename to app/src/components/audio/ChannelsWidget.vue diff --git a/front/src/components/audio/EmbedWizard.vue b/app/src/components/audio/EmbedWizard.vue similarity index 100% rename from front/src/components/audio/EmbedWizard.vue rename to app/src/components/audio/EmbedWizard.vue diff --git a/front/src/components/audio/LibraryFollowButton.vue b/app/src/components/audio/LibraryFollowButton.vue similarity index 100% rename from front/src/components/audio/LibraryFollowButton.vue rename to app/src/components/audio/LibraryFollowButton.vue diff --git a/front/src/components/audio/PlayButton.vue b/app/src/components/audio/PlayButton.vue similarity index 100% rename from front/src/components/audio/PlayButton.vue rename to app/src/components/audio/PlayButton.vue diff --git a/front/src/components/audio/Player.vue b/app/src/components/audio/Player.vue similarity index 100% rename from front/src/components/audio/Player.vue rename to app/src/components/audio/Player.vue diff --git a/front/src/components/audio/PlayerControls.vue b/app/src/components/audio/PlayerControls.vue similarity index 100% rename from front/src/components/audio/PlayerControls.vue rename to app/src/components/audio/PlayerControls.vue diff --git a/front/src/components/audio/Search.vue b/app/src/components/audio/Search.vue similarity index 100% rename from front/src/components/audio/Search.vue rename to app/src/components/audio/Search.vue diff --git a/front/src/components/audio/SearchBar.vue b/app/src/components/audio/SearchBar.vue similarity index 100% rename from front/src/components/audio/SearchBar.vue rename to app/src/components/audio/SearchBar.vue diff --git a/front/src/components/audio/VolumeControl.vue b/app/src/components/audio/VolumeControl.vue similarity index 100% rename from front/src/components/audio/VolumeControl.vue rename to app/src/components/audio/VolumeControl.vue diff --git a/front/src/components/audio/album/Card.vue b/app/src/components/audio/album/Card.vue similarity index 100% rename from front/src/components/audio/album/Card.vue rename to app/src/components/audio/album/Card.vue diff --git a/front/src/components/audio/artist/Card.vue b/app/src/components/audio/artist/Card.vue similarity index 100% rename from front/src/components/audio/artist/Card.vue rename to app/src/components/audio/artist/Card.vue diff --git a/front/src/components/audio/podcast/MobileRow.vue b/app/src/components/audio/podcast/MobileRow.vue similarity index 100% rename from front/src/components/audio/podcast/MobileRow.vue rename to app/src/components/audio/podcast/MobileRow.vue diff --git a/front/src/components/audio/podcast/Modal.vue b/app/src/components/audio/podcast/Modal.vue similarity index 100% rename from front/src/components/audio/podcast/Modal.vue rename to app/src/components/audio/podcast/Modal.vue diff --git a/front/src/components/audio/podcast/Row.vue b/app/src/components/audio/podcast/Row.vue similarity index 100% rename from front/src/components/audio/podcast/Row.vue rename to app/src/components/audio/podcast/Row.vue diff --git a/front/src/components/audio/podcast/Table.vue b/app/src/components/audio/podcast/Table.vue similarity index 100% rename from front/src/components/audio/podcast/Table.vue rename to app/src/components/audio/podcast/Table.vue diff --git a/front/src/components/audio/track/MobileRow.vue b/app/src/components/audio/track/MobileRow.vue similarity index 100% rename from front/src/components/audio/track/MobileRow.vue rename to app/src/components/audio/track/MobileRow.vue diff --git a/front/src/components/audio/track/Modal.vue b/app/src/components/audio/track/Modal.vue similarity index 100% rename from front/src/components/audio/track/Modal.vue rename to app/src/components/audio/track/Modal.vue diff --git a/front/src/components/audio/track/PlayIndicator.vue b/app/src/components/audio/track/PlayIndicator.vue similarity index 100% rename from front/src/components/audio/track/PlayIndicator.vue rename to app/src/components/audio/track/PlayIndicator.vue diff --git a/front/src/components/audio/track/Row.vue b/app/src/components/audio/track/Row.vue similarity index 100% rename from front/src/components/audio/track/Row.vue rename to app/src/components/audio/track/Row.vue diff --git a/front/src/components/audio/track/Table.vue b/app/src/components/audio/track/Table.vue similarity index 100% rename from front/src/components/audio/track/Table.vue rename to app/src/components/audio/track/Table.vue diff --git a/front/src/components/audio/track/Widget.vue b/app/src/components/audio/track/Widget.vue similarity index 100% rename from front/src/components/audio/track/Widget.vue rename to app/src/components/audio/track/Widget.vue diff --git a/front/src/components/audio/visualizer/MilkDrop.vue b/app/src/components/audio/visualizer/MilkDrop.vue similarity index 100% rename from front/src/components/audio/visualizer/MilkDrop.vue rename to app/src/components/audio/visualizer/MilkDrop.vue diff --git a/front/src/components/auth/ApplicationEdit.vue b/app/src/components/auth/ApplicationEdit.vue similarity index 100% rename from front/src/components/auth/ApplicationEdit.vue rename to app/src/components/auth/ApplicationEdit.vue diff --git a/front/src/components/auth/ApplicationForm.vue b/app/src/components/auth/ApplicationForm.vue similarity index 100% rename from front/src/components/auth/ApplicationForm.vue rename to app/src/components/auth/ApplicationForm.vue diff --git a/front/src/components/auth/ApplicationNew.vue b/app/src/components/auth/ApplicationNew.vue similarity index 100% rename from front/src/components/auth/ApplicationNew.vue rename to app/src/components/auth/ApplicationNew.vue diff --git a/front/src/components/auth/Authorize.vue b/app/src/components/auth/Authorize.vue similarity index 100% rename from front/src/components/auth/Authorize.vue rename to app/src/components/auth/Authorize.vue diff --git a/front/src/components/auth/LoginForm.vue b/app/src/components/auth/LoginForm.vue similarity index 100% rename from front/src/components/auth/LoginForm.vue rename to app/src/components/auth/LoginForm.vue diff --git a/front/src/components/auth/Logout.vue b/app/src/components/auth/Logout.vue similarity index 100% rename from front/src/components/auth/Logout.vue rename to app/src/components/auth/Logout.vue diff --git a/front/src/components/auth/Plugin.vue b/app/src/components/auth/Plugin.vue similarity index 100% rename from front/src/components/auth/Plugin.vue rename to app/src/components/auth/Plugin.vue diff --git a/front/src/components/auth/Settings.vue b/app/src/components/auth/Settings.vue similarity index 100% rename from front/src/components/auth/Settings.vue rename to app/src/components/auth/Settings.vue diff --git a/front/src/components/auth/SignupForm.vue b/app/src/components/auth/SignupForm.vue similarity index 100% rename from front/src/components/auth/SignupForm.vue rename to app/src/components/auth/SignupForm.vue diff --git a/front/src/components/auth/SubsonicTokenForm.vue b/app/src/components/auth/SubsonicTokenForm.vue similarity index 100% rename from front/src/components/auth/SubsonicTokenForm.vue rename to app/src/components/auth/SubsonicTokenForm.vue diff --git a/front/src/components/channels/AlbumForm.vue b/app/src/components/channels/AlbumForm.vue similarity index 100% rename from front/src/components/channels/AlbumForm.vue rename to app/src/components/channels/AlbumForm.vue diff --git a/front/src/components/channels/AlbumModal.vue b/app/src/components/channels/AlbumModal.vue similarity index 100% rename from front/src/components/channels/AlbumModal.vue rename to app/src/components/channels/AlbumModal.vue diff --git a/front/src/components/channels/AlbumSelect.vue b/app/src/components/channels/AlbumSelect.vue similarity index 100% rename from front/src/components/channels/AlbumSelect.vue rename to app/src/components/channels/AlbumSelect.vue diff --git a/front/src/components/channels/LicenseSelect.vue b/app/src/components/channels/LicenseSelect.vue similarity index 100% rename from front/src/components/channels/LicenseSelect.vue rename to app/src/components/channels/LicenseSelect.vue diff --git a/front/src/components/channels/SubscribeButton.vue b/app/src/components/channels/SubscribeButton.vue similarity index 100% rename from front/src/components/channels/SubscribeButton.vue rename to app/src/components/channels/SubscribeButton.vue diff --git a/front/src/components/channels/UploadForm.vue b/app/src/components/channels/UploadForm.vue similarity index 100% rename from front/src/components/channels/UploadForm.vue rename to app/src/components/channels/UploadForm.vue diff --git a/front/src/components/channels/UploadMetadataForm.vue b/app/src/components/channels/UploadMetadataForm.vue similarity index 100% rename from front/src/components/channels/UploadMetadataForm.vue rename to app/src/components/channels/UploadMetadataForm.vue diff --git a/front/src/components/channels/UploadModal.vue b/app/src/components/channels/UploadModal.vue similarity index 100% rename from front/src/components/channels/UploadModal.vue rename to app/src/components/channels/UploadModal.vue diff --git a/front/src/components/common/ActionFeedback.vue b/app/src/components/common/ActionFeedback.vue similarity index 100% rename from front/src/components/common/ActionFeedback.vue rename to app/src/components/common/ActionFeedback.vue diff --git a/front/src/components/common/ActionTable.vue b/app/src/components/common/ActionTable.vue similarity index 100% rename from front/src/components/common/ActionTable.vue rename to app/src/components/common/ActionTable.vue diff --git a/front/src/components/common/ActorAvatar.vue b/app/src/components/common/ActorAvatar.vue similarity index 100% rename from front/src/components/common/ActorAvatar.vue rename to app/src/components/common/ActorAvatar.vue diff --git a/front/src/components/common/ActorLink.vue b/app/src/components/common/ActorLink.vue similarity index 100% rename from front/src/components/common/ActorLink.vue rename to app/src/components/common/ActorLink.vue diff --git a/front/src/components/common/AjaxButton.vue b/app/src/components/common/AjaxButton.vue similarity index 100% rename from front/src/components/common/AjaxButton.vue rename to app/src/components/common/AjaxButton.vue diff --git a/front/src/components/common/AttachmentInput.vue b/app/src/components/common/AttachmentInput.vue similarity index 100% rename from front/src/components/common/AttachmentInput.vue rename to app/src/components/common/AttachmentInput.vue diff --git a/front/src/components/common/CollapseLink.vue b/app/src/components/common/CollapseLink.vue similarity index 100% rename from front/src/components/common/CollapseLink.vue rename to app/src/components/common/CollapseLink.vue diff --git a/front/src/components/common/ContentForm.vue b/app/src/components/common/ContentForm.vue similarity index 100% rename from front/src/components/common/ContentForm.vue rename to app/src/components/common/ContentForm.vue diff --git a/front/src/components/common/CopyInput.vue b/app/src/components/common/CopyInput.vue similarity index 100% rename from front/src/components/common/CopyInput.vue rename to app/src/components/common/CopyInput.vue diff --git a/front/src/components/common/DangerousButton.vue b/app/src/components/common/DangerousButton.vue similarity index 100% rename from front/src/components/common/DangerousButton.vue rename to app/src/components/common/DangerousButton.vue diff --git a/front/src/components/common/Duration.vue b/app/src/components/common/Duration.vue similarity index 100% rename from front/src/components/common/Duration.vue rename to app/src/components/common/Duration.vue diff --git a/front/src/components/common/EmptyState.vue b/app/src/components/common/EmptyState.vue similarity index 100% rename from front/src/components/common/EmptyState.vue rename to app/src/components/common/EmptyState.vue diff --git a/front/src/components/common/ExpandableDiv.vue b/app/src/components/common/ExpandableDiv.vue similarity index 100% rename from front/src/components/common/ExpandableDiv.vue rename to app/src/components/common/ExpandableDiv.vue diff --git a/front/src/components/common/HumanDate.vue b/app/src/components/common/HumanDate.vue similarity index 100% rename from front/src/components/common/HumanDate.vue rename to app/src/components/common/HumanDate.vue diff --git a/front/src/components/common/HumanDuration.vue b/app/src/components/common/HumanDuration.vue similarity index 100% rename from front/src/components/common/HumanDuration.vue rename to app/src/components/common/HumanDuration.vue diff --git a/front/src/components/common/InlineSearchBar.vue b/app/src/components/common/InlineSearchBar.vue similarity index 100% rename from front/src/components/common/InlineSearchBar.vue rename to app/src/components/common/InlineSearchBar.vue diff --git a/front/src/components/common/LoginModal.vue b/app/src/components/common/LoginModal.vue similarity index 100% rename from front/src/components/common/LoginModal.vue rename to app/src/components/common/LoginModal.vue diff --git a/front/src/components/common/Message.vue b/app/src/components/common/Message.vue similarity index 100% rename from front/src/components/common/Message.vue rename to app/src/components/common/Message.vue diff --git a/front/src/components/common/RenderedDescription.vue b/app/src/components/common/RenderedDescription.vue similarity index 100% rename from front/src/components/common/RenderedDescription.vue rename to app/src/components/common/RenderedDescription.vue diff --git a/front/src/components/common/Tooltip.vue b/app/src/components/common/Tooltip.vue similarity index 100% rename from front/src/components/common/Tooltip.vue rename to app/src/components/common/Tooltip.vue diff --git a/front/src/components/common/UserLink.vue b/app/src/components/common/UserLink.vue similarity index 100% rename from front/src/components/common/UserLink.vue rename to app/src/components/common/UserLink.vue diff --git a/front/src/components/common/UserMenu.vue b/app/src/components/common/UserMenu.vue similarity index 100% rename from front/src/components/common/UserMenu.vue rename to app/src/components/common/UserMenu.vue diff --git a/front/src/components/common/UserModal.vue b/app/src/components/common/UserModal.vue similarity index 100% rename from front/src/components/common/UserModal.vue rename to app/src/components/common/UserModal.vue diff --git a/front/src/components/common/Username.vue b/app/src/components/common/Username.vue similarity index 100% rename from front/src/components/common/Username.vue rename to app/src/components/common/Username.vue diff --git a/front/src/components/favorites/List.vue b/app/src/components/favorites/List.vue similarity index 100% rename from front/src/components/favorites/List.vue rename to app/src/components/favorites/List.vue diff --git a/front/src/components/favorites/TrackFavoriteIcon.vue b/app/src/components/favorites/TrackFavoriteIcon.vue similarity index 100% rename from front/src/components/favorites/TrackFavoriteIcon.vue rename to app/src/components/favorites/TrackFavoriteIcon.vue diff --git a/front/src/components/federation/FetchButton.vue b/app/src/components/federation/FetchButton.vue similarity index 100% rename from front/src/components/federation/FetchButton.vue rename to app/src/components/federation/FetchButton.vue diff --git a/front/src/components/federation/LibraryWidget.vue b/app/src/components/federation/LibraryWidget.vue similarity index 100% rename from front/src/components/federation/LibraryWidget.vue rename to app/src/components/federation/LibraryWidget.vue diff --git a/front/src/components/federation/UserFollowButton.vue b/app/src/components/federation/UserFollowButton.vue similarity index 100% rename from front/src/components/federation/UserFollowButton.vue rename to app/src/components/federation/UserFollowButton.vue diff --git a/front/src/components/forms/PasswordInput.vue b/app/src/components/forms/PasswordInput.vue similarity index 100% rename from front/src/components/forms/PasswordInput.vue rename to app/src/components/forms/PasswordInput.vue diff --git a/front/src/components/library/AlbumBase.vue b/app/src/components/library/AlbumBase.vue similarity index 100% rename from front/src/components/library/AlbumBase.vue rename to app/src/components/library/AlbumBase.vue diff --git a/front/src/components/library/AlbumDetail.vue b/app/src/components/library/AlbumDetail.vue similarity index 100% rename from front/src/components/library/AlbumDetail.vue rename to app/src/components/library/AlbumDetail.vue diff --git a/front/src/components/library/AlbumDropdown.vue b/app/src/components/library/AlbumDropdown.vue similarity index 100% rename from front/src/components/library/AlbumDropdown.vue rename to app/src/components/library/AlbumDropdown.vue diff --git a/front/src/components/library/AlbumEdit.vue b/app/src/components/library/AlbumEdit.vue similarity index 100% rename from front/src/components/library/AlbumEdit.vue rename to app/src/components/library/AlbumEdit.vue diff --git a/front/src/components/library/Albums.vue b/app/src/components/library/Albums.vue similarity index 100% rename from front/src/components/library/Albums.vue rename to app/src/components/library/Albums.vue diff --git a/front/src/components/library/ArtistBase.vue b/app/src/components/library/ArtistBase.vue similarity index 100% rename from front/src/components/library/ArtistBase.vue rename to app/src/components/library/ArtistBase.vue diff --git a/front/src/components/library/ArtistDetail.vue b/app/src/components/library/ArtistDetail.vue similarity index 100% rename from front/src/components/library/ArtistDetail.vue rename to app/src/components/library/ArtistDetail.vue diff --git a/front/src/components/library/ArtistEdit.vue b/app/src/components/library/ArtistEdit.vue similarity index 100% rename from front/src/components/library/ArtistEdit.vue rename to app/src/components/library/ArtistEdit.vue diff --git a/front/src/components/library/Artists.vue b/app/src/components/library/Artists.vue similarity index 100% rename from front/src/components/library/Artists.vue rename to app/src/components/library/Artists.vue diff --git a/front/src/components/library/EditCard.vue b/app/src/components/library/EditCard.vue similarity index 100% rename from front/src/components/library/EditCard.vue rename to app/src/components/library/EditCard.vue diff --git a/front/src/components/library/EditDetail.vue b/app/src/components/library/EditDetail.vue similarity index 100% rename from front/src/components/library/EditDetail.vue rename to app/src/components/library/EditDetail.vue diff --git a/front/src/components/library/EditForm.vue b/app/src/components/library/EditForm.vue similarity index 100% rename from front/src/components/library/EditForm.vue rename to app/src/components/library/EditForm.vue diff --git a/front/src/components/library/EditList.vue b/app/src/components/library/EditList.vue similarity index 100% rename from front/src/components/library/EditList.vue rename to app/src/components/library/EditList.vue diff --git a/front/src/components/library/FileUpload.vue b/app/src/components/library/FileUpload.vue similarity index 100% rename from front/src/components/library/FileUpload.vue rename to app/src/components/library/FileUpload.vue diff --git a/front/src/components/library/FileUploadWidget.vue b/app/src/components/library/FileUploadWidget.vue similarity index 100% rename from front/src/components/library/FileUploadWidget.vue rename to app/src/components/library/FileUploadWidget.vue diff --git a/front/src/components/library/FsBrowser.vue b/app/src/components/library/FsBrowser.vue similarity index 100% rename from front/src/components/library/FsBrowser.vue rename to app/src/components/library/FsBrowser.vue diff --git a/front/src/components/library/FsLogs.vue b/app/src/components/library/FsLogs.vue similarity index 100% rename from front/src/components/library/FsLogs.vue rename to app/src/components/library/FsLogs.vue diff --git a/front/src/components/library/Home.vue b/app/src/components/library/Home.vue similarity index 100% rename from front/src/components/library/Home.vue rename to app/src/components/library/Home.vue diff --git a/front/src/components/library/ImportStatusModal.vue b/app/src/components/library/ImportStatusModal.vue similarity index 100% rename from front/src/components/library/ImportStatusModal.vue rename to app/src/components/library/ImportStatusModal.vue diff --git a/front/src/components/library/Library.vue b/app/src/components/library/Library.vue similarity index 100% rename from front/src/components/library/Library.vue rename to app/src/components/library/Library.vue diff --git a/front/src/components/library/Podcasts.vue b/app/src/components/library/Podcasts.vue similarity index 100% rename from front/src/components/library/Podcasts.vue rename to app/src/components/library/Podcasts.vue diff --git a/front/src/components/library/Radios.vue b/app/src/components/library/Radios.vue similarity index 100% rename from front/src/components/library/Radios.vue rename to app/src/components/library/Radios.vue diff --git a/front/src/components/library/TagDetail.vue b/app/src/components/library/TagDetail.vue similarity index 100% rename from front/src/components/library/TagDetail.vue rename to app/src/components/library/TagDetail.vue diff --git a/front/src/components/library/TagsSelector.vue b/app/src/components/library/TagsSelector.vue similarity index 100% rename from front/src/components/library/TagsSelector.vue rename to app/src/components/library/TagsSelector.vue diff --git a/front/src/components/library/TrackBase.vue b/app/src/components/library/TrackBase.vue similarity index 100% rename from front/src/components/library/TrackBase.vue rename to app/src/components/library/TrackBase.vue diff --git a/front/src/components/library/TrackDetail.vue b/app/src/components/library/TrackDetail.vue similarity index 100% rename from front/src/components/library/TrackDetail.vue rename to app/src/components/library/TrackDetail.vue diff --git a/front/src/components/library/TrackEdit.vue b/app/src/components/library/TrackEdit.vue similarity index 100% rename from front/src/components/library/TrackEdit.vue rename to app/src/components/library/TrackEdit.vue diff --git a/front/src/components/library/UploadDetail.vue b/app/src/components/library/UploadDetail.vue similarity index 100% rename from front/src/components/library/UploadDetail.vue rename to app/src/components/library/UploadDetail.vue diff --git a/front/src/components/library/radios/Builder.vue b/app/src/components/library/radios/Builder.vue similarity index 100% rename from front/src/components/library/radios/Builder.vue rename to app/src/components/library/radios/Builder.vue diff --git a/front/src/components/library/radios/Filter.vue b/app/src/components/library/radios/Filter.vue similarity index 100% rename from front/src/components/library/radios/Filter.vue rename to app/src/components/library/radios/Filter.vue diff --git a/front/src/components/manage/ChannelsTable.vue b/app/src/components/manage/ChannelsTable.vue similarity index 100% rename from front/src/components/manage/ChannelsTable.vue rename to app/src/components/manage/ChannelsTable.vue diff --git a/front/src/components/manage/library/AlbumsTable.vue b/app/src/components/manage/library/AlbumsTable.vue similarity index 100% rename from front/src/components/manage/library/AlbumsTable.vue rename to app/src/components/manage/library/AlbumsTable.vue diff --git a/front/src/components/manage/library/ArtistsTable.vue b/app/src/components/manage/library/ArtistsTable.vue similarity index 100% rename from front/src/components/manage/library/ArtistsTable.vue rename to app/src/components/manage/library/ArtistsTable.vue diff --git a/front/src/components/manage/library/EditsCardList.vue b/app/src/components/manage/library/EditsCardList.vue similarity index 100% rename from front/src/components/manage/library/EditsCardList.vue rename to app/src/components/manage/library/EditsCardList.vue diff --git a/front/src/components/manage/library/LibrariesTable.vue b/app/src/components/manage/library/LibrariesTable.vue similarity index 100% rename from front/src/components/manage/library/LibrariesTable.vue rename to app/src/components/manage/library/LibrariesTable.vue diff --git a/front/src/components/manage/library/TagsTable.vue b/app/src/components/manage/library/TagsTable.vue similarity index 100% rename from front/src/components/manage/library/TagsTable.vue rename to app/src/components/manage/library/TagsTable.vue diff --git a/front/src/components/manage/library/TracksTable.vue b/app/src/components/manage/library/TracksTable.vue similarity index 100% rename from front/src/components/manage/library/TracksTable.vue rename to app/src/components/manage/library/TracksTable.vue diff --git a/front/src/components/manage/library/UploadsTable.vue b/app/src/components/manage/library/UploadsTable.vue similarity index 100% rename from front/src/components/manage/library/UploadsTable.vue rename to app/src/components/manage/library/UploadsTable.vue diff --git a/front/src/components/manage/moderation/AccountsTable.vue b/app/src/components/manage/moderation/AccountsTable.vue similarity index 100% rename from front/src/components/manage/moderation/AccountsTable.vue rename to app/src/components/manage/moderation/AccountsTable.vue diff --git a/front/src/components/manage/moderation/DomainsTable.vue b/app/src/components/manage/moderation/DomainsTable.vue similarity index 100% rename from front/src/components/manage/moderation/DomainsTable.vue rename to app/src/components/manage/moderation/DomainsTable.vue diff --git a/front/src/components/manage/moderation/InstancePolicyCard.vue b/app/src/components/manage/moderation/InstancePolicyCard.vue similarity index 100% rename from front/src/components/manage/moderation/InstancePolicyCard.vue rename to app/src/components/manage/moderation/InstancePolicyCard.vue diff --git a/front/src/components/manage/moderation/InstancePolicyForm.vue b/app/src/components/manage/moderation/InstancePolicyForm.vue similarity index 100% rename from front/src/components/manage/moderation/InstancePolicyForm.vue rename to app/src/components/manage/moderation/InstancePolicyForm.vue diff --git a/front/src/components/manage/moderation/InstancePolicyModal.vue b/app/src/components/manage/moderation/InstancePolicyModal.vue similarity index 100% rename from front/src/components/manage/moderation/InstancePolicyModal.vue rename to app/src/components/manage/moderation/InstancePolicyModal.vue diff --git a/front/src/components/manage/moderation/NoteForm.vue b/app/src/components/manage/moderation/NoteForm.vue similarity index 100% rename from front/src/components/manage/moderation/NoteForm.vue rename to app/src/components/manage/moderation/NoteForm.vue diff --git a/front/src/components/manage/moderation/NotesThread.vue b/app/src/components/manage/moderation/NotesThread.vue similarity index 100% rename from front/src/components/manage/moderation/NotesThread.vue rename to app/src/components/manage/moderation/NotesThread.vue diff --git a/front/src/components/manage/moderation/ReportCard.vue b/app/src/components/manage/moderation/ReportCard.vue similarity index 100% rename from front/src/components/manage/moderation/ReportCard.vue rename to app/src/components/manage/moderation/ReportCard.vue diff --git a/front/src/components/manage/moderation/UserRequestCard.vue b/app/src/components/manage/moderation/UserRequestCard.vue similarity index 100% rename from front/src/components/manage/moderation/UserRequestCard.vue rename to app/src/components/manage/moderation/UserRequestCard.vue diff --git a/front/src/components/manage/users/InvitationForm.vue b/app/src/components/manage/users/InvitationForm.vue similarity index 100% rename from front/src/components/manage/users/InvitationForm.vue rename to app/src/components/manage/users/InvitationForm.vue diff --git a/front/src/components/manage/users/InvitationsTable.vue b/app/src/components/manage/users/InvitationsTable.vue similarity index 100% rename from front/src/components/manage/users/InvitationsTable.vue rename to app/src/components/manage/users/InvitationsTable.vue diff --git a/front/src/components/manage/users/UsersTable.vue b/app/src/components/manage/users/UsersTable.vue similarity index 100% rename from front/src/components/manage/users/UsersTable.vue rename to app/src/components/manage/users/UsersTable.vue diff --git a/front/src/components/moderation/FilterModal.vue b/app/src/components/moderation/FilterModal.vue similarity index 100% rename from front/src/components/moderation/FilterModal.vue rename to app/src/components/moderation/FilterModal.vue diff --git a/front/src/components/moderation/ReportCategoryDropdown.vue b/app/src/components/moderation/ReportCategoryDropdown.vue similarity index 100% rename from front/src/components/moderation/ReportCategoryDropdown.vue rename to app/src/components/moderation/ReportCategoryDropdown.vue diff --git a/front/src/components/moderation/ReportModal.vue b/app/src/components/moderation/ReportModal.vue similarity index 100% rename from front/src/components/moderation/ReportModal.vue rename to app/src/components/moderation/ReportModal.vue diff --git a/front/src/components/notifications/NotificationRow.vue b/app/src/components/notifications/NotificationRow.vue similarity index 100% rename from front/src/components/notifications/NotificationRow.vue rename to app/src/components/notifications/NotificationRow.vue diff --git a/front/src/components/playlist/Card.vue b/app/src/components/playlist/Card.vue similarity index 100% rename from front/src/components/playlist/Card.vue rename to app/src/components/playlist/Card.vue diff --git a/front/src/components/playlist/style.scss b/app/src/components/playlist/style.scss similarity index 100% rename from front/src/components/playlist/style.scss rename to app/src/components/playlist/style.scss diff --git a/front/src/components/playlists/Card.vue b/app/src/components/playlists/Card.vue similarity index 100% rename from front/src/components/playlists/Card.vue rename to app/src/components/playlists/Card.vue diff --git a/front/src/components/playlists/CardList.vue b/app/src/components/playlists/CardList.vue similarity index 100% rename from front/src/components/playlists/CardList.vue rename to app/src/components/playlists/CardList.vue diff --git a/front/src/components/playlists/Editor.vue b/app/src/components/playlists/Editor.vue similarity index 100% rename from front/src/components/playlists/Editor.vue rename to app/src/components/playlists/Editor.vue diff --git a/front/src/components/playlists/Form.vue b/app/src/components/playlists/Form.vue similarity index 100% rename from front/src/components/playlists/Form.vue rename to app/src/components/playlists/Form.vue diff --git a/front/src/components/playlists/PlaylistDropdown.vue b/app/src/components/playlists/PlaylistDropdown.vue similarity index 100% rename from front/src/components/playlists/PlaylistDropdown.vue rename to app/src/components/playlists/PlaylistDropdown.vue diff --git a/front/src/components/playlists/PlaylistModal.vue b/app/src/components/playlists/PlaylistModal.vue similarity index 100% rename from front/src/components/playlists/PlaylistModal.vue rename to app/src/components/playlists/PlaylistModal.vue diff --git a/front/src/components/playlists/TrackPlaylistIcon.vue b/app/src/components/playlists/TrackPlaylistIcon.vue similarity index 100% rename from front/src/components/playlists/TrackPlaylistIcon.vue rename to app/src/components/playlists/TrackPlaylistIcon.vue diff --git a/front/src/components/playlists/Widget.vue b/app/src/components/playlists/Widget.vue similarity index 100% rename from front/src/components/playlists/Widget.vue rename to app/src/components/playlists/Widget.vue diff --git a/front/src/components/podcast/Card.vue b/app/src/components/podcast/Card.vue similarity index 100% rename from front/src/components/podcast/Card.vue rename to app/src/components/podcast/Card.vue diff --git a/front/src/components/podcast/style.scss b/app/src/components/podcast/style.scss similarity index 100% rename from front/src/components/podcast/style.scss rename to app/src/components/podcast/style.scss diff --git a/front/src/components/radio/Card.vue b/app/src/components/radio/Card.vue similarity index 100% rename from front/src/components/radio/Card.vue rename to app/src/components/radio/Card.vue diff --git a/front/src/components/radio/style.scss b/app/src/components/radio/style.scss similarity index 100% rename from front/src/components/radio/style.scss rename to app/src/components/radio/style.scss diff --git a/front/src/components/radios/Button.vue b/app/src/components/radios/Button.vue similarity index 100% rename from front/src/components/radios/Button.vue rename to app/src/components/radios/Button.vue diff --git a/front/src/components/radios/Card.vue b/app/src/components/radios/Card.vue similarity index 100% rename from front/src/components/radios/Card.vue rename to app/src/components/radios/Card.vue diff --git a/front/src/components/tags/List.vue b/app/src/components/tags/List.vue similarity index 100% rename from front/src/components/tags/List.vue rename to app/src/components/tags/List.vue diff --git a/front/src/components/ui/Activity.vue b/app/src/components/ui/Activity.vue similarity index 100% rename from front/src/components/ui/Activity.vue rename to app/src/components/ui/Activity.vue diff --git a/front/src/components/ui/Alert.vue b/app/src/components/ui/Alert.vue similarity index 100% rename from front/src/components/ui/Alert.vue rename to app/src/components/ui/Alert.vue diff --git a/front/src/components/ui/Button.vue b/app/src/components/ui/Button.vue similarity index 100% rename from front/src/components/ui/Button.vue rename to app/src/components/ui/Button.vue diff --git a/front/src/components/ui/Card.vue b/app/src/components/ui/Card.vue similarity index 100% rename from front/src/components/ui/Card.vue rename to app/src/components/ui/Card.vue diff --git a/front/src/components/ui/Header.vue b/app/src/components/ui/Header.vue similarity index 100% rename from front/src/components/ui/Header.vue rename to app/src/components/ui/Header.vue diff --git a/front/src/components/ui/Heading.vue b/app/src/components/ui/Heading.vue similarity index 100% rename from front/src/components/ui/Heading.vue rename to app/src/components/ui/Heading.vue diff --git a/front/src/components/ui/Input.vue b/app/src/components/ui/Input.vue similarity index 100% rename from front/src/components/ui/Input.vue rename to app/src/components/ui/Input.vue diff --git a/front/src/components/ui/Layout.vue b/app/src/components/ui/Layout.vue similarity index 100% rename from front/src/components/ui/Layout.vue rename to app/src/components/ui/Layout.vue diff --git a/front/src/components/ui/Link.vue b/app/src/components/ui/Link.vue similarity index 100% rename from front/src/components/ui/Link.vue rename to app/src/components/ui/Link.vue diff --git a/front/src/components/ui/Loader.vue b/app/src/components/ui/Loader.vue similarity index 100% rename from front/src/components/ui/Loader.vue rename to app/src/components/ui/Loader.vue diff --git a/front/src/components/ui/Markdown.vue b/app/src/components/ui/Markdown.vue similarity index 100% rename from front/src/components/ui/Markdown.vue rename to app/src/components/ui/Markdown.vue diff --git a/front/src/components/ui/Modal.vue b/app/src/components/ui/Modal.vue similarity index 100% rename from front/src/components/ui/Modal.vue rename to app/src/components/ui/Modal.vue diff --git a/front/src/components/ui/Nav.vue b/app/src/components/ui/Nav.vue similarity index 100% rename from front/src/components/ui/Nav.vue rename to app/src/components/ui/Nav.vue diff --git a/front/src/components/ui/Pagination.vue b/app/src/components/ui/Pagination.vue similarity index 100% rename from front/src/components/ui/Pagination.vue rename to app/src/components/ui/Pagination.vue diff --git a/front/src/components/ui/Pill.vue b/app/src/components/ui/Pill.vue similarity index 100% rename from front/src/components/ui/Pill.vue rename to app/src/components/ui/Pill.vue diff --git a/front/src/components/ui/Pills.vue b/app/src/components/ui/Pills.vue similarity index 100% rename from front/src/components/ui/Pills.vue rename to app/src/components/ui/Pills.vue diff --git a/front/src/components/ui/Popover.vue b/app/src/components/ui/Popover.vue similarity index 100% rename from front/src/components/ui/Popover.vue rename to app/src/components/ui/Popover.vue diff --git a/front/src/components/ui/SanitizedHtml.vue b/app/src/components/ui/SanitizedHtml.vue similarity index 100% rename from front/src/components/ui/SanitizedHtml.vue rename to app/src/components/ui/SanitizedHtml.vue diff --git a/front/src/components/ui/Section.vue b/app/src/components/ui/Section.vue similarity index 100% rename from front/src/components/ui/Section.vue rename to app/src/components/ui/Section.vue diff --git a/front/src/components/ui/Slider.vue b/app/src/components/ui/Slider.vue similarity index 100% rename from front/src/components/ui/Slider.vue rename to app/src/components/ui/Slider.vue diff --git a/front/src/components/ui/Spacer.vue b/app/src/components/ui/Spacer.vue similarity index 100% rename from front/src/components/ui/Spacer.vue rename to app/src/components/ui/Spacer.vue diff --git a/front/src/components/ui/Tab.vue b/app/src/components/ui/Tab.vue similarity index 100% rename from front/src/components/ui/Tab.vue rename to app/src/components/ui/Tab.vue diff --git a/front/src/components/ui/Table.vue b/app/src/components/ui/Table.vue similarity index 100% rename from front/src/components/ui/Table.vue rename to app/src/components/ui/Table.vue diff --git a/front/src/components/ui/Tabs.vue b/app/src/components/ui/Tabs.vue similarity index 100% rename from front/src/components/ui/Tabs.vue rename to app/src/components/ui/Tabs.vue diff --git a/front/src/components/ui/Textarea.vue b/app/src/components/ui/Textarea.vue similarity index 100% rename from front/src/components/ui/Textarea.vue rename to app/src/components/ui/Textarea.vue diff --git a/front/src/components/ui/Toc.vue b/app/src/components/ui/Toc.vue similarity index 100% rename from front/src/components/ui/Toc.vue rename to app/src/components/ui/Toc.vue diff --git a/front/src/components/ui/Toggle.vue b/app/src/components/ui/Toggle.vue similarity index 100% rename from front/src/components/ui/Toggle.vue rename to app/src/components/ui/Toggle.vue diff --git a/front/src/components/ui/activity.scss b/app/src/components/ui/activity.scss similarity index 100% rename from front/src/components/ui/activity.scss rename to app/src/components/ui/activity.scss diff --git a/front/src/components/ui/alert.scss b/app/src/components/ui/alert.scss similarity index 100% rename from front/src/components/ui/alert.scss rename to app/src/components/ui/alert.scss diff --git a/front/src/components/ui/button.scss b/app/src/components/ui/button.scss similarity index 100% rename from front/src/components/ui/button.scss rename to app/src/components/ui/button.scss diff --git a/front/src/components/ui/button/Options.vue b/app/src/components/ui/button/Options.vue similarity index 100% rename from front/src/components/ui/button/Options.vue rename to app/src/components/ui/button/Options.vue diff --git a/front/src/components/ui/button/Play.vue b/app/src/components/ui/button/Play.vue similarity index 100% rename from front/src/components/ui/button/Play.vue rename to app/src/components/ui/button/Play.vue diff --git a/front/src/components/ui/button/options.scss b/app/src/components/ui/button/options.scss similarity index 100% rename from front/src/components/ui/button/options.scss rename to app/src/components/ui/button/options.scss diff --git a/front/src/components/ui/button/play.scss b/app/src/components/ui/button/play.scss similarity index 100% rename from front/src/components/ui/button/play.scss rename to app/src/components/ui/button/play.scss diff --git a/front/src/components/ui/input.scss b/app/src/components/ui/input.scss similarity index 100% rename from front/src/components/ui/input.scss rename to app/src/components/ui/input.scss diff --git a/front/src/components/ui/loader.scss b/app/src/components/ui/loader.scss similarity index 100% rename from front/src/components/ui/loader.scss rename to app/src/components/ui/loader.scss diff --git a/front/src/components/ui/modal.scss b/app/src/components/ui/modal.scss similarity index 100% rename from front/src/components/ui/modal.scss rename to app/src/components/ui/modal.scss diff --git a/front/src/components/ui/pagination.scss b/app/src/components/ui/pagination.scss similarity index 100% rename from front/src/components/ui/pagination.scss rename to app/src/components/ui/pagination.scss diff --git a/front/src/components/ui/popover.scss b/app/src/components/ui/popover.scss similarity index 100% rename from front/src/components/ui/popover.scss rename to app/src/components/ui/popover.scss diff --git a/front/src/components/ui/popover/PopoverCheckbox.vue b/app/src/components/ui/popover/PopoverCheckbox.vue similarity index 100% rename from front/src/components/ui/popover/PopoverCheckbox.vue rename to app/src/components/ui/popover/PopoverCheckbox.vue diff --git a/front/src/components/ui/popover/PopoverItem.vue b/app/src/components/ui/popover/PopoverItem.vue similarity index 100% rename from front/src/components/ui/popover/PopoverItem.vue rename to app/src/components/ui/popover/PopoverItem.vue diff --git a/front/src/components/ui/popover/PopoverRadio.vue b/app/src/components/ui/popover/PopoverRadio.vue similarity index 100% rename from front/src/components/ui/popover/PopoverRadio.vue rename to app/src/components/ui/popover/PopoverRadio.vue diff --git a/front/src/components/ui/popover/PopoverRadioItem.vue b/app/src/components/ui/popover/PopoverRadioItem.vue similarity index 100% rename from front/src/components/ui/popover/PopoverRadioItem.vue rename to app/src/components/ui/popover/PopoverRadioItem.vue diff --git a/front/src/components/ui/popover/PopoverSubmenu.vue b/app/src/components/ui/popover/PopoverSubmenu.vue similarity index 100% rename from front/src/components/ui/popover/PopoverSubmenu.vue rename to app/src/components/ui/popover/PopoverSubmenu.vue diff --git a/front/src/components/ui/tabs.scss b/app/src/components/ui/tabs.scss similarity index 100% rename from front/src/components/ui/tabs.scss rename to app/src/components/ui/tabs.scss diff --git a/front/src/components/ui/textarea.scss b/app/src/components/ui/textarea.scss similarity index 100% rename from front/src/components/ui/textarea.scss rename to app/src/components/ui/textarea.scss diff --git a/front/src/components/ui/toc.scss b/app/src/components/ui/toc.scss similarity index 100% rename from front/src/components/ui/toc.scss rename to app/src/components/ui/toc.scss diff --git a/front/src/components/ui/toggle.scss b/app/src/components/ui/toggle.scss similarity index 100% rename from front/src/components/ui/toggle.scss rename to app/src/components/ui/toggle.scss diff --git a/front/src/components/vui/Pagination.vue b/app/src/components/vui/Pagination.vue similarity index 100% rename from front/src/components/vui/Pagination.vue rename to app/src/components/vui/Pagination.vue diff --git a/front/src/components/vui/list/VirtualList.vue b/app/src/components/vui/list/VirtualList.vue similarity index 100% rename from front/src/components/vui/list/VirtualList.vue rename to app/src/components/vui/list/VirtualList.vue diff --git a/front/src/composables/alignment.ts b/app/src/composables/alignment.ts similarity index 100% rename from front/src/composables/alignment.ts rename to app/src/composables/alignment.ts diff --git a/front/src/composables/audio/audio-api.ts b/app/src/composables/audio/audio-api.ts similarity index 100% rename from front/src/composables/audio/audio-api.ts rename to app/src/composables/audio/audio-api.ts diff --git a/front/src/composables/audio/player.ts b/app/src/composables/audio/player.ts similarity index 100% rename from front/src/composables/audio/player.ts rename to app/src/composables/audio/player.ts diff --git a/front/src/composables/audio/queue.ts b/app/src/composables/audio/queue.ts similarity index 100% rename from front/src/composables/audio/queue.ts rename to app/src/composables/audio/queue.ts diff --git a/front/src/composables/audio/tracks.ts b/app/src/composables/audio/tracks.ts similarity index 100% rename from front/src/composables/audio/tracks.ts rename to app/src/composables/audio/tracks.ts diff --git a/front/src/composables/audio/usePlayOptions.ts b/app/src/composables/audio/usePlayOptions.ts similarity index 100% rename from front/src/composables/audio/usePlayOptions.ts rename to app/src/composables/audio/usePlayOptions.ts diff --git a/front/src/composables/audio/visualizer.ts b/app/src/composables/audio/visualizer.ts similarity index 100% rename from front/src/composables/audio/visualizer.ts rename to app/src/composables/audio/visualizer.ts diff --git a/front/src/composables/auth/useScopes.ts b/app/src/composables/auth/useScopes.ts similarity index 100% rename from front/src/composables/auth/useScopes.ts rename to app/src/composables/auth/useScopes.ts diff --git a/front/src/composables/color.ts b/app/src/composables/color.ts similarity index 100% rename from front/src/composables/color.ts rename to app/src/composables/color.ts diff --git a/front/src/composables/data/indexedDB.ts b/app/src/composables/data/indexedDB.ts similarity index 100% rename from front/src/composables/data/indexedDB.ts rename to app/src/composables/data/indexedDB.ts diff --git a/front/src/composables/locale/useSharedLabels.ts b/app/src/composables/locale/useSharedLabels.ts similarity index 100% rename from front/src/composables/locale/useSharedLabels.ts rename to app/src/composables/locale/useSharedLabels.ts diff --git a/front/src/composables/moderation/useEditConfigs.ts b/app/src/composables/moderation/useEditConfigs.ts similarity index 100% rename from front/src/composables/moderation/useEditConfigs.ts rename to app/src/composables/moderation/useEditConfigs.ts diff --git a/front/src/composables/moderation/useReport.ts b/app/src/composables/moderation/useReport.ts similarity index 100% rename from front/src/composables/moderation/useReport.ts rename to app/src/composables/moderation/useReport.ts diff --git a/front/src/composables/moderation/useReportConfigs.ts b/app/src/composables/moderation/useReportConfigs.ts similarity index 100% rename from front/src/composables/moderation/useReportConfigs.ts rename to app/src/composables/moderation/useReportConfigs.ts diff --git a/front/src/composables/navigation/useOrdering.ts b/app/src/composables/navigation/useOrdering.ts similarity index 100% rename from front/src/composables/navigation/useOrdering.ts rename to app/src/composables/navigation/useOrdering.ts diff --git a/front/src/composables/navigation/usePage.ts b/app/src/composables/navigation/usePage.ts similarity index 100% rename from front/src/composables/navigation/usePage.ts rename to app/src/composables/navigation/usePage.ts diff --git a/front/src/composables/navigation/useSmartSearch.ts b/app/src/composables/navigation/useSmartSearch.ts similarity index 100% rename from front/src/composables/navigation/useSmartSearch.ts rename to app/src/composables/navigation/useSmartSearch.ts diff --git a/front/src/composables/onKeyboardShortcut.ts b/app/src/composables/onKeyboardShortcut.ts similarity index 100% rename from front/src/composables/onKeyboardShortcut.ts rename to app/src/composables/onKeyboardShortcut.ts diff --git a/front/src/composables/screen.ts b/app/src/composables/screen.ts similarity index 100% rename from front/src/composables/screen.ts rename to app/src/composables/screen.ts diff --git a/front/src/composables/tauri.ts b/app/src/composables/tauri.ts similarity index 100% rename from front/src/composables/tauri.ts rename to app/src/composables/tauri.ts diff --git a/front/src/composables/updateQueryString.ts b/app/src/composables/updateQueryString.ts similarity index 100% rename from front/src/composables/updateQueryString.ts rename to app/src/composables/updateQueryString.ts diff --git a/front/src/composables/useErrorHandler.ts b/app/src/composables/useErrorHandler.ts similarity index 100% rename from front/src/composables/useErrorHandler.ts rename to app/src/composables/useErrorHandler.ts diff --git a/front/src/composables/useFormData.ts b/app/src/composables/useFormData.ts similarity index 100% rename from front/src/composables/useFormData.ts rename to app/src/composables/useFormData.ts diff --git a/front/src/composables/useLogger.ts b/app/src/composables/useLogger.ts similarity index 100% rename from front/src/composables/useLogger.ts rename to app/src/composables/useLogger.ts diff --git a/front/src/composables/useMarkdown.ts b/app/src/composables/useMarkdown.ts similarity index 100% rename from front/src/composables/useMarkdown.ts rename to app/src/composables/useMarkdown.ts diff --git a/front/src/composables/useTheme.ts b/app/src/composables/useTheme.ts similarity index 100% rename from front/src/composables/useTheme.ts rename to app/src/composables/useTheme.ts diff --git a/front/src/composables/useThemeList.ts b/app/src/composables/useThemeList.ts similarity index 100% rename from front/src/composables/useThemeList.ts rename to app/src/composables/useThemeList.ts diff --git a/front/src/composables/useWebSocketHandler.ts b/app/src/composables/useWebSocketHandler.ts similarity index 100% rename from front/src/composables/useWebSocketHandler.ts rename to app/src/composables/useWebSocketHandler.ts diff --git a/front/src/composables/width.ts b/app/src/composables/width.ts similarity index 100% rename from front/src/composables/width.ts rename to app/src/composables/width.ts diff --git a/front/src/generated/schema.yml b/app/src/generated/schema.yml similarity index 100% rename from front/src/generated/schema.yml rename to app/src/generated/schema.yml diff --git a/front/src/generated/types.ts b/app/src/generated/types.ts similarity index 100% rename from front/src/generated/types.ts rename to app/src/generated/types.ts diff --git a/front/src/init/axios.ts b/app/src/init/axios.ts similarity index 100% rename from front/src/init/axios.ts rename to app/src/init/axios.ts diff --git a/front/src/init/directives.ts b/app/src/init/directives.ts similarity index 100% rename from front/src/init/directives.ts rename to app/src/init/directives.ts diff --git a/front/src/init/globalComponents.ts b/app/src/init/globalComponents.ts similarity index 100% rename from front/src/init/globalComponents.ts rename to app/src/init/globalComponents.ts diff --git a/front/src/init/instance.ts b/app/src/init/instance.ts similarity index 100% rename from front/src/init/instance.ts rename to app/src/init/instance.ts diff --git a/front/src/init/internalLinks.ts b/app/src/init/internalLinks.ts similarity index 100% rename from front/src/init/internalLinks.ts rename to app/src/init/internalLinks.ts diff --git a/front/src/init/lazyLoad.ts b/app/src/init/lazyLoad.ts similarity index 100% rename from front/src/init/lazyLoad.ts rename to app/src/init/lazyLoad.ts diff --git a/front/src/init/locale.ts b/app/src/init/locale.ts similarity index 100% rename from front/src/init/locale.ts rename to app/src/init/locale.ts diff --git a/front/src/init/mediaSession.ts b/app/src/init/mediaSession.ts similarity index 100% rename from front/src/init/mediaSession.ts rename to app/src/init/mediaSession.ts diff --git a/front/src/init/sentry.ts b/app/src/init/sentry.ts similarity index 100% rename from front/src/init/sentry.ts rename to app/src/init/sentry.ts diff --git a/front/src/init/serviceWorker.ts b/app/src/init/serviceWorker.ts similarity index 100% rename from front/src/init/serviceWorker.ts rename to app/src/init/serviceWorker.ts diff --git a/front/src/init/webSocket.ts b/app/src/init/webSocket.ts similarity index 100% rename from front/src/init/webSocket.ts rename to app/src/init/webSocket.ts diff --git a/front/src/init/window.ts b/app/src/init/window.ts similarity index 100% rename from front/src/init/window.ts rename to app/src/init/window.ts diff --git a/front/src/injection-keys.ts b/app/src/injection-keys.ts similarity index 100% rename from front/src/injection-keys.ts rename to app/src/injection-keys.ts diff --git a/front/src/locales.ts b/app/src/locales.ts similarity index 100% rename from front/src/locales.ts rename to app/src/locales.ts diff --git a/front/src/locales/ar.json b/app/src/locales/ar.json similarity index 100% rename from front/src/locales/ar.json rename to app/src/locales/ar.json diff --git a/front/src/locales/bn.json b/app/src/locales/bn.json similarity index 100% rename from front/src/locales/bn.json rename to app/src/locales/bn.json diff --git a/front/src/locales/bn_BD.json b/app/src/locales/bn_BD.json similarity index 100% rename from front/src/locales/bn_BD.json rename to app/src/locales/bn_BD.json diff --git a/front/src/locales/ca.json b/app/src/locales/ca.json similarity index 100% rename from front/src/locales/ca.json rename to app/src/locales/ca.json diff --git a/front/src/locales/ca@valencia.json b/app/src/locales/ca@valencia.json similarity index 100% rename from front/src/locales/ca@valencia.json rename to app/src/locales/ca@valencia.json diff --git a/front/src/locales/cs.json b/app/src/locales/cs.json similarity index 100% rename from front/src/locales/cs.json rename to app/src/locales/cs.json diff --git a/front/src/locales/de.json b/app/src/locales/de.json similarity index 100% rename from front/src/locales/de.json rename to app/src/locales/de.json diff --git a/front/src/locales/el.json b/app/src/locales/el.json similarity index 100% rename from front/src/locales/el.json rename to app/src/locales/el.json diff --git a/front/src/locales/en_GB.json b/app/src/locales/en_GB.json similarity index 100% rename from front/src/locales/en_GB.json rename to app/src/locales/en_GB.json diff --git a/front/src/locales/en_US.json b/app/src/locales/en_US.json similarity index 100% rename from front/src/locales/en_US.json rename to app/src/locales/en_US.json diff --git a/front/src/locales/eo.json b/app/src/locales/eo.json similarity index 100% rename from front/src/locales/eo.json rename to app/src/locales/eo.json diff --git a/front/src/locales/es.json b/app/src/locales/es.json similarity index 100% rename from front/src/locales/es.json rename to app/src/locales/es.json diff --git a/front/src/locales/eu.json b/app/src/locales/eu.json similarity index 100% rename from front/src/locales/eu.json rename to app/src/locales/eu.json diff --git a/front/src/locales/fa_IR.json b/app/src/locales/fa_IR.json similarity index 100% rename from front/src/locales/fa_IR.json rename to app/src/locales/fa_IR.json diff --git a/front/src/locales/fr_FR.json b/app/src/locales/fr_FR.json similarity index 100% rename from front/src/locales/fr_FR.json rename to app/src/locales/fr_FR.json diff --git a/front/src/locales/ga.json b/app/src/locales/ga.json similarity index 100% rename from front/src/locales/ga.json rename to app/src/locales/ga.json diff --git a/front/src/locales/gl.json b/app/src/locales/gl.json similarity index 100% rename from front/src/locales/gl.json rename to app/src/locales/gl.json diff --git a/front/src/locales/hu.json b/app/src/locales/hu.json similarity index 100% rename from front/src/locales/hu.json rename to app/src/locales/hu.json diff --git a/front/src/locales/id.json b/app/src/locales/id.json similarity index 100% rename from front/src/locales/id.json rename to app/src/locales/id.json diff --git a/front/src/locales/it.json b/app/src/locales/it.json similarity index 100% rename from front/src/locales/it.json rename to app/src/locales/it.json diff --git a/front/src/locales/ja_JP.json b/app/src/locales/ja_JP.json similarity index 100% rename from front/src/locales/ja_JP.json rename to app/src/locales/ja_JP.json diff --git a/front/src/locales/kab_DZ.json b/app/src/locales/kab_DZ.json similarity index 100% rename from front/src/locales/kab_DZ.json rename to app/src/locales/kab_DZ.json diff --git a/front/src/locales/ko_KR.json b/app/src/locales/ko_KR.json similarity index 100% rename from front/src/locales/ko_KR.json rename to app/src/locales/ko_KR.json diff --git a/front/src/locales/lt.json b/app/src/locales/lt.json similarity index 100% rename from front/src/locales/lt.json rename to app/src/locales/lt.json diff --git a/front/src/locales/ml.json b/app/src/locales/ml.json similarity index 100% rename from front/src/locales/ml.json rename to app/src/locales/ml.json diff --git a/front/src/locales/nb_NO.json b/app/src/locales/nb_NO.json similarity index 100% rename from front/src/locales/nb_NO.json rename to app/src/locales/nb_NO.json diff --git a/front/src/locales/nl.json b/app/src/locales/nl.json similarity index 100% rename from front/src/locales/nl.json rename to app/src/locales/nl.json diff --git a/front/src/locales/nn_NO.json b/app/src/locales/nn_NO.json similarity index 100% rename from front/src/locales/nn_NO.json rename to app/src/locales/nn_NO.json diff --git a/front/src/locales/oc.json b/app/src/locales/oc.json similarity index 100% rename from front/src/locales/oc.json rename to app/src/locales/oc.json diff --git a/front/src/locales/pl.json b/app/src/locales/pl.json similarity index 100% rename from front/src/locales/pl.json rename to app/src/locales/pl.json diff --git a/front/src/locales/pt_BR.json b/app/src/locales/pt_BR.json similarity index 100% rename from front/src/locales/pt_BR.json rename to app/src/locales/pt_BR.json diff --git a/front/src/locales/pt_PT.json b/app/src/locales/pt_PT.json similarity index 100% rename from front/src/locales/pt_PT.json rename to app/src/locales/pt_PT.json diff --git a/front/src/locales/ru.json b/app/src/locales/ru.json similarity index 100% rename from front/src/locales/ru.json rename to app/src/locales/ru.json diff --git a/front/src/locales/sq.json b/app/src/locales/sq.json similarity index 100% rename from front/src/locales/sq.json rename to app/src/locales/sq.json diff --git a/front/src/locales/sv.json b/app/src/locales/sv.json similarity index 100% rename from front/src/locales/sv.json rename to app/src/locales/sv.json diff --git a/front/src/locales/tr.json b/app/src/locales/tr.json similarity index 100% rename from front/src/locales/tr.json rename to app/src/locales/tr.json diff --git a/front/src/locales/zh_Hans.json b/app/src/locales/zh_Hans.json similarity index 100% rename from front/src/locales/zh_Hans.json rename to app/src/locales/zh_Hans.json diff --git a/front/src/locales/zh_Hant.json b/app/src/locales/zh_Hant.json similarity index 100% rename from front/src/locales/zh_Hant.json rename to app/src/locales/zh_Hant.json diff --git a/front/src/main.ts b/app/src/main.ts similarity index 100% rename from front/src/main.ts rename to app/src/main.ts diff --git a/front/src/router/guards.ts b/app/src/router/guards.ts similarity index 100% rename from front/src/router/guards.ts rename to app/src/router/guards.ts diff --git a/front/src/router/index.ts b/app/src/router/index.ts similarity index 100% rename from front/src/router/index.ts rename to app/src/router/index.ts diff --git a/front/src/router/routes/auth.ts b/app/src/router/routes/auth.ts similarity index 100% rename from front/src/router/routes/auth.ts rename to app/src/router/routes/auth.ts diff --git a/front/src/router/routes/content.ts b/app/src/router/routes/content.ts similarity index 100% rename from front/src/router/routes/content.ts rename to app/src/router/routes/content.ts diff --git a/front/src/router/routes/index.ts b/app/src/router/routes/index.ts similarity index 98% rename from front/src/router/routes/index.ts rename to app/src/router/routes/index.ts index d125d99d6..0066e7f58 100644 --- a/front/src/router/routes/index.ts +++ b/app/src/router/routes/index.ts @@ -32,8 +32,8 @@ export default [ } }, { - path: '/front', - name: 'front', + path: '/app', + name: 'app', redirect: to => { const { hash, query } = to return { name: 'index', hash, query } diff --git a/front/src/router/routes/library.ts b/app/src/router/routes/library.ts similarity index 100% rename from front/src/router/routes/library.ts rename to app/src/router/routes/library.ts diff --git a/front/src/router/routes/manage.ts b/app/src/router/routes/manage.ts similarity index 100% rename from front/src/router/routes/manage.ts rename to app/src/router/routes/manage.ts diff --git a/front/src/router/routes/settings.ts b/app/src/router/routes/settings.ts similarity index 100% rename from front/src/router/routes/settings.ts rename to app/src/router/routes/settings.ts diff --git a/front/src/router/routes/user.ts b/app/src/router/routes/user.ts similarity index 100% rename from front/src/router/routes/user.ts rename to app/src/router/routes/user.ts diff --git a/front/src/serviceWorker.ts b/app/src/serviceWorker.ts similarity index 100% rename from front/src/serviceWorker.ts rename to app/src/serviceWorker.ts diff --git a/front/src/shims-funkwhale.d.ts b/app/src/shims-funkwhale.d.ts similarity index 100% rename from front/src/shims-funkwhale.d.ts rename to app/src/shims-funkwhale.d.ts diff --git a/front/src/shims-vue-router.d.ts b/app/src/shims-vue-router.d.ts similarity index 100% rename from front/src/shims-vue-router.d.ts rename to app/src/shims-vue-router.d.ts diff --git a/front/src/shims-vue.d.ts b/app/src/shims-vue.d.ts similarity index 100% rename from front/src/shims-vue.d.ts rename to app/src/shims-vue.d.ts diff --git a/front/src/shims-vuex.d.ts b/app/src/shims-vuex.d.ts similarity index 100% rename from front/src/shims-vuex.d.ts rename to app/src/shims-vuex.d.ts diff --git a/front/src/store/auth.ts b/app/src/store/auth.ts similarity index 100% rename from front/src/store/auth.ts rename to app/src/store/auth.ts diff --git a/front/src/store/channels.ts b/app/src/store/channels.ts similarity index 100% rename from front/src/store/channels.ts rename to app/src/store/channels.ts diff --git a/front/src/store/favorites.ts b/app/src/store/favorites.ts similarity index 100% rename from front/src/store/favorites.ts rename to app/src/store/favorites.ts diff --git a/front/src/store/index.ts b/app/src/store/index.ts similarity index 100% rename from front/src/store/index.ts rename to app/src/store/index.ts diff --git a/front/src/store/instance.ts b/app/src/store/instance.ts similarity index 100% rename from front/src/store/instance.ts rename to app/src/store/instance.ts diff --git a/front/src/store/libraries.ts b/app/src/store/libraries.ts similarity index 100% rename from front/src/store/libraries.ts rename to app/src/store/libraries.ts diff --git a/front/src/store/moderation.ts b/app/src/store/moderation.ts similarity index 100% rename from front/src/store/moderation.ts rename to app/src/store/moderation.ts diff --git a/front/src/store/playlists.ts b/app/src/store/playlists.ts similarity index 100% rename from front/src/store/playlists.ts rename to app/src/store/playlists.ts diff --git a/front/src/store/radios.ts b/app/src/store/radios.ts similarity index 100% rename from front/src/store/radios.ts rename to app/src/store/radios.ts diff --git a/front/src/store/ui.ts b/app/src/store/ui.ts similarity index 100% rename from front/src/store/ui.ts rename to app/src/store/ui.ts diff --git a/front/src/store/users.ts b/app/src/store/users.ts similarity index 100% rename from front/src/store/users.ts rename to app/src/store/users.ts diff --git a/front/src/style/_css_vars.scss b/app/src/style/_css_vars.scss similarity index 100% rename from front/src/style/_css_vars.scss rename to app/src/style/_css_vars.scss diff --git a/front/src/style/_main.scss b/app/src/style/_main.scss similarity index 100% rename from front/src/style/_main.scss rename to app/src/style/_main.scss diff --git a/front/src/style/_vars.scss b/app/src/style/_vars.scss similarity index 100% rename from front/src/style/_vars.scss rename to app/src/style/_vars.scss diff --git a/front/src/style/base/generic.scss b/app/src/style/base/generic.scss similarity index 100% rename from front/src/style/base/generic.scss rename to app/src/style/base/generic.scss diff --git a/front/src/style/base/index.scss b/app/src/style/base/index.scss similarity index 100% rename from front/src/style/base/index.scss rename to app/src/style/base/index.scss diff --git a/front/src/style/bootstrap-icons/LICENSE b/app/src/style/bootstrap-icons/LICENSE similarity index 100% rename from front/src/style/bootstrap-icons/LICENSE rename to app/src/style/bootstrap-icons/LICENSE diff --git a/front/src/style/bootstrap-icons/font/bootstrap-icons.css b/app/src/style/bootstrap-icons/font/bootstrap-icons.css similarity index 100% rename from front/src/style/bootstrap-icons/font/bootstrap-icons.css rename to app/src/style/bootstrap-icons/font/bootstrap-icons.css diff --git a/front/src/style/bootstrap-icons/font/bootstrap-icons.json b/app/src/style/bootstrap-icons/font/bootstrap-icons.json similarity index 100% rename from front/src/style/bootstrap-icons/font/bootstrap-icons.json rename to app/src/style/bootstrap-icons/font/bootstrap-icons.json diff --git a/front/src/style/bootstrap-icons/font/bootstrap-icons.min.css b/app/src/style/bootstrap-icons/font/bootstrap-icons.min.css similarity index 100% rename from front/src/style/bootstrap-icons/font/bootstrap-icons.min.css rename to app/src/style/bootstrap-icons/font/bootstrap-icons.min.css diff --git a/front/src/style/bootstrap-icons/font/bootstrap-icons.scss b/app/src/style/bootstrap-icons/font/bootstrap-icons.scss similarity index 100% rename from front/src/style/bootstrap-icons/font/bootstrap-icons.scss rename to app/src/style/bootstrap-icons/font/bootstrap-icons.scss diff --git a/front/src/style/bootstrap-icons/font/fonts/bootstrap-icons.woff b/app/src/style/bootstrap-icons/font/fonts/bootstrap-icons.woff similarity index 100% rename from front/src/style/bootstrap-icons/font/fonts/bootstrap-icons.woff rename to app/src/style/bootstrap-icons/font/fonts/bootstrap-icons.woff diff --git a/front/src/style/bootstrap-icons/font/fonts/bootstrap-icons.woff2 b/app/src/style/bootstrap-icons/font/fonts/bootstrap-icons.woff2 similarity index 100% rename from front/src/style/bootstrap-icons/font/fonts/bootstrap-icons.woff2 rename to app/src/style/bootstrap-icons/font/fonts/bootstrap-icons.woff2 diff --git a/front/src/style/colors.scss b/app/src/style/colors.scss similarity index 100% rename from front/src/style/colors.scss rename to app/src/style/colors.scss diff --git a/front/src/style/components/_action_table.scss b/app/src/style/components/_action_table.scss similarity index 100% rename from front/src/style/components/_action_table.scss rename to app/src/style/components/_action_table.scss diff --git a/front/src/style/components/_album_card.scss b/app/src/style/components/_album_card.scss similarity index 100% rename from front/src/style/components/_album_card.scss rename to app/src/style/components/_album_card.scss diff --git a/front/src/style/components/_attachment_input.scss b/app/src/style/components/_attachment_input.scss similarity index 100% rename from front/src/style/components/_attachment_input.scss rename to app/src/style/components/_attachment_input.scss diff --git a/front/src/style/components/_avatar.scss b/app/src/style/components/_avatar.scss similarity index 100% rename from front/src/style/components/_avatar.scss rename to app/src/style/components/_avatar.scss diff --git a/front/src/style/components/_builder.scss b/app/src/style/components/_builder.scss similarity index 100% rename from front/src/style/components/_builder.scss rename to app/src/style/components/_builder.scss diff --git a/front/src/style/components/_button.scss b/app/src/style/components/_button.scss similarity index 100% rename from front/src/style/components/_button.scss rename to app/src/style/components/_button.scss diff --git a/front/src/style/components/_card.scss b/app/src/style/components/_card.scss similarity index 100% rename from front/src/style/components/_card.scss rename to app/src/style/components/_card.scss diff --git a/front/src/style/components/_content_form.scss b/app/src/style/components/_content_form.scss similarity index 100% rename from front/src/style/components/_content_form.scss rename to app/src/style/components/_content_form.scss diff --git a/front/src/style/components/_copy_input.scss b/app/src/style/components/_copy_input.scss similarity index 100% rename from front/src/style/components/_copy_input.scss rename to app/src/style/components/_copy_input.scss diff --git a/front/src/style/components/_empty_state.scss b/app/src/style/components/_empty_state.scss similarity index 100% rename from front/src/style/components/_empty_state.scss rename to app/src/style/components/_empty_state.scss diff --git a/front/src/style/components/_favorite.scss b/app/src/style/components/_favorite.scss similarity index 100% rename from front/src/style/components/_favorite.scss rename to app/src/style/components/_favorite.scss diff --git a/front/src/style/components/_file_upload.scss b/app/src/style/components/_file_upload.scss similarity index 100% rename from front/src/style/components/_file_upload.scss rename to app/src/style/components/_file_upload.scss diff --git a/front/src/style/components/_form.scss b/app/src/style/components/_form.scss similarity index 100% rename from front/src/style/components/_form.scss rename to app/src/style/components/_form.scss diff --git a/front/src/style/components/_fs_browser.scss b/app/src/style/components/_fs_browser.scss similarity index 100% rename from front/src/style/components/_fs_browser.scss rename to app/src/style/components/_fs_browser.scss diff --git a/front/src/style/components/_fs_logs.scss b/app/src/style/components/_fs_logs.scss similarity index 100% rename from front/src/style/components/_fs_logs.scss rename to app/src/style/components/_fs_logs.scss diff --git a/front/src/style/components/_header.scss b/app/src/style/components/_header.scss similarity index 100% rename from front/src/style/components/_header.scss rename to app/src/style/components/_header.scss diff --git a/front/src/style/components/_label.scss b/app/src/style/components/_label.scss similarity index 100% rename from front/src/style/components/_label.scss rename to app/src/style/components/_label.scss diff --git a/front/src/style/components/_loaders.scss b/app/src/style/components/_loaders.scss similarity index 100% rename from front/src/style/components/_loaders.scss rename to app/src/style/components/_loaders.scss diff --git a/front/src/style/components/_modal.scss b/app/src/style/components/_modal.scss similarity index 100% rename from front/src/style/components/_modal.scss rename to app/src/style/components/_modal.scss diff --git a/front/src/style/components/_pagination.scss b/app/src/style/components/_pagination.scss similarity index 100% rename from front/src/style/components/_pagination.scss rename to app/src/style/components/_pagination.scss diff --git a/front/src/style/components/_placeholder.scss b/app/src/style/components/_placeholder.scss similarity index 100% rename from front/src/style/components/_placeholder.scss rename to app/src/style/components/_placeholder.scss diff --git a/front/src/style/components/_play_button.scss b/app/src/style/components/_play_button.scss similarity index 100% rename from front/src/style/components/_play_button.scss rename to app/src/style/components/_play_button.scss diff --git a/front/src/style/components/_play_indicator.scss b/app/src/style/components/_play_indicator.scss similarity index 100% rename from front/src/style/components/_play_indicator.scss rename to app/src/style/components/_play_indicator.scss diff --git a/front/src/style/components/_player.scss b/app/src/style/components/_player.scss similarity index 100% rename from front/src/style/components/_player.scss rename to app/src/style/components/_player.scss diff --git a/front/src/style/components/_playlist_editor.scss b/app/src/style/components/_playlist_editor.scss similarity index 100% rename from front/src/style/components/_playlist_editor.scss rename to app/src/style/components/_playlist_editor.scss diff --git a/front/src/style/components/_queue.scss b/app/src/style/components/_queue.scss similarity index 100% rename from front/src/style/components/_queue.scss rename to app/src/style/components/_queue.scss diff --git a/front/src/style/components/_search.scss b/app/src/style/components/_search.scss similarity index 100% rename from front/src/style/components/_search.scss rename to app/src/style/components/_search.scss diff --git a/front/src/style/components/_settings_group.scss b/app/src/style/components/_settings_group.scss similarity index 100% rename from front/src/style/components/_settings_group.scss rename to app/src/style/components/_settings_group.scss diff --git a/front/src/style/components/_sidebar.scss b/app/src/style/components/_sidebar.scss similarity index 100% rename from front/src/style/components/_sidebar.scss rename to app/src/style/components/_sidebar.scss diff --git a/front/src/style/components/_table.scss b/app/src/style/components/_table.scss similarity index 100% rename from front/src/style/components/_table.scss rename to app/src/style/components/_table.scss diff --git a/front/src/style/components/_tags_list.scss b/app/src/style/components/_tags_list.scss similarity index 100% rename from front/src/style/components/_tags_list.scss rename to app/src/style/components/_tags_list.scss diff --git a/front/src/style/components/_tooltip.scss b/app/src/style/components/_tooltip.scss similarity index 100% rename from front/src/style/components/_tooltip.scss rename to app/src/style/components/_tooltip.scss diff --git a/front/src/style/components/_track_table.scss b/app/src/style/components/_track_table.scss similarity index 100% rename from front/src/style/components/_track_table.scss rename to app/src/style/components/_track_table.scss diff --git a/front/src/style/components/_track_widget.scss b/app/src/style/components/_track_widget.scss similarity index 100% rename from front/src/style/components/_track_widget.scss rename to app/src/style/components/_track_widget.scss diff --git a/front/src/style/components/_user_link.scss b/app/src/style/components/_user_link.scss similarity index 100% rename from front/src/style/components/_user_link.scss rename to app/src/style/components/_user_link.scss diff --git a/front/src/style/components/_user_modal.scss b/app/src/style/components/_user_modal.scss similarity index 100% rename from front/src/style/components/_user_modal.scss rename to app/src/style/components/_user_modal.scss diff --git a/front/src/style/components/_volume_control.scss b/app/src/style/components/_volume_control.scss similarity index 100% rename from front/src/style/components/_volume_control.scss rename to app/src/style/components/_volume_control.scss diff --git a/front/src/style/font.scss b/app/src/style/font.scss similarity index 100% rename from front/src/style/font.scss rename to app/src/style/font.scss diff --git a/front/src/style/font/Lato-Black.ttf b/app/src/style/font/Lato-Black.ttf similarity index 100% rename from front/src/style/font/Lato-Black.ttf rename to app/src/style/font/Lato-Black.ttf diff --git a/front/src/style/font/Lato-BlackItalic.ttf b/app/src/style/font/Lato-BlackItalic.ttf similarity index 100% rename from front/src/style/font/Lato-BlackItalic.ttf rename to app/src/style/font/Lato-BlackItalic.ttf diff --git a/front/src/style/font/Lato-Bold.ttf b/app/src/style/font/Lato-Bold.ttf similarity index 100% rename from front/src/style/font/Lato-Bold.ttf rename to app/src/style/font/Lato-Bold.ttf diff --git a/front/src/style/font/Lato-BoldItalic.ttf b/app/src/style/font/Lato-BoldItalic.ttf similarity index 100% rename from front/src/style/font/Lato-BoldItalic.ttf rename to app/src/style/font/Lato-BoldItalic.ttf diff --git a/front/src/style/font/Lato-Italic.ttf b/app/src/style/font/Lato-Italic.ttf similarity index 100% rename from front/src/style/font/Lato-Italic.ttf rename to app/src/style/font/Lato-Italic.ttf diff --git a/front/src/style/font/Lato-Light.ttf b/app/src/style/font/Lato-Light.ttf similarity index 100% rename from front/src/style/font/Lato-Light.ttf rename to app/src/style/font/Lato-Light.ttf diff --git a/front/src/style/font/Lato-LightItalic.ttf b/app/src/style/font/Lato-LightItalic.ttf similarity index 100% rename from front/src/style/font/Lato-LightItalic.ttf rename to app/src/style/font/Lato-LightItalic.ttf diff --git a/front/src/style/font/Lato-Regular.ttf b/app/src/style/font/Lato-Regular.ttf similarity index 100% rename from front/src/style/font/Lato-Regular.ttf rename to app/src/style/font/Lato-Regular.ttf diff --git a/front/src/style/font/Lato-Thin.ttf b/app/src/style/font/Lato-Thin.ttf similarity index 100% rename from front/src/style/font/Lato-Thin.ttf rename to app/src/style/font/Lato-Thin.ttf diff --git a/front/src/style/font/Lato-ThinItalic.ttf b/app/src/style/font/Lato-ThinItalic.ttf similarity index 100% rename from front/src/style/font/Lato-ThinItalic.ttf rename to app/src/style/font/Lato-ThinItalic.ttf diff --git a/front/src/style/font/OFL.txt b/app/src/style/font/OFL.txt similarity index 100% rename from front/src/style/font/OFL.txt rename to app/src/style/font/OFL.txt diff --git a/front/src/style/funkwhale.scss b/app/src/style/funkwhale.scss similarity index 100% rename from front/src/style/funkwhale.scss rename to app/src/style/funkwhale.scss diff --git a/front/src/style/globals/_app.scss b/app/src/style/globals/_app.scss similarity index 100% rename from front/src/style/globals/_app.scss rename to app/src/style/globals/_app.scss diff --git a/front/src/style/globals/_channels.scss b/app/src/style/globals/_channels.scss similarity index 100% rename from front/src/style/globals/_channels.scss rename to app/src/style/globals/_channels.scss diff --git a/front/src/style/globals/_layout.scss b/app/src/style/globals/_layout.scss similarity index 100% rename from front/src/style/globals/_layout.scss rename to app/src/style/globals/_layout.scss diff --git a/front/src/style/globals/_typography.scss b/app/src/style/globals/_typography.scss similarity index 100% rename from front/src/style/globals/_typography.scss rename to app/src/style/globals/_typography.scss diff --git a/front/src/style/globals/_utils.scss b/app/src/style/globals/_utils.scss similarity index 100% rename from front/src/style/globals/_utils.scss rename to app/src/style/globals/_utils.scss diff --git a/front/src/style/inc/docs.scss b/app/src/style/inc/docs.scss similarity index 100% rename from front/src/style/inc/docs.scss rename to app/src/style/inc/docs.scss diff --git a/front/src/style/inc/theme.scss b/app/src/style/inc/theme.scss similarity index 94% rename from front/src/style/inc/theme.scss rename to app/src/style/inc/theme.scss index 871a8be2c..b64f0afb5 100644 --- a/front/src/style/inc/theme.scss +++ b/app/src/style/inc/theme.scss @@ -2,7 +2,7 @@ $font-main: "Lato", sans-serif; @mixin theme($isDark) { $root-selectors: (); - /* Satisfy both vitepress (docs) and funkwhale (front) convention */ + /* Satisfy both vitepress (docs) and funkwhale (app) convention */ /* Also note the strong (triple) force which satisfies the CSS gods very much (enough) */ $root-element: ":is(body.theme-dark, html.dark>body:not(.theme-light)), .force-dark-theme.force-dark-theme.force-dark-theme"; diff --git a/front/src/style/pages/_about.scss b/app/src/style/pages/_about.scss similarity index 100% rename from front/src/style/pages/_about.scss rename to app/src/style/pages/_about.scss diff --git a/front/src/style/pages/_admin_account_detail.scss b/app/src/style/pages/_admin_account_detail.scss similarity index 100% rename from front/src/style/pages/_admin_account_detail.scss rename to app/src/style/pages/_admin_account_detail.scss diff --git a/front/src/style/pages/_admin_domain_detail.scss b/app/src/style/pages/_admin_domain_detail.scss similarity index 100% rename from front/src/style/pages/_admin_domain_detail.scss rename to app/src/style/pages/_admin_domain_detail.scss diff --git a/front/src/style/pages/_admin_library.scss b/app/src/style/pages/_admin_library.scss similarity index 100% rename from front/src/style/pages/_admin_library.scss rename to app/src/style/pages/_admin_library.scss diff --git a/front/src/style/pages/_artists.scss b/app/src/style/pages/_artists.scss similarity index 100% rename from front/src/style/pages/_artists.scss rename to app/src/style/pages/_artists.scss diff --git a/front/src/style/pages/_home.scss b/app/src/style/pages/_home.scss similarity index 100% rename from front/src/style/pages/_home.scss rename to app/src/style/pages/_home.scss diff --git a/front/src/style/pages/_library.scss b/app/src/style/pages/_library.scss similarity index 100% rename from front/src/style/pages/_library.scss rename to app/src/style/pages/_library.scss diff --git a/front/src/style/pages/_notifications.scss b/app/src/style/pages/_notifications.scss similarity index 100% rename from front/src/style/pages/_notifications.scss rename to app/src/style/pages/_notifications.scss diff --git a/front/src/style/pages/_profile.scss b/app/src/style/pages/_profile.scss similarity index 100% rename from front/src/style/pages/_profile.scss rename to app/src/style/pages/_profile.scss diff --git a/front/src/style/themes/dark/_main.scss b/app/src/style/themes/dark/_main.scss similarity index 100% rename from front/src/style/themes/dark/_main.scss rename to app/src/style/themes/dark/_main.scss diff --git a/front/src/style/themes/dark/_vars.scss b/app/src/style/themes/dark/_vars.scss similarity index 100% rename from front/src/style/themes/dark/_vars.scss rename to app/src/style/themes/dark/_vars.scss diff --git a/front/src/style/themes/light/_main.scss b/app/src/style/themes/light/_main.scss similarity index 100% rename from front/src/style/themes/light/_main.scss rename to app/src/style/themes/light/_main.scss diff --git a/front/src/style/vendor/_media.scss b/app/src/style/vendor/_media.scss similarity index 100% rename from front/src/style/vendor/_media.scss rename to app/src/style/vendor/_media.scss diff --git a/front/src/types.ts b/app/src/types.ts similarity index 100% rename from front/src/types.ts rename to app/src/types.ts diff --git a/front/src/ui/components/CoverArt.vue b/app/src/ui/components/CoverArt.vue similarity index 100% rename from front/src/ui/components/CoverArt.vue rename to app/src/ui/components/CoverArt.vue diff --git a/front/src/ui/components/Sidebar.vue b/app/src/ui/components/Sidebar.vue similarity index 100% rename from front/src/ui/components/Sidebar.vue rename to app/src/ui/components/Sidebar.vue diff --git a/front/src/ui/components/UploadGroupList.vue b/app/src/ui/components/UploadGroupList.vue similarity index 100% rename from front/src/ui/components/UploadGroupList.vue rename to app/src/ui/components/UploadGroupList.vue diff --git a/front/src/ui/components/UploadList.vue b/app/src/ui/components/UploadList.vue similarity index 100% rename from front/src/ui/components/UploadList.vue rename to app/src/ui/components/UploadList.vue diff --git a/front/src/ui/components/UploadModal.vue b/app/src/ui/components/UploadModal.vue similarity index 100% rename from front/src/ui/components/UploadModal.vue rename to app/src/ui/components/UploadModal.vue diff --git a/front/src/ui/components/UserMenu.vue b/app/src/ui/components/UserMenu.vue similarity index 100% rename from front/src/ui/components/UserMenu.vue rename to app/src/ui/components/UserMenu.vue diff --git a/front/src/ui/components/VerticalCollapse.vue b/app/src/ui/components/VerticalCollapse.vue similarity index 100% rename from front/src/ui/components/VerticalCollapse.vue rename to app/src/ui/components/VerticalCollapse.vue diff --git a/front/src/ui/composables/bytes.ts b/app/src/ui/composables/bytes.ts similarity index 100% rename from front/src/ui/composables/bytes.ts rename to app/src/ui/composables/bytes.ts diff --git a/front/src/ui/composables/metadata.ts b/app/src/ui/composables/metadata.ts similarity index 100% rename from front/src/ui/composables/metadata.ts rename to app/src/ui/composables/metadata.ts diff --git a/front/src/ui/composables/useClient.ts.backup b/app/src/ui/composables/useClient.ts.backup similarity index 100% rename from front/src/ui/composables/useClient.ts.backup rename to app/src/ui/composables/useClient.ts.backup diff --git a/front/src/ui/composables/useModal.ts b/app/src/ui/composables/useModal.ts similarity index 100% rename from front/src/ui/composables/useModal.ts rename to app/src/ui/composables/useModal.ts diff --git a/front/src/ui/composables/useTags.ts b/app/src/ui/composables/useTags.ts similarity index 100% rename from front/src/ui/composables/useTags.ts rename to app/src/ui/composables/useTags.ts diff --git a/front/src/ui/layouts/constrained.vue b/app/src/ui/layouts/constrained.vue similarity index 100% rename from front/src/ui/layouts/constrained.vue rename to app/src/ui/layouts/constrained.vue diff --git a/front/src/ui/layouts/default.vue b/app/src/ui/layouts/default.vue similarity index 100% rename from front/src/ui/layouts/default.vue rename to app/src/ui/layouts/default.vue diff --git a/front/src/ui/modals/Language.vue b/app/src/ui/modals/Language.vue similarity index 100% rename from front/src/ui/modals/Language.vue rename to app/src/ui/modals/Language.vue diff --git a/front/src/ui/modals/Search.vue b/app/src/ui/modals/Search.vue similarity index 100% rename from front/src/ui/modals/Search.vue rename to app/src/ui/modals/Search.vue diff --git a/front/src/ui/modals/Shortcuts.vue b/app/src/ui/modals/Shortcuts.vue similarity index 100% rename from front/src/ui/modals/Shortcuts.vue rename to app/src/ui/modals/Shortcuts.vue diff --git a/front/src/ui/modals/Upload.vue b/app/src/ui/modals/Upload.vue similarity index 100% rename from front/src/ui/modals/Upload.vue rename to app/src/ui/modals/Upload.vue diff --git a/front/src/ui/pages/upload.vue b/app/src/ui/pages/upload.vue similarity index 100% rename from front/src/ui/pages/upload.vue rename to app/src/ui/pages/upload.vue diff --git a/front/src/ui/pages/upload/all.vue b/app/src/ui/pages/upload/all.vue similarity index 100% rename from front/src/ui/pages/upload/all.vue rename to app/src/ui/pages/upload/all.vue diff --git a/front/src/ui/pages/upload/files.vue b/app/src/ui/pages/upload/files.vue similarity index 100% rename from front/src/ui/pages/upload/files.vue rename to app/src/ui/pages/upload/files.vue diff --git a/front/src/ui/pages/upload/history.vue b/app/src/ui/pages/upload/history.vue similarity index 100% rename from front/src/ui/pages/upload/history.vue rename to app/src/ui/pages/upload/history.vue diff --git a/front/src/ui/pages/upload/index.vue b/app/src/ui/pages/upload/index.vue similarity index 100% rename from front/src/ui/pages/upload/index.vue rename to app/src/ui/pages/upload/index.vue diff --git a/front/src/ui/pages/upload/running.vue b/app/src/ui/pages/upload/running.vue similarity index 100% rename from front/src/ui/pages/upload/running.vue rename to app/src/ui/pages/upload/running.vue diff --git a/front/src/ui/routes/auth.ts b/app/src/ui/routes/auth.ts similarity index 100% rename from front/src/ui/routes/auth.ts rename to app/src/ui/routes/auth.ts diff --git a/front/src/ui/routes/content.ts b/app/src/ui/routes/content.ts similarity index 100% rename from front/src/ui/routes/content.ts rename to app/src/ui/routes/content.ts diff --git a/front/src/ui/routes/index.ts b/app/src/ui/routes/index.ts similarity index 100% rename from front/src/ui/routes/index.ts rename to app/src/ui/routes/index.ts diff --git a/front/src/ui/routes/library.ts b/app/src/ui/routes/library.ts similarity index 100% rename from front/src/ui/routes/library.ts rename to app/src/ui/routes/library.ts diff --git a/front/src/ui/routes/manage.ts b/app/src/ui/routes/manage.ts similarity index 100% rename from front/src/ui/routes/manage.ts rename to app/src/ui/routes/manage.ts diff --git a/front/src/ui/routes/settings.ts b/app/src/ui/routes/settings.ts similarity index 100% rename from front/src/ui/routes/settings.ts rename to app/src/ui/routes/settings.ts diff --git a/front/src/ui/routes/user.ts b/app/src/ui/routes/user.ts similarity index 100% rename from front/src/ui/routes/user.ts rename to app/src/ui/routes/user.ts diff --git a/front/src/ui/stores/upload.ts b/app/src/ui/stores/upload.ts similarity index 100% rename from front/src/ui/stores/upload.ts rename to app/src/ui/stores/upload.ts diff --git a/front/src/ui/workers/file-metadata-parser.ts b/app/src/ui/workers/file-metadata-parser.ts similarity index 100% rename from front/src/ui/workers/file-metadata-parser.ts rename to app/src/ui/workers/file-metadata-parser.ts diff --git a/front/src/utils/clientRadios.ts b/app/src/utils/clientRadios.ts similarity index 100% rename from front/src/utils/clientRadios.ts rename to app/src/utils/clientRadios.ts diff --git a/front/src/utils/color.ts b/app/src/utils/color.ts similarity index 100% rename from front/src/utils/color.ts rename to app/src/utils/color.ts diff --git a/front/src/utils/event-validators.ts b/app/src/utils/event-validators.ts similarity index 100% rename from front/src/utils/event-validators.ts rename to app/src/utils/event-validators.ts diff --git a/front/src/utils/filters.ts b/app/src/utils/filters.ts similarity index 100% rename from front/src/utils/filters.ts rename to app/src/utils/filters.ts diff --git a/front/src/utils/index.ts b/app/src/utils/index.ts similarity index 100% rename from front/src/utils/index.ts rename to app/src/utils/index.ts diff --git a/front/src/utils/search.ts b/app/src/utils/search.ts similarity index 100% rename from front/src/utils/search.ts rename to app/src/utils/search.ts diff --git a/front/src/utils/time.ts b/app/src/utils/time.ts similarity index 100% rename from front/src/utils/time.ts rename to app/src/utils/time.ts diff --git a/front/src/utils/utils.ts b/app/src/utils/utils.ts similarity index 100% rename from front/src/utils/utils.ts rename to app/src/utils/utils.ts diff --git a/front/src/views/ChooseInstance.vue b/app/src/views/ChooseInstance.vue similarity index 100% rename from front/src/views/ChooseInstance.vue rename to app/src/views/ChooseInstance.vue diff --git a/front/src/views/Notifications.vue b/app/src/views/Notifications.vue similarity index 100% rename from front/src/views/Notifications.vue rename to app/src/views/Notifications.vue diff --git a/front/src/views/Search.vue b/app/src/views/Search.vue similarity index 100% rename from front/src/views/Search.vue rename to app/src/views/Search.vue diff --git a/front/src/views/admin/ChannelDetail.vue b/app/src/views/admin/ChannelDetail.vue similarity index 100% rename from front/src/views/admin/ChannelDetail.vue rename to app/src/views/admin/ChannelDetail.vue diff --git a/front/src/views/admin/CommonList.vue b/app/src/views/admin/CommonList.vue similarity index 100% rename from front/src/views/admin/CommonList.vue rename to app/src/views/admin/CommonList.vue diff --git a/front/src/views/admin/Settings.vue b/app/src/views/admin/Settings.vue similarity index 100% rename from front/src/views/admin/Settings.vue rename to app/src/views/admin/Settings.vue diff --git a/front/src/views/admin/library/AlbumDetail.vue b/app/src/views/admin/library/AlbumDetail.vue similarity index 100% rename from front/src/views/admin/library/AlbumDetail.vue rename to app/src/views/admin/library/AlbumDetail.vue diff --git a/front/src/views/admin/library/ArtistDetail.vue b/app/src/views/admin/library/ArtistDetail.vue similarity index 100% rename from front/src/views/admin/library/ArtistDetail.vue rename to app/src/views/admin/library/ArtistDetail.vue diff --git a/front/src/views/admin/library/Base.vue b/app/src/views/admin/library/Base.vue similarity index 100% rename from front/src/views/admin/library/Base.vue rename to app/src/views/admin/library/Base.vue diff --git a/front/src/views/admin/library/EditsList.vue b/app/src/views/admin/library/EditsList.vue similarity index 100% rename from front/src/views/admin/library/EditsList.vue rename to app/src/views/admin/library/EditsList.vue diff --git a/front/src/views/admin/library/LibraryDetail.vue b/app/src/views/admin/library/LibraryDetail.vue similarity index 100% rename from front/src/views/admin/library/LibraryDetail.vue rename to app/src/views/admin/library/LibraryDetail.vue diff --git a/front/src/views/admin/library/TagDetail.vue b/app/src/views/admin/library/TagDetail.vue similarity index 100% rename from front/src/views/admin/library/TagDetail.vue rename to app/src/views/admin/library/TagDetail.vue diff --git a/front/src/views/admin/library/TrackDetail.vue b/app/src/views/admin/library/TrackDetail.vue similarity index 100% rename from front/src/views/admin/library/TrackDetail.vue rename to app/src/views/admin/library/TrackDetail.vue diff --git a/front/src/views/admin/library/UploadDetail.vue b/app/src/views/admin/library/UploadDetail.vue similarity index 100% rename from front/src/views/admin/library/UploadDetail.vue rename to app/src/views/admin/library/UploadDetail.vue diff --git a/front/src/views/admin/moderation/AccountsDetail.vue b/app/src/views/admin/moderation/AccountsDetail.vue similarity index 100% rename from front/src/views/admin/moderation/AccountsDetail.vue rename to app/src/views/admin/moderation/AccountsDetail.vue diff --git a/front/src/views/admin/moderation/Base.vue b/app/src/views/admin/moderation/Base.vue similarity index 100% rename from front/src/views/admin/moderation/Base.vue rename to app/src/views/admin/moderation/Base.vue diff --git a/front/src/views/admin/moderation/DomainsDetail.vue b/app/src/views/admin/moderation/DomainsDetail.vue similarity index 100% rename from front/src/views/admin/moderation/DomainsDetail.vue rename to app/src/views/admin/moderation/DomainsDetail.vue diff --git a/front/src/views/admin/moderation/DomainsList.vue b/app/src/views/admin/moderation/DomainsList.vue similarity index 100% rename from front/src/views/admin/moderation/DomainsList.vue rename to app/src/views/admin/moderation/DomainsList.vue diff --git a/front/src/views/admin/moderation/ReportDetail.vue b/app/src/views/admin/moderation/ReportDetail.vue similarity index 100% rename from front/src/views/admin/moderation/ReportDetail.vue rename to app/src/views/admin/moderation/ReportDetail.vue diff --git a/front/src/views/admin/moderation/ReportsList.vue b/app/src/views/admin/moderation/ReportsList.vue similarity index 100% rename from front/src/views/admin/moderation/ReportsList.vue rename to app/src/views/admin/moderation/ReportsList.vue diff --git a/front/src/views/admin/moderation/RequestDetail.vue b/app/src/views/admin/moderation/RequestDetail.vue similarity index 100% rename from front/src/views/admin/moderation/RequestDetail.vue rename to app/src/views/admin/moderation/RequestDetail.vue diff --git a/front/src/views/admin/moderation/RequestsList.vue b/app/src/views/admin/moderation/RequestsList.vue similarity index 100% rename from front/src/views/admin/moderation/RequestsList.vue rename to app/src/views/admin/moderation/RequestsList.vue diff --git a/front/src/views/admin/users/Base.vue b/app/src/views/admin/users/Base.vue similarity index 100% rename from front/src/views/admin/users/Base.vue rename to app/src/views/admin/users/Base.vue diff --git a/front/src/views/auth/Callback.vue b/app/src/views/auth/Callback.vue similarity index 100% rename from front/src/views/auth/Callback.vue rename to app/src/views/auth/Callback.vue diff --git a/front/src/views/auth/EmailConfirm.vue b/app/src/views/auth/EmailConfirm.vue similarity index 100% rename from front/src/views/auth/EmailConfirm.vue rename to app/src/views/auth/EmailConfirm.vue diff --git a/front/src/views/auth/Login.vue b/app/src/views/auth/Login.vue similarity index 100% rename from front/src/views/auth/Login.vue rename to app/src/views/auth/Login.vue diff --git a/front/src/views/auth/ManageUploads.vue b/app/src/views/auth/ManageUploads.vue similarity index 100% rename from front/src/views/auth/ManageUploads.vue rename to app/src/views/auth/ManageUploads.vue diff --git a/front/src/views/auth/PasswordReset.vue b/app/src/views/auth/PasswordReset.vue similarity index 100% rename from front/src/views/auth/PasswordReset.vue rename to app/src/views/auth/PasswordReset.vue diff --git a/front/src/views/auth/PasswordResetConfirm.vue b/app/src/views/auth/PasswordResetConfirm.vue similarity index 100% rename from front/src/views/auth/PasswordResetConfirm.vue rename to app/src/views/auth/PasswordResetConfirm.vue diff --git a/front/src/views/auth/Plugins.vue b/app/src/views/auth/Plugins.vue similarity index 100% rename from front/src/views/auth/Plugins.vue rename to app/src/views/auth/Plugins.vue diff --git a/front/src/views/auth/ProfileActivity.vue b/app/src/views/auth/ProfileActivity.vue similarity index 100% rename from front/src/views/auth/ProfileActivity.vue rename to app/src/views/auth/ProfileActivity.vue diff --git a/front/src/views/auth/ProfileBase.vue b/app/src/views/auth/ProfileBase.vue similarity index 100% rename from front/src/views/auth/ProfileBase.vue rename to app/src/views/auth/ProfileBase.vue diff --git a/front/src/views/auth/ProfileOverview.vue b/app/src/views/auth/ProfileOverview.vue similarity index 100% rename from front/src/views/auth/ProfileOverview.vue rename to app/src/views/auth/ProfileOverview.vue diff --git a/front/src/views/auth/Signup.vue b/app/src/views/auth/Signup.vue similarity index 100% rename from front/src/views/auth/Signup.vue rename to app/src/views/auth/Signup.vue diff --git a/front/src/views/channels/DetailBase.vue b/app/src/views/channels/DetailBase.vue similarity index 100% rename from front/src/views/channels/DetailBase.vue rename to app/src/views/channels/DetailBase.vue diff --git a/front/src/views/channels/DetailEpisodes.vue b/app/src/views/channels/DetailEpisodes.vue similarity index 100% rename from front/src/views/channels/DetailEpisodes.vue rename to app/src/views/channels/DetailEpisodes.vue diff --git a/front/src/views/channels/DetailOverview.vue b/app/src/views/channels/DetailOverview.vue similarity index 100% rename from front/src/views/channels/DetailOverview.vue rename to app/src/views/channels/DetailOverview.vue diff --git a/front/src/views/channels/List.vue b/app/src/views/channels/List.vue similarity index 100% rename from front/src/views/channels/List.vue rename to app/src/views/channels/List.vue diff --git a/front/src/views/channels/SubscriptionsList.vue b/app/src/views/channels/SubscriptionsList.vue similarity index 100% rename from front/src/views/channels/SubscriptionsList.vue rename to app/src/views/channels/SubscriptionsList.vue diff --git a/front/src/views/content/Base.vue b/app/src/views/content/Base.vue similarity index 100% rename from front/src/views/content/Base.vue rename to app/src/views/content/Base.vue diff --git a/front/src/views/content/Home.vue b/app/src/views/content/Home.vue similarity index 100% rename from front/src/views/content/Home.vue rename to app/src/views/content/Home.vue diff --git a/front/src/views/content/channels/CardUpload.vue b/app/src/views/content/channels/CardUpload.vue similarity index 100% rename from front/src/views/content/channels/CardUpload.vue rename to app/src/views/content/channels/CardUpload.vue diff --git a/front/src/views/content/libraries/Card.vue b/app/src/views/content/libraries/Card.vue similarity index 100% rename from front/src/views/content/libraries/Card.vue rename to app/src/views/content/libraries/Card.vue diff --git a/front/src/views/content/libraries/CardUpload.vue b/app/src/views/content/libraries/CardUpload.vue similarity index 100% rename from front/src/views/content/libraries/CardUpload.vue rename to app/src/views/content/libraries/CardUpload.vue diff --git a/front/src/views/content/libraries/Files.vue b/app/src/views/content/libraries/Files.vue similarity index 100% rename from front/src/views/content/libraries/Files.vue rename to app/src/views/content/libraries/Files.vue diff --git a/front/src/views/content/libraries/FilesTable.vue b/app/src/views/content/libraries/FilesTable.vue similarity index 100% rename from front/src/views/content/libraries/FilesTable.vue rename to app/src/views/content/libraries/FilesTable.vue diff --git a/front/src/views/content/libraries/Form.vue b/app/src/views/content/libraries/Form.vue similarity index 100% rename from front/src/views/content/libraries/Form.vue rename to app/src/views/content/libraries/Form.vue diff --git a/front/src/views/content/libraries/Home.vue b/app/src/views/content/libraries/Home.vue similarity index 100% rename from front/src/views/content/libraries/Home.vue rename to app/src/views/content/libraries/Home.vue diff --git a/front/src/views/content/libraries/Quota.vue b/app/src/views/content/libraries/Quota.vue similarity index 100% rename from front/src/views/content/libraries/Quota.vue rename to app/src/views/content/libraries/Quota.vue diff --git a/front/src/views/content/remote/Card.vue b/app/src/views/content/remote/Card.vue similarity index 100% rename from front/src/views/content/remote/Card.vue rename to app/src/views/content/remote/Card.vue diff --git a/front/src/views/content/remote/Home.vue b/app/src/views/content/remote/Home.vue similarity index 100% rename from front/src/views/content/remote/Home.vue rename to app/src/views/content/remote/Home.vue diff --git a/front/src/views/content/remote/ScanForm.vue b/app/src/views/content/remote/ScanForm.vue similarity index 100% rename from front/src/views/content/remote/ScanForm.vue rename to app/src/views/content/remote/ScanForm.vue diff --git a/front/src/views/content/upload/Home.vue b/app/src/views/content/upload/Home.vue similarity index 100% rename from front/src/views/content/upload/Home.vue rename to app/src/views/content/upload/Home.vue diff --git a/front/src/views/library/DetailAlbums.vue b/app/src/views/library/DetailAlbums.vue similarity index 100% rename from front/src/views/library/DetailAlbums.vue rename to app/src/views/library/DetailAlbums.vue diff --git a/front/src/views/library/DetailOverview.vue b/app/src/views/library/DetailOverview.vue similarity index 100% rename from front/src/views/library/DetailOverview.vue rename to app/src/views/library/DetailOverview.vue diff --git a/front/src/views/library/DetailTracks.vue b/app/src/views/library/DetailTracks.vue similarity index 100% rename from front/src/views/library/DetailTracks.vue rename to app/src/views/library/DetailTracks.vue diff --git a/front/src/views/library/Edit.vue b/app/src/views/library/Edit.vue similarity index 100% rename from front/src/views/library/Edit.vue rename to app/src/views/library/Edit.vue diff --git a/front/src/views/library/LibraryBase.vue b/app/src/views/library/LibraryBase.vue similarity index 100% rename from front/src/views/library/LibraryBase.vue rename to app/src/views/library/LibraryBase.vue diff --git a/front/src/views/library/Upload.vue b/app/src/views/library/Upload.vue similarity index 100% rename from front/src/views/library/Upload.vue rename to app/src/views/library/Upload.vue diff --git a/front/src/views/playlists/Detail.vue b/app/src/views/playlists/Detail.vue similarity index 100% rename from front/src/views/playlists/Detail.vue rename to app/src/views/playlists/Detail.vue diff --git a/front/src/views/playlists/List.vue b/app/src/views/playlists/List.vue similarity index 100% rename from front/src/views/playlists/List.vue rename to app/src/views/playlists/List.vue diff --git a/front/src/views/radios/Detail.vue b/app/src/views/radios/Detail.vue similarity index 100% rename from front/src/views/radios/Detail.vue rename to app/src/views/radios/Detail.vue diff --git a/front/stats.json b/app/stats.json similarity index 100% rename from front/stats.json rename to app/stats.json diff --git a/front/tauri/.gitignore b/app/tauri/.gitignore similarity index 100% rename from front/tauri/.gitignore rename to app/tauri/.gitignore diff --git a/front/tauri/Cargo.lock b/app/tauri/Cargo.lock similarity index 100% rename from front/tauri/Cargo.lock rename to app/tauri/Cargo.lock diff --git a/front/tauri/Cargo.toml b/app/tauri/Cargo.toml similarity index 100% rename from front/tauri/Cargo.toml rename to app/tauri/Cargo.toml diff --git a/front/tauri/build.rs b/app/tauri/build.rs similarity index 100% rename from front/tauri/build.rs rename to app/tauri/build.rs diff --git a/front/tauri/capabilities/migrated.json b/app/tauri/capabilities/migrated.json similarity index 100% rename from front/tauri/capabilities/migrated.json rename to app/tauri/capabilities/migrated.json diff --git a/front/tauri/capabilities/oauth.json b/app/tauri/capabilities/oauth.json similarity index 100% rename from front/tauri/capabilities/oauth.json rename to app/tauri/capabilities/oauth.json diff --git a/front/tauri/favicon.png b/app/tauri/favicon.png similarity index 100% rename from front/tauri/favicon.png rename to app/tauri/favicon.png diff --git a/front/tauri/favicon.svg b/app/tauri/favicon.svg similarity index 100% rename from front/tauri/favicon.svg rename to app/tauri/favicon.svg diff --git a/front/tauri/icons/128x128.png b/app/tauri/icons/128x128.png similarity index 100% rename from front/tauri/icons/128x128.png rename to app/tauri/icons/128x128.png diff --git a/front/tauri/icons/128x128@2x.png b/app/tauri/icons/128x128@2x.png similarity index 100% rename from front/tauri/icons/128x128@2x.png rename to app/tauri/icons/128x128@2x.png diff --git a/front/tauri/icons/32x32.png b/app/tauri/icons/32x32.png similarity index 100% rename from front/tauri/icons/32x32.png rename to app/tauri/icons/32x32.png diff --git a/front/tauri/icons/Square107x107Logo.png b/app/tauri/icons/Square107x107Logo.png similarity index 100% rename from front/tauri/icons/Square107x107Logo.png rename to app/tauri/icons/Square107x107Logo.png diff --git a/front/tauri/icons/Square142x142Logo.png b/app/tauri/icons/Square142x142Logo.png similarity index 100% rename from front/tauri/icons/Square142x142Logo.png rename to app/tauri/icons/Square142x142Logo.png diff --git a/front/tauri/icons/Square150x150Logo.png b/app/tauri/icons/Square150x150Logo.png similarity index 100% rename from front/tauri/icons/Square150x150Logo.png rename to app/tauri/icons/Square150x150Logo.png diff --git a/front/tauri/icons/Square284x284Logo.png b/app/tauri/icons/Square284x284Logo.png similarity index 100% rename from front/tauri/icons/Square284x284Logo.png rename to app/tauri/icons/Square284x284Logo.png diff --git a/front/tauri/icons/Square30x30Logo.png b/app/tauri/icons/Square30x30Logo.png similarity index 100% rename from front/tauri/icons/Square30x30Logo.png rename to app/tauri/icons/Square30x30Logo.png diff --git a/front/tauri/icons/Square310x310Logo.png b/app/tauri/icons/Square310x310Logo.png similarity index 100% rename from front/tauri/icons/Square310x310Logo.png rename to app/tauri/icons/Square310x310Logo.png diff --git a/front/tauri/icons/Square44x44Logo.png b/app/tauri/icons/Square44x44Logo.png similarity index 100% rename from front/tauri/icons/Square44x44Logo.png rename to app/tauri/icons/Square44x44Logo.png diff --git a/front/tauri/icons/Square71x71Logo.png b/app/tauri/icons/Square71x71Logo.png similarity index 100% rename from front/tauri/icons/Square71x71Logo.png rename to app/tauri/icons/Square71x71Logo.png diff --git a/front/tauri/icons/Square89x89Logo.png b/app/tauri/icons/Square89x89Logo.png similarity index 100% rename from front/tauri/icons/Square89x89Logo.png rename to app/tauri/icons/Square89x89Logo.png diff --git a/front/tauri/icons/StoreLogo.png b/app/tauri/icons/StoreLogo.png similarity index 100% rename from front/tauri/icons/StoreLogo.png rename to app/tauri/icons/StoreLogo.png diff --git a/front/tauri/icons/icon.icns b/app/tauri/icons/icon.icns similarity index 100% rename from front/tauri/icons/icon.icns rename to app/tauri/icons/icon.icns diff --git a/front/tauri/icons/icon.ico b/app/tauri/icons/icon.ico similarity index 100% rename from front/tauri/icons/icon.ico rename to app/tauri/icons/icon.ico diff --git a/front/tauri/icons/icon.png b/app/tauri/icons/icon.png similarity index 100% rename from front/tauri/icons/icon.png rename to app/tauri/icons/icon.png diff --git a/front/tauri/rust-toolchain.toml b/app/tauri/rust-toolchain.toml similarity index 100% rename from front/tauri/rust-toolchain.toml rename to app/tauri/rust-toolchain.toml diff --git a/front/tauri/src/lib.rs b/app/tauri/src/lib.rs similarity index 100% rename from front/tauri/src/lib.rs rename to app/tauri/src/lib.rs diff --git a/front/tauri/src/main.rs b/app/tauri/src/main.rs similarity index 100% rename from front/tauri/src/main.rs rename to app/tauri/src/main.rs diff --git a/front/tauri/tauri.conf.json b/app/tauri/tauri.conf.json similarity index 100% rename from front/tauri/tauri.conf.json rename to app/tauri/tauri.conf.json diff --git a/front/test/msw-server.ts b/app/test/msw-server.ts similarity index 100% rename from front/test/msw-server.ts rename to app/test/msw-server.ts diff --git a/front/test/setup/mock-audio-context.ts b/app/test/setup/mock-audio-context.ts similarity index 100% rename from front/test/setup/mock-audio-context.ts rename to app/test/setup/mock-audio-context.ts diff --git a/front/test/setup/mock-lru-cache.ts b/app/test/setup/mock-lru-cache.ts similarity index 100% rename from front/test/setup/mock-lru-cache.ts rename to app/test/setup/mock-lru-cache.ts diff --git a/front/test/setup/mock-server.ts b/app/test/setup/mock-server.ts similarity index 100% rename from front/test/setup/mock-server.ts rename to app/test/setup/mock-server.ts diff --git a/front/test/setup/mock-vue-i18n.ts b/app/test/setup/mock-vue-i18n.ts similarity index 100% rename from front/test/setup/mock-vue-i18n.ts rename to app/test/setup/mock-vue-i18n.ts diff --git a/front/test/specs/composables/audio/queue.test.ts b/app/test/specs/composables/audio/queue.test.ts similarity index 100% rename from front/test/specs/composables/audio/queue.test.ts rename to app/test/specs/composables/audio/queue.test.ts diff --git a/front/test/specs/composables/audio/tracks.test.ts b/app/test/specs/composables/audio/tracks.test.ts similarity index 100% rename from front/test/specs/composables/audio/tracks.test.ts rename to app/test/specs/composables/audio/tracks.test.ts diff --git a/front/test/specs/composables/tauri.spec.ts b/app/test/specs/composables/tauri.spec.ts similarity index 100% rename from front/test/specs/composables/tauri.spec.ts rename to app/test/specs/composables/tauri.spec.ts diff --git a/front/test/specs/composables/useMarkdown.test.ts b/app/test/specs/composables/useMarkdown.test.ts similarity index 100% rename from front/test/specs/composables/useMarkdown.test.ts rename to app/test/specs/composables/useMarkdown.test.ts diff --git a/front/test/specs/store/instance.spec.ts b/app/test/specs/store/instance.spec.ts similarity index 100% rename from front/test/specs/store/instance.spec.ts rename to app/test/specs/store/instance.spec.ts diff --git a/front/tsconfig.json b/app/tsconfig.json similarity index 100% rename from front/tsconfig.json rename to app/tsconfig.json diff --git a/front/ui-docs/.vitepress/config.ts b/app/ui-docs/.vitepress/config.ts similarity index 100% rename from front/ui-docs/.vitepress/config.ts rename to app/ui-docs/.vitepress/config.ts diff --git a/front/ui-docs/.vitepress/theme/Theme.vue b/app/ui-docs/.vitepress/theme/Theme.vue similarity index 100% rename from front/ui-docs/.vitepress/theme/Theme.vue rename to app/ui-docs/.vitepress/theme/Theme.vue diff --git a/front/ui-docs/.vitepress/theme/index.ts b/app/ui-docs/.vitepress/theme/index.ts similarity index 100% rename from front/ui-docs/.vitepress/theme/index.ts rename to app/ui-docs/.vitepress/theme/index.ts diff --git a/front/ui-docs/components/ui/activity.md b/app/ui-docs/components/ui/activity.md similarity index 100% rename from front/ui-docs/components/ui/activity.md rename to app/ui-docs/components/ui/activity.md diff --git a/front/ui-docs/components/ui/alert.md b/app/ui-docs/components/ui/alert.md similarity index 100% rename from front/ui-docs/components/ui/alert.md rename to app/ui-docs/components/ui/alert.md diff --git a/front/ui-docs/components/ui/button.md b/app/ui-docs/components/ui/button.md similarity index 100% rename from front/ui-docs/components/ui/button.md rename to app/ui-docs/components/ui/button.md diff --git a/front/ui-docs/components/ui/button/options.md b/app/ui-docs/components/ui/button/options.md similarity index 100% rename from front/ui-docs/components/ui/button/options.md rename to app/ui-docs/components/ui/button/options.md diff --git a/front/ui-docs/components/ui/button/play.md b/app/ui-docs/components/ui/button/play.md similarity index 100% rename from front/ui-docs/components/ui/button/play.md rename to app/ui-docs/components/ui/button/play.md diff --git a/front/ui-docs/components/ui/card.md b/app/ui-docs/components/ui/card.md similarity index 100% rename from front/ui-docs/components/ui/card.md rename to app/ui-docs/components/ui/card.md diff --git a/front/ui-docs/components/ui/heading.md b/app/ui-docs/components/ui/heading.md similarity index 100% rename from front/ui-docs/components/ui/heading.md rename to app/ui-docs/components/ui/heading.md diff --git a/front/ui-docs/components/ui/input.md b/app/ui-docs/components/ui/input.md similarity index 100% rename from front/ui-docs/components/ui/input.md rename to app/ui-docs/components/ui/input.md diff --git a/front/ui-docs/components/ui/layout.md b/app/ui-docs/components/ui/layout.md similarity index 100% rename from front/ui-docs/components/ui/layout.md rename to app/ui-docs/components/ui/layout.md diff --git a/front/ui-docs/components/ui/layout/columns.md b/app/ui-docs/components/ui/layout/columns.md similarity index 100% rename from front/ui-docs/components/ui/layout/columns.md rename to app/ui-docs/components/ui/layout/columns.md diff --git a/front/ui-docs/components/ui/layout/flex.md b/app/ui-docs/components/ui/layout/flex.md similarity index 100% rename from front/ui-docs/components/ui/layout/flex.md rename to app/ui-docs/components/ui/layout/flex.md diff --git a/front/ui-docs/components/ui/layout/grid.md b/app/ui-docs/components/ui/layout/grid.md similarity index 100% rename from front/ui-docs/components/ui/layout/grid.md rename to app/ui-docs/components/ui/layout/grid.md diff --git a/front/ui-docs/components/ui/layout/header.md b/app/ui-docs/components/ui/layout/header.md similarity index 100% rename from front/ui-docs/components/ui/layout/header.md rename to app/ui-docs/components/ui/layout/header.md diff --git a/front/ui-docs/components/ui/layout/image.png b/app/ui-docs/components/ui/layout/image.png similarity index 100% rename from front/ui-docs/components/ui/layout/image.png rename to app/ui-docs/components/ui/layout/image.png diff --git a/front/ui-docs/components/ui/layout/section.md b/app/ui-docs/components/ui/layout/section.md similarity index 100% rename from front/ui-docs/components/ui/layout/section.md rename to app/ui-docs/components/ui/layout/section.md diff --git a/front/ui-docs/components/ui/layout/spacer.md b/app/ui-docs/components/ui/layout/spacer.md similarity index 100% rename from front/ui-docs/components/ui/layout/spacer.md rename to app/ui-docs/components/ui/layout/spacer.md diff --git a/front/ui-docs/components/ui/layout/stack.md b/app/ui-docs/components/ui/layout/stack.md similarity index 100% rename from front/ui-docs/components/ui/layout/stack.md rename to app/ui-docs/components/ui/layout/stack.md diff --git a/front/ui-docs/components/ui/layout/table.md b/app/ui-docs/components/ui/layout/table.md similarity index 100% rename from front/ui-docs/components/ui/layout/table.md rename to app/ui-docs/components/ui/layout/table.md diff --git a/front/ui-docs/components/ui/link.md b/app/ui-docs/components/ui/link.md similarity index 100% rename from front/ui-docs/components/ui/link.md rename to app/ui-docs/components/ui/link.md diff --git a/front/ui-docs/components/ui/loader.md b/app/ui-docs/components/ui/loader.md similarity index 100% rename from front/ui-docs/components/ui/loader.md rename to app/ui-docs/components/ui/loader.md diff --git a/front/ui-docs/components/ui/modal.md b/app/ui-docs/components/ui/modal.md similarity index 100% rename from front/ui-docs/components/ui/modal.md rename to app/ui-docs/components/ui/modal.md diff --git a/front/ui-docs/components/ui/nav.md b/app/ui-docs/components/ui/nav.md similarity index 100% rename from front/ui-docs/components/ui/nav.md rename to app/ui-docs/components/ui/nav.md diff --git a/front/ui-docs/components/ui/pagination.md b/app/ui-docs/components/ui/pagination.md similarity index 100% rename from front/ui-docs/components/ui/pagination.md rename to app/ui-docs/components/ui/pagination.md diff --git a/front/ui-docs/components/ui/pill.md b/app/ui-docs/components/ui/pill.md similarity index 100% rename from front/ui-docs/components/ui/pill.md rename to app/ui-docs/components/ui/pill.md diff --git a/front/ui-docs/components/ui/pills.md b/app/ui-docs/components/ui/pills.md similarity index 100% rename from front/ui-docs/components/ui/pills.md rename to app/ui-docs/components/ui/pills.md diff --git a/front/ui-docs/components/ui/popover.md b/app/ui-docs/components/ui/popover.md similarity index 100% rename from front/ui-docs/components/ui/popover.md rename to app/ui-docs/components/ui/popover.md diff --git a/front/ui-docs/components/ui/popover/image.png b/app/ui-docs/components/ui/popover/image.png similarity index 100% rename from front/ui-docs/components/ui/popover/image.png rename to app/ui-docs/components/ui/popover/image.png diff --git a/front/ui-docs/components/ui/slider.md b/app/ui-docs/components/ui/slider.md similarity index 100% rename from front/ui-docs/components/ui/slider.md rename to app/ui-docs/components/ui/slider.md diff --git a/front/ui-docs/components/ui/tabs.md b/app/ui-docs/components/ui/tabs.md similarity index 100% rename from front/ui-docs/components/ui/tabs.md rename to app/ui-docs/components/ui/tabs.md diff --git a/front/ui-docs/components/ui/textarea.md b/app/ui-docs/components/ui/textarea.md similarity index 100% rename from front/ui-docs/components/ui/textarea.md rename to app/ui-docs/components/ui/textarea.md diff --git a/front/ui-docs/components/ui/toc.md b/app/ui-docs/components/ui/toc.md similarity index 100% rename from front/ui-docs/components/ui/toc.md rename to app/ui-docs/components/ui/toc.md diff --git a/front/ui-docs/components/ui/toggle.md b/app/ui-docs/components/ui/toggle.md similarity index 100% rename from front/ui-docs/components/ui/toggle.md rename to app/ui-docs/components/ui/toggle.md diff --git a/front/ui-docs/contributing.md b/app/ui-docs/contributing.md similarity index 100% rename from front/ui-docs/contributing.md rename to app/ui-docs/contributing.md diff --git a/front/ui-docs/designing-pages.md b/app/ui-docs/designing-pages.md similarity index 100% rename from front/ui-docs/designing-pages.md rename to app/ui-docs/designing-pages.md diff --git a/front/ui-docs/image-1.png b/app/ui-docs/image-1.png similarity index 100% rename from front/ui-docs/image-1.png rename to app/ui-docs/image-1.png diff --git a/front/ui-docs/image.png b/app/ui-docs/image.png similarity index 100% rename from front/ui-docs/image.png rename to app/ui-docs/image.png diff --git a/front/ui-docs/index.md b/app/ui-docs/index.md similarity index 91% rename from front/ui-docs/index.md rename to app/ui-docs/index.md index f81bff885..1e4286170 100644 --- a/front/ui-docs/index.md +++ b/app/ui-docs/index.md @@ -57,6 +57,6 @@ Check out the design system on our Penpot. vitepress loads some stylesheets on its own, so the styles you see here may differ from those in the funkwhale app or on the homepage and the blog. -You can find these stylesheets in the directory `front/node_modules/vitepress/dist/client/theme-default/styles/`. +You can find these stylesheets in the directory `app/node_modules/vitepress/dist/client/theme-default/styles/`. ::: diff --git a/front/ui-docs/navigation.md b/app/ui-docs/navigation.md similarity index 100% rename from front/ui-docs/navigation.md rename to app/ui-docs/navigation.md diff --git a/front/ui-docs/using-alignment.md b/app/ui-docs/using-alignment.md similarity index 100% rename from front/ui-docs/using-alignment.md rename to app/ui-docs/using-alignment.md diff --git a/front/ui-docs/using-color.md b/app/ui-docs/using-color.md similarity index 99% rename from front/ui-docs/using-color.md rename to app/ui-docs/using-color.md index a102e8582..1e862c016 100644 --- a/front/ui-docs/using-color.md +++ b/app/ui-docs/using-color.md @@ -502,7 +502,7 @@ For each semantic color, we set a foreground and a background. In addition, we n ## Theme color definitions -All colors are defined in `front/src/style/colors.scss`. +All colors are defined in `app/src/style/colors.scss`. Its structure is as follows: diff --git a/front/ui-docs/using-components.md b/app/ui-docs/using-components.md similarity index 100% rename from front/ui-docs/using-components.md rename to app/ui-docs/using-components.md diff --git a/front/ui-docs/using-width.md b/app/ui-docs/using-width.md similarity index 100% rename from front/ui-docs/using-width.md rename to app/ui-docs/using-width.md diff --git a/front/ui-docs/vite.config.ts b/app/ui-docs/vite.config.ts similarity index 100% rename from front/ui-docs/vite.config.ts rename to app/ui-docs/vite.config.ts diff --git a/front/vite.config.ts b/app/vite.config.ts similarity index 100% rename from front/vite.config.ts rename to app/vite.config.ts diff --git a/front/yarn.lock b/app/yarn.lock similarity index 100% rename from front/yarn.lock rename to app/yarn.lock diff --git a/compose/app.nginx.yml b/compose/app.nginx.yml index 018325b9d..d4c1e06fa 100644 --- a/compose/app.nginx.yml +++ b/compose/app.nginx.yml @@ -12,8 +12,8 @@ services: - FUNKWHALE_API_HOST - FUNKWHALE_API_PORT - - FUNKWHALE_FRONT_HOST - - FUNKWHALE_FRONT_PORT + - FUNKWHALE_APP_HOST + - FUNKWHALE_APP_PORT - NGINX_MAX_BODY_SIZE @@ -25,7 +25,7 @@ services: - ./etc/nginx/conf.dev:/etc/nginx/templates/default.conf.template:ro - ../deploy/funkwhale_proxy.conf:/etc/nginx/funkwhale_proxy.conf:ro - - ../front:/frontend:ro + # - ../app:/funkwhale-app:ro # use for testing deployment scenarios - ../.state/staticfiles:/usr/share/nginx/html/staticfiles:ro - ../.state/media:/protected/media:ro - ../.state/${COMPOSE_PROJECT_NAME:-funkwhale}/media:/data/media:ro diff --git a/compose/app.vue.yml b/compose/app.vue.yml index 0a2597821..ac6275b5b 100644 --- a/compose/app.vue.yml +++ b/compose/app.vue.yml @@ -2,7 +2,7 @@ services: app: image: funkwhale-app build: - context: ../front + context: ../app dockerfile: Dockerfile.dev command: 'yarn dev --host' ports: @@ -10,7 +10,7 @@ services: networks: - internal volumes: - - '../front:/app' + - '../app:/app' - '/app/node_modules' environment: - HOST diff --git a/compose/docs.ui.yml b/compose/docs.ui.yml index cc724e90b..54b29e1d4 100644 --- a/compose/docs.ui.yml +++ b/compose/docs.ui.yml @@ -1,14 +1,14 @@ services: ui: build: - context: ../front + context: ../app dockerfile: Dockerfile.dev command: yarn dev:docs --host 0.0.0.0 expose: ['5173'] ports: - '8003:5173' volumes: - - '../front:/app' + - '../app:/app' - '/app/node_modules' networks: ['web'] labels: diff --git a/compose/etc/nginx/conf.dev b/compose/etc/nginx/conf.dev index e867e2277..c731d8886 100644 --- a/compose/etc/nginx/conf.dev +++ b/compose/etc/nginx/conf.dev @@ -3,8 +3,8 @@ upstream funkwhale-api { server ${FUNKWHALE_API_HOST}:${FUNKWHALE_API_PORT}; } -upstream funkwhale-front { - server ${FUNKWHALE_FRONT_HOST}:${FUNKWHALE_FRONT_PORT}; +upstream funkwhale-app { + server ${FUNKWHALE_APP_HOST}:${FUNKWHALE_APP_PORT}; } # Required for websocket support. @@ -76,7 +76,7 @@ server { location ~ ^/@(vite-plugin-pwa|vite|id)/ { include /etc/nginx/funkwhale_proxy.conf; - proxy_pass http://funkwhale-front; + proxy_pass http://funkwhale-app; } location /@ { @@ -87,11 +87,11 @@ server { location / { expires 1d; include /etc/nginx/funkwhale_proxy.conf; - proxy_pass http://funkwhale-front; + proxy_pass http://funkwhale-app; } location = /embed.html { - proxy_pass http://funkwhale-front; + proxy_pass http://funkwhale-app; add_header Content-Security-Policy "connect-src https: http: 'self'; default-src 'self'; script-src 'self' unpkg.com 'unsafe-inline' 'unsafe-eval'; style-src https: http: 'self' 'unsafe-inline'; img-src https: http: 'self' data:; font-src https: http: 'self' data:; object-src 'none'; media-src https: http: 'self' data:"; add_header Referrer-Policy "strict-origin-when-cross-origin"; diff --git a/deploy/apache.conf b/deploy/apache.conf index a95e6a55d..54dce27c0 100644 --- a/deploy/apache.conf +++ b/deploy/apache.conf @@ -89,15 +89,15 @@ Define MEDIA_DIRECTORY_PATH ${FUNKWHALE_ROOT_PATH}/data/media ProxyPassReverse ${funkwhale-api}/.well-known/ - + ProxyPass "!" - Alias /front ${FUNKWHALE_ROOT_PATH}/front/dist + Alias /app ${FUNKWHALE_ROOT_PATH}/app/dist ProxyPass "!" - Alias /assets ${FUNKWHALE_ROOT_PATH}/front/dist/assets + Alias /assets ${FUNKWHALE_ROOT_PATH}/app/dist/assets ProxyPass "!" @@ -114,14 +114,14 @@ Define MEDIA_DIRECTORY_PATH ${FUNKWHALE_ROOT_PATH}/data/media ProxyPass ${funkwhale-api-ws}/api/v1/activity - # Setting appropriate access levels to serve frontend + # Setting appropriate access levels to serve the app Options FollowSymLinks AllowOverride None Require all granted - + Options FollowSymLinks AllowOverride None Require all granted diff --git a/deploy/docker-compose.yml b/deploy/docker-compose.yml index 615944a2f..1f643b035 100644 --- a/deploy/docker-compose.yml +++ b/deploy/docker-compose.yml @@ -69,9 +69,9 @@ services: - '${MEDIA_ROOT}:${MEDIA_ROOT}' - '${STATIC_ROOT}:${STATIC_ROOT}' - front: + app: restart: unless-stopped - image: funkwhale/front:${FUNKWHALE_VERSION:-latest} + image: funkwhale/app:${FUNKWHALE_VERSION:-latest} depends_on: - api env_file: diff --git a/deploy/docker.funkwhale_proxy.conf b/deploy/docker.funkwhale_proxy.conf index 8bbfaabb5..dbeb3ff02 120000 --- a/deploy/docker.funkwhale_proxy.conf +++ b/deploy/docker.funkwhale_proxy.conf @@ -1 +1 @@ -../front/docker/funkwhale_proxy.conf \ No newline at end of file +../app/docker/funkwhale_proxy.conf \ No newline at end of file diff --git a/deploy/docker.nginx.template b/deploy/docker.nginx.template index 6e4c4e716..72ee56924 120000 --- a/deploy/docker.nginx.template +++ b/deploy/docker.nginx.template @@ -1 +1 @@ -../front/docker/funkwhale.conf.template \ No newline at end of file +../app/docker/funkwhale.conf.template \ No newline at end of file diff --git a/deploy/env.prod.sample b/deploy/env.prod.sample index 1ea36c651..ef4634a2a 100644 --- a/deploy/env.prod.sample +++ b/deploy/env.prod.sample @@ -158,7 +158,7 @@ MUSIC_DIRECTORY_SERVE_PATH=/srv/funkwhale/data/music # LDAP_START_TLS=False # LDAP_ROOT_DN=dc=domain,dc=com -FUNKWHALE_FRONTEND_PATH=/srv/funkwhale/front/dist +FUNKWHALE_FRONTEND_PATH=/srv/funkwhale/app/dist # Nginx related configuration NGINX_MAX_BODY_SIZE=100M diff --git a/deploy/nginx.template b/deploy/nginx.template index d306f8af4..e36859930 100644 --- a/deploy/nginx.template +++ b/deploy/nginx.template @@ -121,7 +121,7 @@ server { try_files $uri $uri/ /index.html; } - location ~ "/(front/)?embed.html" { + location ~ "/(app/)?embed.html" { alias ${FUNKWHALE_FRONTEND_PATH}/embed.html; add_header Content-Security-Policy "connect-src https: http: 'self'; default-src 'self'; script-src 'self' unpkg.com 'unsafe-inline' 'unsafe-eval'; style-src https: http: 'self' 'unsafe-inline'; img-src https: http: 'self' data:; font-src https: http: 'self' data:; object-src 'none'; media-src https: http: 'self' data:"; add_header Referrer-Policy "strict-origin-when-cross-origin"; diff --git a/docker-bake.json b/docker-bake.json index 95bda2c84..0c3c2ffe5 100644 --- a/docker-bake.json +++ b/docker-bake.json @@ -1,7 +1,7 @@ { "group": { "default": { - "targets": ["api", "front"] + "targets": ["api", "app"] } }, "target": { @@ -9,8 +9,8 @@ "context": "api", "target": "production" }, - "front": { - "context": "front", + "app": { + "context": "app", "target": "production" } } diff --git a/docs/administrator/configuration/frontend.md b/docs/administrator/configuration/app.md similarity index 92% rename from docs/administrator/configuration/frontend.md rename to docs/administrator/configuration/app.md index acefd88e7..88392e9a5 100644 --- a/docs/administrator/configuration/frontend.md +++ b/docs/administrator/configuration/app.md @@ -1,4 +1,4 @@ -# Customize the Funkwhale frontend +# Customize the Funkwhale app You can customize the look and behavior of the Funkwhale UI using a JSON configuration file. This file enables you to make very basic changes to the Funkwhale web app. @@ -49,7 +49,7 @@ To customize your Funkwhale pod, you need to serve a {file}`settings.json` file * - `defaultServerUrl` - URL - - The URL of the API server you want to connect the frontend to. Defaults to the current domain. + - The URL of the API server you want to connect the app to. Defaults to the current domain. - `"https://api.yourdomain.com"` ``` @@ -116,10 +116,10 @@ You can use a custom stylesheet to theme your Funkwhale pod. To do this: ```{code-block} sh nano settings.json - # Add ["/front/custom/custom.css"] to the additionalStylesheets parameter + # Add ["/app/custom/custom.css"] to the additionalStylesheets parameter # The resulting file looks like this: # { - # "additionalStylesheets": ["/front/custom/custom.css"], + # "additionalStylesheets": ["/app/custom/custom.css"], # "defaultServerUrl": null # } ``` diff --git a/docs/administrator/configuration/index.md b/docs/administrator/configuration/index.md index f194f6e65..889d79b3c 100644 --- a/docs/administrator/configuration/index.md +++ b/docs/administrator/configuration/index.md @@ -11,7 +11,7 @@ maxdepth: 1 Environment file Instance settings object-storage -Frontend customization +App customization optimize ldap change-url diff --git a/docs/administrator/django/index.md b/docs/administrator/django/index.md index 522d9a1df..7ce3ccb07 100644 --- a/docs/administrator/django/index.md +++ b/docs/administrator/django/index.md @@ -1,6 +1,6 @@ # Use the Django dashboard -For some administration you need to access data that isn't available on the frontend. Funkwhale makes use of the [Django web framework](https://www.djangoproject.com/). This provides a dashboard that gives pod admins access to more tools and data than the frontend. +For some administration you need to access data that isn't available in the app. Funkwhale makes use of the [Django web framework](https://www.djangoproject.com/). This provides a dashboard that gives pod admins access to more tools and data than the app. There are two ways to access the Django administration dashboard: diff --git a/docs/administrator/index.md b/docs/administrator/index.md index f04268a57..cdbfb4b7a 100644 --- a/docs/administrator/index.md +++ b/docs/administrator/index.md @@ -20,4 +20,4 @@ Funkwhale releases new updates regularly. To keep up-to-date with these changes, ## Manage your Funkwhale pod -Funkwhale provides tools for managing content and users on your Funkwhale pod. In addition to the [frontend moderation tools](../moderator/index.md), pod admins can use some extra tools for more powerful administration. Check out our [guide to the Django dashboard](django/index.md) and our [management script](manage-script/index.md) to get started. +Funkwhale provides tools for managing content and users on your Funkwhale pod. In addition to the [app moderation tools](../moderator/index.md), pod admins can use some extra tools for more powerful administration. Check out our [guide to the Django dashboard](django/index.md) and our [management script](manage-script/index.md) to get started. diff --git a/docs/administrator/installation/debian.md b/docs/administrator/installation/debian.md index 36a8116f6..5948450a4 100644 --- a/docs/administrator/installation/debian.md +++ b/docs/administrator/installation/debian.md @@ -90,12 +90,12 @@ That's it! Your directory structure should look like this: ```{code-block} text . ├── api # the Funkwhale API +├── app # the Funkwhale App ├── config # config / environment files -├── data # files served by the API -| ├── media # storage location for media files -| ├── music # storage location for audio files -| └── static # storage location for persistent data -└── front # frontend files for the user interface +└── data # files served by the API + ├── media # storage location for media files + ├── music # storage location for audio files + └── static # storage location for persistent data ``` ### Download the Funkwhale release @@ -111,7 +111,7 @@ Once you've created the directory structure you can download Funkwhale. Funkwhal sudo rm -rf extracted api-$FUNKWHALE_VERSION.zip ``` -2. Download the frontend +2. Download the app ```{code-block} sh sudo curl -L -o "front-$FUNKWHALE_VERSION.zip" "https://dev.funkwhale.audio/funkwhale/funkwhale/-/jobs/artifacts/$FUNKWHALE_VERSION/download?job=build_front" diff --git a/docs/administrator/installation/docker.md b/docs/administrator/installation/docker.md index 775b2516a..4cf5cebaa 100644 --- a/docs/administrator/installation/docker.md +++ b/docs/administrator/installation/docker.md @@ -227,7 +227,7 @@ That's it! You've created your Nginx file. ### Override default Nginx templates -The frontend container ships default Nginx templates which serve content to the reverse proxy. These files read variables from your `.env` file to correctly serve content. In some cases, you might want to override these defaults. To do this: +The app container ships default Nginx templates which serve content to the reverse proxy. These files read variables from your `.env` file to correctly serve content. In some cases, you might want to override these defaults. To do this: 1. Create a `/srv/funkwhale/nginx` directory to house your files. @@ -238,8 +238,8 @@ The frontend container ships default Nginx templates which serve content to the 2. Download the Nginx template files to the `/srv/funkwhale/nginx` directory. ```{code-block} sh - curl -L -o /srv/funkwhale/nginx/funkwhale.template "https://dev.funkwhale.audio/funkwhale/funkwhale/raw/${FUNKWHALE_VERSION}/front/docker/funkwhale.conf.template" - curl -L -o /srv/funkwhale/nginx/funkwhale_proxy.conf "https://dev.funkwhale.audio/funkwhale/funkwhale/raw/${FUNKWHALE_VERSION}/front/docker/funkwhale_proxy.conf" + curl -L -o /srv/funkwhale/nginx/funkwhale.template "https://dev.funkwhale.audio/funkwhale/funkwhale/raw/${FUNKWHALE_VERSION}/app/docker/funkwhale.conf.template" + curl -L -o /srv/funkwhale/nginx/funkwhale_proxy.conf "https://dev.funkwhale.audio/funkwhale/funkwhale/raw/${FUNKWHALE_VERSION}/app/docker/funkwhale_proxy.conf" ``` 3. Make any changes you want to make to these files. diff --git a/docs/administrator/troubleshooting/frontend.md b/docs/administrator/troubleshooting/app.md similarity index 74% rename from docs/administrator/troubleshooting/frontend.md rename to docs/administrator/troubleshooting/app.md index 6cfd923fa..c46bc3f8c 100644 --- a/docs/administrator/troubleshooting/frontend.md +++ b/docs/administrator/troubleshooting/app.md @@ -1,10 +1,10 @@ -# Troubleshoot frontend issues +# Troubleshoot issues in the app -The Funkwhale frontend is a {abbr}`SPA (Single Page Application)` written in [Vue.js](https://vuejs.org). It consumes the Funkwhale API to serve content and to federate with other Fediverse software. +The Funkwhale app is a {abbr}`SPA (Single Page Application)` written in [Vue.js](https://vuejs.org). It consumes the Funkwhale API to serve content and to federate with other Fediverse software. ## Tools -The most useful tools for troubleshooting issues with the Funkwhale frontend are your web browser's developer tools. The `Console` and `Network` tabs are particularly useful for tracking down issues in the Javascript code and API responses respectively. Use the following shortcut to open the developer tools for your browser: +The most useful tools for troubleshooting issues with the Funkwhale app are your web browser's developer tools. The `Console` and `Network` tabs are particularly useful for tracking down issues in the Javascript code and API responses respectively. Use the following shortcut to open the developer tools for your browser: ```{list-table} :header-rows: 1 @@ -43,7 +43,7 @@ If applicable, try these steps while logged in and again while logged out to see If content isn't appearing, it is usually due to one of the following reasons: -1. A conditional statement in the frontend code isn't working. +1. A conditional statement in the app code isn't working. 2. The API is not serving content. You can confirm which of these is causing the issue by checking the `Network` tab in your browser's developer tools. diff --git a/docs/administrator/troubleshooting/backend.md b/docs/administrator/troubleshooting/backend.md index 1c1a3a9b9..937e5bcb0 100644 --- a/docs/administrator/troubleshooting/backend.md +++ b/docs/administrator/troubleshooting/backend.md @@ -114,7 +114,7 @@ If you're having issues importing files, try the following: If you are having issues accessing federated content, try the following: - Check that the remote library received your follow request and approved it. -- Trigger a library scan in the Funkwhale frontend. +- Trigger a library scan in the Funkwhale app. - Check the Celery logs for errors during the scan. ### Memory tracing diff --git a/docs/administrator/troubleshooting/index.md b/docs/administrator/troubleshooting/index.md index eb962763d..8da8db52f 100644 --- a/docs/administrator/troubleshooting/index.md +++ b/docs/administrator/troubleshooting/index.md @@ -16,7 +16,7 @@ caption: Troubleshoot maxdepth: 1 --- -frontend +app backend help diff --git a/docs/administrator/upgrade/debian.md b/docs/administrator/upgrade/debian.md index 7daeac524..e238b45cf 100644 --- a/docs/administrator/upgrade/debian.md +++ b/docs/administrator/upgrade/debian.md @@ -19,7 +19,7 @@ If you installed Funkwhale following the [Debian guide](../installation/debian.m 3. Remove the old files. ```console - # rm -Rf api/* front/* venv + # rm -Rf api/* app/* venv ``` ## Download Funkwhale diff --git a/docs/conf.py b/docs/conf.py index 59c467392..6b91e6ca5 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -113,7 +113,7 @@ html_context = { "gitlab_url": "https://dev.funkwhale.audio/funkwhale/funkwhale", } html_logo = "logo.svg" -html_favicon = "../front/public/favicon.ico" +html_favicon = "../app/public/favicon.ico" html_static_path = ["_static"] html_css_files = ["css/translation-hint.css"] html_js_files = ["js/translation-hint.js"] diff --git a/docs/contributor/translation.md b/docs/contributor/translation.md index 0aca84da6..8e09ff281 100644 --- a/docs/contributor/translation.md +++ b/docs/contributor/translation.md @@ -12,7 +12,7 @@ We can also create language-specific sections of the forum to enable users to di ## Weblate -Funkwhale uses [Weblate](https://weblate.org) as its translation platform. Weblate provides an easy-to-use web frontend for submitting localized strings. +Funkwhale uses [Weblate](https://weblate.org) as its translation platform. Weblate provides an easy-to-use web app for submitting localized strings. To get started, sign up to our [Weblate instance](https://translate.funkwhale.audio) and follow the instructions to set up your language preferences. The following projects are available for translation: diff --git a/docs/developer/api/schema.md b/docs/developer/api/schema.md index af26fae59..5851329e9 100644 --- a/docs/developer/api/schema.md +++ b/docs/developer/api/schema.md @@ -1,7 +1,7 @@ -# OpenApi schema +# OpenAPI schema -The frontend need up to date schemas ! If you change the api you need to upgrade the schema by running : `docker compose run --rm api funkwhale-manage spectacular > ./api/funkwhale_api/common/schema.yml`. +The client-side app needs up to date schemas. If you change something in the API, then you need to upgrade the schema as well. Run: `docker compose run --rm api funkwhale-manage spectacular > ./api/funkwhale_api/common/schema.yml`. -Then you need to upgrade the frontend schema has well by running `yarn generate-types-from-local-schema`. +Then you need to regenerate the app schema has well by running `yarn generate-types-from-local-schema`. Be aware that `get_signup_form_additional_fields_serializer` can tweak the schema generation. diff --git a/docs/developer/api/v2-overview.md b/docs/developer/api/v2-overview.md index 1098d300f..a2c40d087 100644 --- a/docs/developer/api/v2-overview.md +++ b/docs/developer/api/v2-overview.md @@ -359,10 +359,10 @@ In this format, no `Base` serializer ever references another entity. This reduce Most endpoints in API v1 return large amounts of information and terminate at the collection level or one subpath deeper. API v2 should be designed to split the responsibilities of endpoints into more specific subpath operations. -Entities related to an item such as a collection, artist, release, or recording should be delegated to subpath queries such as `/api/v2/collections/{guid}/artists` rather than relying on filtering large result sets. While this increases the number of calls made by the frontend, it has the following positive impacts: +Entities related to an item such as a collection, artist, release, or recording should be delegated to subpath queries such as `/api/v2/collections/{guid}/artists` rather than relying on filtering large result sets. While this increases the number of calls made by the app, it has the following positive impacts: - The API follows REST conventions more closely -- Each call can be repeated by the frontend at a much lower cost. This can be useful for refreshing content or updating components +- Each call can be repeated by the app at a much lower cost. This can be useful for refreshing content or updating components - It dramatically decreases the APIs complexity and makes the resulting code much more maintainable ### Case study diff --git a/docs/developer/architecture.md b/docs/developer/architecture.md index 59bcea559..fc3da34ff 100644 --- a/docs/developer/architecture.md +++ b/docs/developer/architecture.md @@ -9,10 +9,10 @@ Below is a diagram of Funkwhale's project setup. accTitle: Funkwhale data flow diagram accDescr: A diagram showing the components of the Funkwhale app and how data flows through each component. subgraph Entrypoints - user[User] --> frontend[Funkwhale web app] + user[User] --> app[Funkwhale web app] user --> ffa[Funkwhale for Android] user --> subsonic[Subsonic app] - frontend --> proxy[Nginx/Apache reverse proxy] + app --> proxy[Nginx/Apache reverse proxy] ffa --> proxy subsonic --> proxy end diff --git a/docs/developer/contribute/frontend.md b/docs/developer/contribute/app.md similarity index 82% rename from docs/developer/contribute/frontend.md rename to docs/developer/contribute/app.md index d162a321a..8ecc086db 100644 --- a/docs/developer/contribute/frontend.md +++ b/docs/developer/contribute/app.md @@ -1,6 +1,6 @@ -# Contribute to the frontend +# Contribute to the app -The Funkwhale frontend is a {abbr}`SPA (Single Page Application)` written in [Typescript](https://typescriptlang.org) and [Vue.js](https://vuejs.org). +The Funkwhale app is a {abbr}`SPA (Single Page Application)` written in [Typescript](https://typescriptlang.org) and [Vue.js](https://vuejs.org). ## Troubleshooting @@ -68,18 +68,18 @@ yarn dev:docs ### Unit tests -The Funkwhale frontend contains some tests to catch errors before changes go live. The coverage is still fairly low, so we welcome any contributions. +The Funkwhale app contains some tests to catch errors before changes go live. The coverage is still fairly low, so we welcome any contributions. To run the test suite, run the following command: ```sh -docker compose run --rm front yarn test:unit +docker compose run --rm app yarn test:unit ``` To run tests as you make changes, launch the test suite with the `-w` flag: ```sh -docker compose run --rm front yarn test:unit -w +docker compose run --rm app yarn test:unit -w ``` ### End-to-end testing and User testing diff --git a/docs/developer/contribute/copy.md b/docs/developer/contribute/copy.md index c2acba76d..3bfa96e44 100644 --- a/docs/developer/contribute/copy.md +++ b/docs/developer/contribute/copy.md @@ -1,10 +1,10 @@ # Update UI copy ```{note} -Funkwhale is localized into several languages using [Weblate](https://translate.funkwhale.audio). You must make sure that any frontend strings are properly marked for localization. We use the [vue-i18n package](https://kazupon.github.io/vue-i18n/) to handle translation of frontend files. +Funkwhale is localized into several languages using [Weblate](https://translate.funkwhale.audio). You must make sure that any app strings are properly marked for localization. We use the [vue-i18n package](https://kazupon.github.io/vue-i18n/) to handle translation of app files. ``` -All UI strings are stored in `front/locales/en.json` file. The file is structured to mimic the format of the repository. Each string should be labeled following the semantic naming for the item it applies to. +All UI strings are stored in `app/locales/en.json` file. The file is structured to mimic the format of the repository. Each string should be labeled following the semantic naming for the item it applies to. UI strings can be added to both the `