├── .devcontainer └── devcontainer.json ├── .dockerignore ├── .env.example ├── .github ├── CONTRIBUTING.md ├── FUNDING.yml ├── ISSUE_TEMPLATE │ ├── bug_report.yml │ ├── config.yml │ └── feature_request.yml ├── PULL_REQUEST_TEMPLATE.md └── workflows │ ├── docker-publish.yml │ ├── docs-publish.yml │ └── tests.yml ├── .gitignore ├── .prettierrc ├── .python-version ├── .vscode ├── extensions.json ├── launch.json └── settings.json ├── Dockerfile ├── LICENSE ├── README.md ├── alembic.ini ├── alembic ├── env.py ├── script.py.mako └── versions │ ├── 2024-12-21-11-56_6e710e6677c0.py │ ├── 2025-01-15-15-52_b2ad27e14048.py │ ├── 2025-02-04-01-57_424fe94c2c03.py │ ├── 2025-02-15-02-10_ddbadb26481f.py │ ├── 2025-02-17-14-29_c5581ec025a7.py │ ├── 2025-02-17-20-24_6b471e97e780.py │ ├── 2025-03-24-02-37_e89ead9178d7.py │ ├── 2025-06-26-05-56_08f39c25b391.py │ ├── 2025-08-08-05-10_cd371e53adcb.py │ ├── 2025-08-12-06-30_213f9be1534f.py │ ├── 2025-09-19-00-29_8387b3fd8a6a.py │ ├── 2025-09-30-04-03_12add4c4ffa9.py │ ├── 2025-10-08-19-00_db24057a61c9.py │ └── 2025-10-20-10-41_90496c989bdd.py ├── data ├── config.example.yaml ├── mappings.example.json └── mappings.example.yaml ├── docs ├── .nav.yml ├── CNAME ├── compose.yaml ├── configuration.md ├── css │ └── htpasswd-generator.css ├── faq.md ├── favicon.ico ├── img │ ├── logo.png │ └── screenshots │ │ ├── backups.png │ │ ├── dashboard.png │ │ ├── logs.png │ │ ├── mappings.png │ │ └── timeline.png ├── index.md ├── js │ └── htpasswd-generator.js ├── mappings │ ├── custom-mappings.md │ └── mappings-querying-language.md ├── pyproject.toml ├── quick-start │ ├── docker.md │ └── source.md ├── recovery │ └── disaster-recovery.md └── web │ ├── api.md │ ├── backups.md │ ├── logs.md │ ├── mappings.md │ ├── openapi.json │ ├── screenshots.md │ └── timeline.md ├── frontend ├── .gitignore ├── .npmrc ├── .prettierignore ├── .prettierrc ├── eslint.config.js ├── package.json ├── pnpm-lock.yaml ├── pnpm-workspace.yaml ├── src │ ├── app.css │ ├── app.d.ts │ ├── app.html │ ├── lib │ │ ├── assets │ │ │ └── favicon.svg │ │ ├── components │ │ │ ├── code-editor.svelte │ │ │ ├── json-code-block.svelte │ │ │ ├── mappings │ │ │ │ ├── booru-search.svelte │ │ │ │ ├── capabilities-cache.ts │ │ │ │ ├── columns.ts │ │ │ │ ├── edit-modal.svelte │ │ │ │ ├── mapping-detail-preview.svelte │ │ │ │ ├── mapping-field-card.svelte │ │ │ │ ├── mappings-table.svelte │ │ │ │ └── tool-bar.svelte │ │ │ ├── pagination.svelte │ │ │ ├── timeline │ │ │ │ ├── pin-fields-editor.svelte │ │ │ │ ├── timeline-diff-viewer.svelte │ │ │ │ ├── timeline-global-pins-manager.svelte │ │ │ │ ├── timeline-header.svelte │ │ │ │ ├── timeline-item.svelte │ │ │ │ ├── timeline-manage-pins.svelte │ │ │ │ ├── timeline-outcome-filters.svelte │ │ │ │ ├── types.ts │ │ │ │ └── utils.ts │ │ │ └── toast-host.svelte │ │ ├── index.ts │ │ ├── types │ │ │ ├── anilist.ts │ │ │ └── api.ts │ │ ├── ui │ │ │ ├── modal.svelte │ │ │ └── tooltip.svelte │ │ └── utils │ │ │ ├── anilist.ts │ │ │ ├── api.ts │ │ │ ├── human.ts │ │ │ ├── notify.ts │ │ │ └── pin-options.ts │ └── routes │ │ ├── +layout.svelte │ │ ├── +page.svelte │ │ ├── about │ │ └── +page.svelte │ │ ├── backups │ │ ├── +page.svelte │ │ └── [profile] │ │ │ └── +page.svelte │ │ ├── logs │ │ └── +page.svelte │ │ ├── mappings │ │ └── +page.svelte │ │ ├── settings │ │ └── +page.svelte │ │ └── timeline │ │ └── [profile] │ │ └── +page.svelte ├── static │ ├── apple-touch-icon.png │ ├── favicon.ico │ ├── pwa-192x192.png │ ├── pwa-512x512.png │ ├── pwa-maskable-192x192.png │ └── pwa-maskable-512x512.png ├── svelte.config.js ├── tsconfig.json └── vite.config.ts ├── main.py ├── mkdocs.yml ├── pyproject.toml ├── scripts ├── __init__.py ├── anilist_restore.py ├── dev.py ├── docker_init.sh └── openapi.py ├── src ├── __init__.py ├── config │ ├── __init__.py │ ├── database.py │ └── settings.py ├── core │ ├── __init__.py │ ├── anilist.py │ ├── animap.py │ ├── bridge.py │ ├── mappings.py │ ├── plex.py │ ├── sched.py │ └── sync │ │ ├── __init__.py │ │ ├── base.py │ │ ├── movie.py │ │ ├── show.py │ │ └── stats.py ├── exceptions.py ├── models │ ├── __init__.py │ ├── db │ │ ├── __init__.py │ │ ├── animap.py │ │ ├── base.py │ │ ├── housekeeping.py │ │ ├── pin.py │ │ ├── provenance.py │ │ └── sync_history.py │ └── schemas │ │ ├── __init__.py │ │ ├── anilist.py │ │ └── plex.py ├── plex │ ├── __init__.py │ ├── community.py │ └── metadata.py ├── utils │ ├── __init__.py │ ├── booru_query.py │ ├── cache.py │ ├── htpasswd.py │ ├── logging.py │ ├── requests.py │ ├── sql.py │ ├── terminal.py │ ├── types.py │ └── version.py └── web │ ├── __init__.py │ ├── app.py │ ├── middlewares │ ├── __init__.py │ ├── basic_auth.py │ └── request_logging.py │ ├── routes │ ├── __init__.py │ ├── api │ │ ├── __init__.py │ │ ├── backups.py │ │ ├── history.py │ │ ├── logs.py │ │ ├── mappings.py │ │ ├── pins.py │ │ ├── status.py │ │ ├── sync.py │ │ └── system.py │ ├── webhook │ │ ├── __init__.py │ │ └── plex.py │ └── ws │ │ ├── __init__.py │ │ ├── history.py │ │ ├── logs.py │ │ └── status.py │ ├── services │ ├── __init__.py │ ├── backup_service.py │ ├── history_service.py │ ├── logging_handler.py │ ├── mapping_overrides_service.py │ ├── mappings_query_spec.py │ ├── mappings_service.py │ └── pin_service.py │ └── state.py ├── tests ├── __init__.py ├── config │ ├── __init__.py │ └── test_settings.py ├── conftest.py ├── core │ ├── __init__.py │ ├── sync │ │ └── __init__.py │ ├── test_anilist.py │ ├── test_animap.py │ └── test_mappings.py ├── test_pyproject.py ├── utils │ ├── __init__.py │ ├── test_booru_query.py │ ├── test_cache.py │ ├── test_logging.py │ ├── test_requests.py │ ├── test_sql.py │ ├── test_terminal.py │ └── test_version.py └── web │ ├── test_basic_auth.py │ └── test_mappings_service_filters.py ├── typings └── plexapi │ ├── __init__.py │ ├── base.pyi │ ├── library.pyi │ ├── media.pyi │ ├── myplex.pyi │ ├── server.pyi │ ├── settings.pyi │ ├── utils.pyi │ └── video.pyi └── uv.lock /.devcontainer/devcontainer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/.devcontainer/devcontainer.json -------------------------------------------------------------------------------- /.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/.dockerignore -------------------------------------------------------------------------------- /.env.example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/.env.example -------------------------------------------------------------------------------- /.github/CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/.github/CONTRIBUTING.md -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/.github/FUNDING.yml -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug_report.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/.github/ISSUE_TEMPLATE/bug_report.yml -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- 1 | blank_issues_enabled: false 2 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/.github/ISSUE_TEMPLATE/feature_request.yml -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/.github/PULL_REQUEST_TEMPLATE.md -------------------------------------------------------------------------------- /.github/workflows/docker-publish.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/.github/workflows/docker-publish.yml -------------------------------------------------------------------------------- /.github/workflows/docs-publish.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/.github/workflows/docs-publish.yml -------------------------------------------------------------------------------- /.github/workflows/tests.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/.github/workflows/tests.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/.gitignore -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/.prettierrc -------------------------------------------------------------------------------- /.python-version: -------------------------------------------------------------------------------- 1 | 3.13 2 | -------------------------------------------------------------------------------- /.vscode/extensions.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/.vscode/extensions.json -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/.vscode/launch.json -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/README.md -------------------------------------------------------------------------------- /alembic.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/alembic.ini -------------------------------------------------------------------------------- /alembic/env.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/alembic/env.py -------------------------------------------------------------------------------- /alembic/script.py.mako: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/alembic/script.py.mako -------------------------------------------------------------------------------- /alembic/versions/2024-12-21-11-56_6e710e6677c0.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/alembic/versions/2024-12-21-11-56_6e710e6677c0.py -------------------------------------------------------------------------------- /alembic/versions/2025-01-15-15-52_b2ad27e14048.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/alembic/versions/2025-01-15-15-52_b2ad27e14048.py -------------------------------------------------------------------------------- /alembic/versions/2025-02-04-01-57_424fe94c2c03.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/alembic/versions/2025-02-04-01-57_424fe94c2c03.py -------------------------------------------------------------------------------- /alembic/versions/2025-02-15-02-10_ddbadb26481f.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/alembic/versions/2025-02-15-02-10_ddbadb26481f.py -------------------------------------------------------------------------------- /alembic/versions/2025-02-17-14-29_c5581ec025a7.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/alembic/versions/2025-02-17-14-29_c5581ec025a7.py -------------------------------------------------------------------------------- /alembic/versions/2025-02-17-20-24_6b471e97e780.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/alembic/versions/2025-02-17-20-24_6b471e97e780.py -------------------------------------------------------------------------------- /alembic/versions/2025-03-24-02-37_e89ead9178d7.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/alembic/versions/2025-03-24-02-37_e89ead9178d7.py -------------------------------------------------------------------------------- /alembic/versions/2025-06-26-05-56_08f39c25b391.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/alembic/versions/2025-06-26-05-56_08f39c25b391.py -------------------------------------------------------------------------------- /alembic/versions/2025-08-08-05-10_cd371e53adcb.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/alembic/versions/2025-08-08-05-10_cd371e53adcb.py -------------------------------------------------------------------------------- /alembic/versions/2025-08-12-06-30_213f9be1534f.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/alembic/versions/2025-08-12-06-30_213f9be1534f.py -------------------------------------------------------------------------------- /alembic/versions/2025-09-19-00-29_8387b3fd8a6a.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/alembic/versions/2025-09-19-00-29_8387b3fd8a6a.py -------------------------------------------------------------------------------- /alembic/versions/2025-09-30-04-03_12add4c4ffa9.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/alembic/versions/2025-09-30-04-03_12add4c4ffa9.py -------------------------------------------------------------------------------- /alembic/versions/2025-10-08-19-00_db24057a61c9.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/alembic/versions/2025-10-08-19-00_db24057a61c9.py -------------------------------------------------------------------------------- /alembic/versions/2025-10-20-10-41_90496c989bdd.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/alembic/versions/2025-10-20-10-41_90496c989bdd.py -------------------------------------------------------------------------------- /data/config.example.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/data/config.example.yaml -------------------------------------------------------------------------------- /data/mappings.example.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/data/mappings.example.json -------------------------------------------------------------------------------- /data/mappings.example.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/data/mappings.example.yaml -------------------------------------------------------------------------------- /docs/.nav.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/.nav.yml -------------------------------------------------------------------------------- /docs/CNAME: -------------------------------------------------------------------------------- 1 | plexanibridge.elias.eu.org -------------------------------------------------------------------------------- /docs/compose.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/compose.yaml -------------------------------------------------------------------------------- /docs/configuration.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/configuration.md -------------------------------------------------------------------------------- /docs/css/htpasswd-generator.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/css/htpasswd-generator.css -------------------------------------------------------------------------------- /docs/faq.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/faq.md -------------------------------------------------------------------------------- /docs/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/favicon.ico -------------------------------------------------------------------------------- /docs/img/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/img/logo.png -------------------------------------------------------------------------------- /docs/img/screenshots/backups.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/img/screenshots/backups.png -------------------------------------------------------------------------------- /docs/img/screenshots/dashboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/img/screenshots/dashboard.png -------------------------------------------------------------------------------- /docs/img/screenshots/logs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/img/screenshots/logs.png -------------------------------------------------------------------------------- /docs/img/screenshots/mappings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/img/screenshots/mappings.png -------------------------------------------------------------------------------- /docs/img/screenshots/timeline.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/img/screenshots/timeline.png -------------------------------------------------------------------------------- /docs/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/index.md -------------------------------------------------------------------------------- /docs/js/htpasswd-generator.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/js/htpasswd-generator.js -------------------------------------------------------------------------------- /docs/mappings/custom-mappings.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/mappings/custom-mappings.md -------------------------------------------------------------------------------- /docs/mappings/mappings-querying-language.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/mappings/mappings-querying-language.md -------------------------------------------------------------------------------- /docs/pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/pyproject.toml -------------------------------------------------------------------------------- /docs/quick-start/docker.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/quick-start/docker.md -------------------------------------------------------------------------------- /docs/quick-start/source.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/quick-start/source.md -------------------------------------------------------------------------------- /docs/recovery/disaster-recovery.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/recovery/disaster-recovery.md -------------------------------------------------------------------------------- /docs/web/api.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/web/api.md -------------------------------------------------------------------------------- /docs/web/backups.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/web/backups.md -------------------------------------------------------------------------------- /docs/web/logs.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/web/logs.md -------------------------------------------------------------------------------- /docs/web/mappings.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/web/mappings.md -------------------------------------------------------------------------------- /docs/web/openapi.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/web/openapi.json -------------------------------------------------------------------------------- /docs/web/screenshots.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/web/screenshots.md -------------------------------------------------------------------------------- /docs/web/timeline.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/docs/web/timeline.md -------------------------------------------------------------------------------- /frontend/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/.gitignore -------------------------------------------------------------------------------- /frontend/.npmrc: -------------------------------------------------------------------------------- 1 | engine-strict=true 2 | -------------------------------------------------------------------------------- /frontend/.prettierignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/.prettierignore -------------------------------------------------------------------------------- /frontend/.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/.prettierrc -------------------------------------------------------------------------------- /frontend/eslint.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/eslint.config.js -------------------------------------------------------------------------------- /frontend/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/package.json -------------------------------------------------------------------------------- /frontend/pnpm-lock.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/pnpm-lock.yaml -------------------------------------------------------------------------------- /frontend/pnpm-workspace.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/pnpm-workspace.yaml -------------------------------------------------------------------------------- /frontend/src/app.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/app.css -------------------------------------------------------------------------------- /frontend/src/app.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/app.d.ts -------------------------------------------------------------------------------- /frontend/src/app.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/app.html -------------------------------------------------------------------------------- /frontend/src/lib/assets/favicon.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/assets/favicon.svg -------------------------------------------------------------------------------- /frontend/src/lib/components/code-editor.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/components/code-editor.svelte -------------------------------------------------------------------------------- /frontend/src/lib/components/json-code-block.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/components/json-code-block.svelte -------------------------------------------------------------------------------- /frontend/src/lib/components/mappings/booru-search.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/components/mappings/booru-search.svelte -------------------------------------------------------------------------------- /frontend/src/lib/components/mappings/capabilities-cache.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/components/mappings/capabilities-cache.ts -------------------------------------------------------------------------------- /frontend/src/lib/components/mappings/columns.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/components/mappings/columns.ts -------------------------------------------------------------------------------- /frontend/src/lib/components/mappings/edit-modal.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/components/mappings/edit-modal.svelte -------------------------------------------------------------------------------- /frontend/src/lib/components/mappings/mapping-detail-preview.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/components/mappings/mapping-detail-preview.svelte -------------------------------------------------------------------------------- /frontend/src/lib/components/mappings/mapping-field-card.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/components/mappings/mapping-field-card.svelte -------------------------------------------------------------------------------- /frontend/src/lib/components/mappings/mappings-table.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/components/mappings/mappings-table.svelte -------------------------------------------------------------------------------- /frontend/src/lib/components/mappings/tool-bar.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/components/mappings/tool-bar.svelte -------------------------------------------------------------------------------- /frontend/src/lib/components/pagination.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/components/pagination.svelte -------------------------------------------------------------------------------- /frontend/src/lib/components/timeline/pin-fields-editor.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/components/timeline/pin-fields-editor.svelte -------------------------------------------------------------------------------- /frontend/src/lib/components/timeline/timeline-diff-viewer.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/components/timeline/timeline-diff-viewer.svelte -------------------------------------------------------------------------------- /frontend/src/lib/components/timeline/timeline-global-pins-manager.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/components/timeline/timeline-global-pins-manager.svelte -------------------------------------------------------------------------------- /frontend/src/lib/components/timeline/timeline-header.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/components/timeline/timeline-header.svelte -------------------------------------------------------------------------------- /frontend/src/lib/components/timeline/timeline-item.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/components/timeline/timeline-item.svelte -------------------------------------------------------------------------------- /frontend/src/lib/components/timeline/timeline-manage-pins.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/components/timeline/timeline-manage-pins.svelte -------------------------------------------------------------------------------- /frontend/src/lib/components/timeline/timeline-outcome-filters.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/components/timeline/timeline-outcome-filters.svelte -------------------------------------------------------------------------------- /frontend/src/lib/components/timeline/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/components/timeline/types.ts -------------------------------------------------------------------------------- /frontend/src/lib/components/timeline/utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/components/timeline/utils.ts -------------------------------------------------------------------------------- /frontend/src/lib/components/toast-host.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/components/toast-host.svelte -------------------------------------------------------------------------------- /frontend/src/lib/index.ts: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /frontend/src/lib/types/anilist.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/types/anilist.ts -------------------------------------------------------------------------------- /frontend/src/lib/types/api.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/types/api.ts -------------------------------------------------------------------------------- /frontend/src/lib/ui/modal.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/ui/modal.svelte -------------------------------------------------------------------------------- /frontend/src/lib/ui/tooltip.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/ui/tooltip.svelte -------------------------------------------------------------------------------- /frontend/src/lib/utils/anilist.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/utils/anilist.ts -------------------------------------------------------------------------------- /frontend/src/lib/utils/api.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/utils/api.ts -------------------------------------------------------------------------------- /frontend/src/lib/utils/human.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/utils/human.ts -------------------------------------------------------------------------------- /frontend/src/lib/utils/notify.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/utils/notify.ts -------------------------------------------------------------------------------- /frontend/src/lib/utils/pin-options.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/lib/utils/pin-options.ts -------------------------------------------------------------------------------- /frontend/src/routes/+layout.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/routes/+layout.svelte -------------------------------------------------------------------------------- /frontend/src/routes/+page.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/routes/+page.svelte -------------------------------------------------------------------------------- /frontend/src/routes/about/+page.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/routes/about/+page.svelte -------------------------------------------------------------------------------- /frontend/src/routes/backups/+page.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/routes/backups/+page.svelte -------------------------------------------------------------------------------- /frontend/src/routes/backups/[profile]/+page.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/routes/backups/[profile]/+page.svelte -------------------------------------------------------------------------------- /frontend/src/routes/logs/+page.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/routes/logs/+page.svelte -------------------------------------------------------------------------------- /frontend/src/routes/mappings/+page.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/routes/mappings/+page.svelte -------------------------------------------------------------------------------- /frontend/src/routes/settings/+page.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/routes/settings/+page.svelte -------------------------------------------------------------------------------- /frontend/src/routes/timeline/[profile]/+page.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/src/routes/timeline/[profile]/+page.svelte -------------------------------------------------------------------------------- /frontend/static/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/static/apple-touch-icon.png -------------------------------------------------------------------------------- /frontend/static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/static/favicon.ico -------------------------------------------------------------------------------- /frontend/static/pwa-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/static/pwa-192x192.png -------------------------------------------------------------------------------- /frontend/static/pwa-512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/static/pwa-512x512.png -------------------------------------------------------------------------------- /frontend/static/pwa-maskable-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/static/pwa-maskable-192x192.png -------------------------------------------------------------------------------- /frontend/static/pwa-maskable-512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/static/pwa-maskable-512x512.png -------------------------------------------------------------------------------- /frontend/svelte.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/svelte.config.js -------------------------------------------------------------------------------- /frontend/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/tsconfig.json -------------------------------------------------------------------------------- /frontend/vite.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/frontend/vite.config.ts -------------------------------------------------------------------------------- /main.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/main.py -------------------------------------------------------------------------------- /mkdocs.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/mkdocs.yml -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/pyproject.toml -------------------------------------------------------------------------------- /scripts/__init__.py: -------------------------------------------------------------------------------- 1 | """Development scripts for PlexAniBridge.""" 2 | -------------------------------------------------------------------------------- /scripts/anilist_restore.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/scripts/anilist_restore.py -------------------------------------------------------------------------------- /scripts/dev.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/scripts/dev.py -------------------------------------------------------------------------------- /scripts/docker_init.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/scripts/docker_init.sh -------------------------------------------------------------------------------- /scripts/openapi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/scripts/openapi.py -------------------------------------------------------------------------------- /src/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/__init__.py -------------------------------------------------------------------------------- /src/config/__init__.py: -------------------------------------------------------------------------------- 1 | """PlexAniBridge configuration module.""" 2 | -------------------------------------------------------------------------------- /src/config/database.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/config/database.py -------------------------------------------------------------------------------- /src/config/settings.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/config/settings.py -------------------------------------------------------------------------------- /src/core/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/core/__init__.py -------------------------------------------------------------------------------- /src/core/anilist.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/core/anilist.py -------------------------------------------------------------------------------- /src/core/animap.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/core/animap.py -------------------------------------------------------------------------------- /src/core/bridge.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/core/bridge.py -------------------------------------------------------------------------------- /src/core/mappings.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/core/mappings.py -------------------------------------------------------------------------------- /src/core/plex.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/core/plex.py -------------------------------------------------------------------------------- /src/core/sched.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/core/sched.py -------------------------------------------------------------------------------- /src/core/sync/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/core/sync/__init__.py -------------------------------------------------------------------------------- /src/core/sync/base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/core/sync/base.py -------------------------------------------------------------------------------- /src/core/sync/movie.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/core/sync/movie.py -------------------------------------------------------------------------------- /src/core/sync/show.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/core/sync/show.py -------------------------------------------------------------------------------- /src/core/sync/stats.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/core/sync/stats.py -------------------------------------------------------------------------------- /src/exceptions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/exceptions.py -------------------------------------------------------------------------------- /src/models/__init__.py: -------------------------------------------------------------------------------- 1 | """PlexAniBridge application models.""" 2 | -------------------------------------------------------------------------------- /src/models/db/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/models/db/__init__.py -------------------------------------------------------------------------------- /src/models/db/animap.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/models/db/animap.py -------------------------------------------------------------------------------- /src/models/db/base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/models/db/base.py -------------------------------------------------------------------------------- /src/models/db/housekeeping.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/models/db/housekeeping.py -------------------------------------------------------------------------------- /src/models/db/pin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/models/db/pin.py -------------------------------------------------------------------------------- /src/models/db/provenance.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/models/db/provenance.py -------------------------------------------------------------------------------- /src/models/db/sync_history.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/models/db/sync_history.py -------------------------------------------------------------------------------- /src/models/schemas/__init__.py: -------------------------------------------------------------------------------- 1 | """Schemas for external APIs used in PlexAniBridge.""" 2 | -------------------------------------------------------------------------------- /src/models/schemas/anilist.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/models/schemas/anilist.py -------------------------------------------------------------------------------- /src/models/schemas/plex.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/models/schemas/plex.py -------------------------------------------------------------------------------- /src/plex/__init__.py: -------------------------------------------------------------------------------- 1 | """Plex API Module.""" 2 | -------------------------------------------------------------------------------- /src/plex/community.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/plex/community.py -------------------------------------------------------------------------------- /src/plex/metadata.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/plex/metadata.py -------------------------------------------------------------------------------- /src/utils/__init__.py: -------------------------------------------------------------------------------- 1 | """Utility functions module.""" 2 | -------------------------------------------------------------------------------- /src/utils/booru_query.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/utils/booru_query.py -------------------------------------------------------------------------------- /src/utils/cache.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/utils/cache.py -------------------------------------------------------------------------------- /src/utils/htpasswd.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/utils/htpasswd.py -------------------------------------------------------------------------------- /src/utils/logging.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/utils/logging.py -------------------------------------------------------------------------------- /src/utils/requests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/utils/requests.py -------------------------------------------------------------------------------- /src/utils/sql.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/utils/sql.py -------------------------------------------------------------------------------- /src/utils/terminal.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/utils/terminal.py -------------------------------------------------------------------------------- /src/utils/types.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/utils/types.py -------------------------------------------------------------------------------- /src/utils/version.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/utils/version.py -------------------------------------------------------------------------------- /src/web/__init__.py: -------------------------------------------------------------------------------- 1 | """PlexAniBridge web server module.""" 2 | -------------------------------------------------------------------------------- /src/web/app.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/app.py -------------------------------------------------------------------------------- /src/web/middlewares/__init__.py: -------------------------------------------------------------------------------- 1 | """FastAPI middlewares.""" 2 | -------------------------------------------------------------------------------- /src/web/middlewares/basic_auth.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/middlewares/basic_auth.py -------------------------------------------------------------------------------- /src/web/middlewares/request_logging.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/middlewares/request_logging.py -------------------------------------------------------------------------------- /src/web/routes/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/routes/__init__.py -------------------------------------------------------------------------------- /src/web/routes/api/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/routes/api/__init__.py -------------------------------------------------------------------------------- /src/web/routes/api/backups.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/routes/api/backups.py -------------------------------------------------------------------------------- /src/web/routes/api/history.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/routes/api/history.py -------------------------------------------------------------------------------- /src/web/routes/api/logs.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/routes/api/logs.py -------------------------------------------------------------------------------- /src/web/routes/api/mappings.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/routes/api/mappings.py -------------------------------------------------------------------------------- /src/web/routes/api/pins.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/routes/api/pins.py -------------------------------------------------------------------------------- /src/web/routes/api/status.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/routes/api/status.py -------------------------------------------------------------------------------- /src/web/routes/api/sync.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/routes/api/sync.py -------------------------------------------------------------------------------- /src/web/routes/api/system.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/routes/api/system.py -------------------------------------------------------------------------------- /src/web/routes/webhook/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/routes/webhook/__init__.py -------------------------------------------------------------------------------- /src/web/routes/webhook/plex.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/routes/webhook/plex.py -------------------------------------------------------------------------------- /src/web/routes/ws/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/routes/ws/__init__.py -------------------------------------------------------------------------------- /src/web/routes/ws/history.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/routes/ws/history.py -------------------------------------------------------------------------------- /src/web/routes/ws/logs.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/routes/ws/logs.py -------------------------------------------------------------------------------- /src/web/routes/ws/status.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/routes/ws/status.py -------------------------------------------------------------------------------- /src/web/services/__init__.py: -------------------------------------------------------------------------------- 1 | """Web services.""" 2 | -------------------------------------------------------------------------------- /src/web/services/backup_service.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/services/backup_service.py -------------------------------------------------------------------------------- /src/web/services/history_service.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/services/history_service.py -------------------------------------------------------------------------------- /src/web/services/logging_handler.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/services/logging_handler.py -------------------------------------------------------------------------------- /src/web/services/mapping_overrides_service.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/services/mapping_overrides_service.py -------------------------------------------------------------------------------- /src/web/services/mappings_query_spec.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/services/mappings_query_spec.py -------------------------------------------------------------------------------- /src/web/services/mappings_service.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/services/mappings_service.py -------------------------------------------------------------------------------- /src/web/services/pin_service.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/services/pin_service.py -------------------------------------------------------------------------------- /src/web/state.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/src/web/state.py -------------------------------------------------------------------------------- /tests/__init__.py: -------------------------------------------------------------------------------- 1 | """PlexAniBridge tests.""" 2 | -------------------------------------------------------------------------------- /tests/config/__init__.py: -------------------------------------------------------------------------------- 1 | """Configuration tests.""" 2 | -------------------------------------------------------------------------------- /tests/config/test_settings.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/tests/config/test_settings.py -------------------------------------------------------------------------------- /tests/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/tests/conftest.py -------------------------------------------------------------------------------- /tests/core/__init__.py: -------------------------------------------------------------------------------- 1 | """Core test utilities for PlexAniBridge.""" 2 | -------------------------------------------------------------------------------- /tests/core/sync/__init__.py: -------------------------------------------------------------------------------- 1 | """Test suite for the core synchronization module.""" 2 | -------------------------------------------------------------------------------- /tests/core/test_anilist.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/tests/core/test_anilist.py -------------------------------------------------------------------------------- /tests/core/test_animap.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/tests/core/test_animap.py -------------------------------------------------------------------------------- /tests/core/test_mappings.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/tests/core/test_mappings.py -------------------------------------------------------------------------------- /tests/test_pyproject.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/tests/test_pyproject.py -------------------------------------------------------------------------------- /tests/utils/__init__.py: -------------------------------------------------------------------------------- 1 | """Utility function tests.""" 2 | -------------------------------------------------------------------------------- /tests/utils/test_booru_query.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/tests/utils/test_booru_query.py -------------------------------------------------------------------------------- /tests/utils/test_cache.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/tests/utils/test_cache.py -------------------------------------------------------------------------------- /tests/utils/test_logging.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/tests/utils/test_logging.py -------------------------------------------------------------------------------- /tests/utils/test_requests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/tests/utils/test_requests.py -------------------------------------------------------------------------------- /tests/utils/test_sql.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/tests/utils/test_sql.py -------------------------------------------------------------------------------- /tests/utils/test_terminal.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/tests/utils/test_terminal.py -------------------------------------------------------------------------------- /tests/utils/test_version.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/tests/utils/test_version.py -------------------------------------------------------------------------------- /tests/web/test_basic_auth.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/tests/web/test_basic_auth.py -------------------------------------------------------------------------------- /tests/web/test_mappings_service_filters.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/tests/web/test_mappings_service_filters.py -------------------------------------------------------------------------------- /typings/plexapi/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/typings/plexapi/__init__.py -------------------------------------------------------------------------------- /typings/plexapi/base.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/typings/plexapi/base.pyi -------------------------------------------------------------------------------- /typings/plexapi/library.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/typings/plexapi/library.pyi -------------------------------------------------------------------------------- /typings/plexapi/media.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/typings/plexapi/media.pyi -------------------------------------------------------------------------------- /typings/plexapi/myplex.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/typings/plexapi/myplex.pyi -------------------------------------------------------------------------------- /typings/plexapi/server.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/typings/plexapi/server.pyi -------------------------------------------------------------------------------- /typings/plexapi/settings.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/typings/plexapi/settings.pyi -------------------------------------------------------------------------------- /typings/plexapi/utils.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/typings/plexapi/utils.pyi -------------------------------------------------------------------------------- /typings/plexapi/video.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/typings/plexapi/video.pyi -------------------------------------------------------------------------------- /uv.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eliasbenb/PlexAniBridge/HEAD/uv.lock --------------------------------------------------------------------------------