Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v5 api: initial schemas, types & basic routes #680

Draft
wants to merge 53 commits into
base: master
Choose a base branch
from
Draft

Conversation

zoriya
Copy link
Owner

@zoriya zoriya commented Nov 15, 2024

This is the first PR for the v5's api (see #597).

Checklist for this PR:

  • Database schemas for:
    • shows (movies | series)
    • entries (episode | movie | special | extra)
    • videos
    • seasons
  • Api types & examples for:
    • movies
    • series
    • episodes
    • specials
    • extras
    • movies contained in series (called movie-entry here)
    • seasons
  • Api setup:
    • Authorization
    • Error-Problems
    • Clean validations errors (readable)
    • Data seeding for tests (use examples)
    • Clean swagger
  • Routes to fetch
    • a movie via id/slug
      • languages
        • query user's requested language
        • fallback if we are missing a field
        • allow a preferOriginal setting for images
      • with all translations (if requested)
      • with all videos
    • all movies
      • w/ arbitrary filters
      • keyset pagination
      • sorts
      • w/ video (at least if we have one or not, idk if we include all videos at all time)
    • search movies? (might be in another PR)
    • get a random movie (or sort by random)
  • Images handling
    • Download images
    • Scale images (low/medium/high)
    • Calculate blurhash
    • Serve images via id
    • Serve image via /movie/id/poster & co (& support language header here)

Future PRs will be:

  • Other get routes (collections, seasons, series, episodes, extra...)
  • Mixed routes (shows, news...)
  • User specific information (watch-status, history)
  • Other metadata (studios, staff...)
  • Scanner's workflow (see Document scanner's v5 workflow #678 for the spec)

@zoriya zoriya added the api label Nov 15, 2024
@zoriya zoriya added this to the v5.0.0 milestone Nov 15, 2024
@zoriya zoriya self-assigned this Nov 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant