Skip to content

feat: add Swiparr — media discovery with Tinder-like swipe interface#5249

Draft
jakobbjelver wants to merge 3 commits into
truenas:masterfrom
jakobbjelver:swiparr-submission
Draft

feat: add Swiparr — media discovery with Tinder-like swipe interface#5249
jakobbjelver wants to merge 3 commits into
truenas:masterfrom
jakobbjelver:swiparr-submission

Conversation

@jakobbjelver

@jakobbjelver jakobbjelver commented Jun 26, 2026

Copy link
Copy Markdown

Description

Add Swiparr to the community app catalog. Swiparr is a media discovery tool featuring a Tinder-like swipe interface for browsing movies and TV shows. It supports Jellyfin, Emby, Plex, and standalone TMDB.

Features

  • Collaborative sessions — create sessions, invite friends, swipe together
  • Smart matching — finds content everyone wants to watch
  • Multi-provider — Jellyfin (full), Emby (experimental), Plex (experimental), TMDB (standalone)
  • Guest lending — friends join without accounts
  • Mobile-first PWA

App Details

  • Docker image: ghcr.io/m3sserstudi0s/swiparr:1.4.1
  • Port: 4321 (configurable)
  • Data: SQLite at /app/data
  • Health check: GET /api/health
  • Homepage: https://swiparr.com

Icon / Screenshots

Available in comment below.

Add Swiparr — a Tinder-like media discovery tool for Jellyfin, Emby, Plex, and TMDB.

- Provider selection with conditional config fields
- Provider lock toggle for BYOP mode
- Auth secret, admin usernames, debug mode
- Standard network, storage, labels, and resources config
- Healthcheck: /api/health on port 4321
@jakobbjelver

This comment was marked as spam.

@stavros-k stavros-k marked this pull request as draft June 29, 2026 16:36
@jakobbjelver jakobbjelver marked this pull request as ready for review June 30, 2026 11:33
@stavros-k stavros-k marked this pull request as draft June 30, 2026 16:27
host_network: false
web_port:
bind_mode: published
port_number: 4321

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
port_number: 4321
port_number: 8080

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

there should not be images commited

label: Port Number
schema:
type: int
default: 4321

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

all apps use a unique port >30000

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

readme does not match the style of all other apps

emby_admin_username: ""
plex_admin_username: ""
allow_private_provider_urls: false
enable_debug: false

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

there is no need to expose EVERY SINGLE OPTION on the planet.
especially something like debug.
Users can still add additional envs for fine tuning

{% if values.swiparr.plex_admin_username %}
{% do c1.environment.add_env("PLEX_ADMIN_USERNAME", values.swiparr.plex_admin_username) %}
{% endif %}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

are these optional even if provider is set to emby?

{% endif %}
{% if values.swiparr.use_secure_cookies %}
{% do c1.environment.add_env("USE_SECURE_COOKIES", "true") %}
{% endif %}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

all boolean vars can be inlined.
add_env(var, value)

@stavros-k

Copy link
Copy Markdown
Contributor

Please refer to other PRs that adding an app.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants