From bdce2ef8d26421f7969302cc9a6acd1745293687 Mon Sep 17 00:00:00 2001 From: Deren Lei Date: Thu, 14 May 2026 14:35:36 -0700 Subject: [PATCH 1/9] feat: add Rotten Tomatoes mirror site --- Dockerfile | 2 +- control_server.py | 2 +- sites/rotten_tomatoes/_health.py | 3 + sites/rotten_tomatoes/app.py | 674 ++ sites/rotten_tomatoes/download_people.py | 57 + sites/rotten_tomatoes/download_posters.py | 42 + sites/rotten_tomatoes/requirements.txt | 1 + sites/rotten_tomatoes/seed_data.py | 7510 +++++++++++++++++ sites/rotten_tomatoes/static/css/.gitkeep | 0 sites/rotten_tomatoes/static/css/style.css | 243 + sites/rotten_tomatoes/static/icons/.gitkeep | 0 .../static/icons/placeholder.png | 1 + sites/rotten_tomatoes/static/js/.gitkeep | 0 sites/rotten_tomatoes/tasks.jsonl | 20 + sites/rotten_tomatoes/templates/.gitkeep | 0 sites/rotten_tomatoes/templates/base.html | 61 + sites/rotten_tomatoes/templates/browse.html | 89 + .../rotten_tomatoes/templates/celebrity.html | 66 + sites/rotten_tomatoes/templates/index.html | 89 + sites/rotten_tomatoes/templates/login.html | 22 + .../templates/movie_detail.html | 218 + sites/rotten_tomatoes/templates/register.html | 30 + .../templates/search_results.html | 44 + .../rotten_tomatoes/templates/watchlist.html | 32 + websyn_start.sh | 2 +- 25 files changed, 9205 insertions(+), 3 deletions(-) create mode 100644 sites/rotten_tomatoes/_health.py create mode 100644 sites/rotten_tomatoes/app.py create mode 100644 sites/rotten_tomatoes/download_people.py create mode 100644 sites/rotten_tomatoes/download_posters.py create mode 100644 sites/rotten_tomatoes/requirements.txt create mode 100644 sites/rotten_tomatoes/seed_data.py create mode 100644 sites/rotten_tomatoes/static/css/.gitkeep create mode 100644 sites/rotten_tomatoes/static/css/style.css create mode 100644 sites/rotten_tomatoes/static/icons/.gitkeep create mode 100644 sites/rotten_tomatoes/static/icons/placeholder.png create mode 100644 sites/rotten_tomatoes/static/js/.gitkeep create mode 100644 sites/rotten_tomatoes/tasks.jsonl create mode 100644 sites/rotten_tomatoes/templates/.gitkeep create mode 100644 sites/rotten_tomatoes/templates/base.html create mode 100644 sites/rotten_tomatoes/templates/browse.html create mode 100644 sites/rotten_tomatoes/templates/celebrity.html create mode 100644 sites/rotten_tomatoes/templates/index.html create mode 100644 sites/rotten_tomatoes/templates/login.html create mode 100644 sites/rotten_tomatoes/templates/movie_detail.html create mode 100644 sites/rotten_tomatoes/templates/register.html create mode 100644 sites/rotten_tomatoes/templates/search_results.html create mode 100644 sites/rotten_tomatoes/templates/watchlist.html diff --git a/Dockerfile b/Dockerfile index 991e5ab6..f653515e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -33,6 +33,6 @@ COPY control_server.py /opt/control_server.py COPY site_runner.py /opt/site_runner.py RUN chmod +x /opt/websyn_start.sh -EXPOSE 8101 40000-40014 +EXPOSE 8101 40000-40015 CMD ["/opt/websyn_start.sh"] diff --git a/control_server.py b/control_server.py index c255253c..0064b77d 100644 --- a/control_server.py +++ b/control_server.py @@ -26,7 +26,7 @@ 'allrecipes', 'amazon', 'apple', 'arxiv', 'bbc_news', 'booking', 'github', 'google_flights', 'google_map', 'google_search', 'huggingface', 'wolfram_alpha', 'cambridge_dictionary', - 'coursera', 'espn', + 'coursera', 'espn', 'rotten_tomatoes', ] BASE_PORT = 40000 WEBSYN_DIR = '/opt/WebSyn' diff --git a/sites/rotten_tomatoes/_health.py b/sites/rotten_tomatoes/_health.py new file mode 100644 index 00000000..f3b1f06e --- /dev/null +++ b/sites/rotten_tomatoes/_health.py @@ -0,0 +1,3 @@ +"""Per-site health probe (optional, called by control_server).""" +def health(): + return {"ok": True, "site": "rotten_tomatoes"} diff --git a/sites/rotten_tomatoes/app.py b/sites/rotten_tomatoes/app.py new file mode 100644 index 00000000..57753066 --- /dev/null +++ b/sites/rotten_tomatoes/app.py @@ -0,0 +1,674 @@ +#!/usr/bin/env python3 +"""Rotten Tomatoes mirror — Flask app for WebHarbor.""" +import os +import re +import math +from datetime import datetime, timedelta +from functools import wraps + +from flask import (Flask, render_template, request, redirect, url_for, + flash, jsonify, session, abort, g, make_response) +from flask_sqlalchemy import SQLAlchemy +from flask_login import (LoginManager, UserMixin, login_user, logout_user, + login_required, current_user) +from flask_wtf import FlaskForm +from flask_wtf.csrf import CSRFProtect, generate_csrf +from flask_bcrypt import Bcrypt +from wtforms import StringField, PasswordField, TextAreaField, IntegerField, SelectField, FloatField +from wtforms.validators import DataRequired, Email, Length, EqualTo, Optional, NumberRange +from sqlalchemy import or_, func, and_ + +BASE_DIR = os.path.dirname(os.path.abspath(__file__)) + +app = Flask(__name__, instance_path=os.path.join(BASE_DIR, "instance")) +app.config['SECRET_KEY'] = 'rotten-tomatoes-mirror-secret-key-change-in-prod' +app.config['SQLALCHEMY_DATABASE_URI'] = f"sqlite:///{os.path.join(BASE_DIR, 'instance', 'rotten_tomatoes.db')}" +app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False +app.config['WTF_CSRF_TIME_LIMIT'] = None + +os.makedirs(os.path.join(BASE_DIR, 'instance'), exist_ok=True) + +db = SQLAlchemy(app) +bcrypt = Bcrypt(app) +login_manager = LoginManager(app) +login_manager.login_view = 'login' +login_manager.login_message = 'Please sign in to access this page.' +login_manager.login_message_category = 'info' +csrf = CSRFProtect(app) + + +# ────────────────────────────────────────────── +# Models +# ────────────────────────────────────────────── + +class User(db.Model, UserMixin): + __tablename__ = 'users' + id = db.Column(db.Integer, primary_key=True) + email = db.Column(db.String(120), unique=True, nullable=False, index=True) + password_hash = db.Column(db.String(255), nullable=False) + name = db.Column(db.String(120), nullable=False) + created_at = db.Column(db.DateTime, default=datetime.utcnow) + + watchlist_items = db.relationship('WatchlistItem', backref='user', lazy=True, cascade='all, delete-orphan') + ratings = db.relationship('UserRating', backref='user', lazy=True, cascade='all, delete-orphan') + audience_reviews = db.relationship('AudienceReview', backref='user', lazy=True, cascade='all, delete-orphan') + + +class Genre(db.Model): + __tablename__ = 'genres' + id = db.Column(db.Integer, primary_key=True) + name = db.Column(db.String(50), unique=True, nullable=False) + slug = db.Column(db.String(50), unique=True, nullable=False) + + +movie_genres = db.Table('movie_genres', + db.Column('movie_id', db.Integer, db.ForeignKey('movies.id'), primary_key=True), + db.Column('genre_id', db.Integer, db.ForeignKey('genres.id'), primary_key=True) +) + + +class Movie(db.Model): + __tablename__ = 'movies' + id = db.Column(db.Integer, primary_key=True) + title = db.Column(db.String(200), nullable=False, index=True) + slug = db.Column(db.String(200), unique=True, nullable=False, index=True) + year = db.Column(db.Integer, nullable=False, index=True) + runtime_minutes = db.Column(db.Integer, default=0) + synopsis = db.Column(db.Text, default='') + poster_image = db.Column(db.String(300), default='') + tomatometer = db.Column(db.Integer, default=0) # 0-100 + audience_score = db.Column(db.Integer, default=0) # 0-100 + certified_fresh = db.Column(db.Boolean, default=False) + pg_rating = db.Column(db.String(10), default='PG-13') + director_name = db.Column(db.String(120), default='') + studio = db.Column(db.String(120), default='') + streaming_platform = db.Column(db.String(100), default='') + consensus = db.Column(db.Text, default='') # critics consensus + audience_consensus = db.Column(db.Text, default='') + box_office = db.Column(db.String(50), default='') + release_date = db.Column(db.String(20), default='') + in_theaters = db.Column(db.Boolean, default=False) + created_at = db.Column(db.DateTime, default=datetime.utcnow) + + genres = db.relationship('Genre', secondary=movie_genres, lazy='subquery', + backref=db.backref('movies', lazy=True)) + cast_members = db.relationship('MovieCast', backref='movie', lazy=True, + cascade='all, delete-orphan', + order_by='MovieCast.billing_order') + critic_reviews = db.relationship('CriticReview', backref='movie', lazy=True, + cascade='all, delete-orphan') + audience_reviews = db.relationship('AudienceReview', backref='movie', lazy=True, + cascade='all, delete-orphan') + watchlist_items = db.relationship('WatchlistItem', backref='movie', lazy=True, + cascade='all, delete-orphan') + user_ratings = db.relationship('UserRating', backref='movie', lazy=True, + cascade='all, delete-orphan') + + @property + def tomatometer_icon(self): + if self.certified_fresh: + return '🏆' + return '🍅' if self.tomatometer >= 60 else '🟢' + + @property + def audience_icon(self): + return '🍿' + + @property + def tomatometer_status(self): + if self.certified_fresh: + return 'certified-fresh' + return 'fresh' if self.tomatometer >= 60 else 'rotten' + + @property + def audience_status(self): + return 'upright' if self.audience_score >= 60 else 'spilled' + + +class Person(db.Model): + __tablename__ = 'persons' + id = db.Column(db.Integer, primary_key=True) + name = db.Column(db.String(150), nullable=False, index=True) + slug = db.Column(db.String(150), unique=True, nullable=False, index=True) + bio = db.Column(db.Text, default='') + photo = db.Column(db.String(300), default='') + birthplace = db.Column(db.String(200), default='') + birth_date = db.Column(db.String(20), default='') + + cast_entries = db.relationship('MovieCast', backref='person', lazy=True) + + @property + def filmography(self): + entries = sorted(self.cast_entries, key=lambda c: c.movie.year if c.movie else 0, reverse=True) + return entries + + @property + def highest_rated_movie(self): + movies = [c.movie for c in self.cast_entries if c.movie] + if not movies: + return None + return max(movies, key=lambda m: m.tomatometer) + + @property + def lowest_rated_movie(self): + movies = [c.movie for c in self.cast_entries if c.movie] + if not movies: + return None + return min(movies, key=lambda m: m.tomatometer) + + +class MovieCast(db.Model): + __tablename__ = 'movie_cast' + id = db.Column(db.Integer, primary_key=True) + movie_id = db.Column(db.Integer, db.ForeignKey('movies.id'), nullable=False) + person_id = db.Column(db.Integer, db.ForeignKey('persons.id'), nullable=False) + character_name = db.Column(db.String(150), default='') + role_type = db.Column(db.String(20), default='actor') # actor, director, producer + billing_order = db.Column(db.Integer, default=0) + + +class CriticReview(db.Model): + __tablename__ = 'critic_reviews' + id = db.Column(db.Integer, primary_key=True) + movie_id = db.Column(db.Integer, db.ForeignKey('movies.id'), nullable=False) + critic_name = db.Column(db.String(120), nullable=False) + publication = db.Column(db.String(120), nullable=False) + text = db.Column(db.Text, nullable=False) + fresh = db.Column(db.Boolean, default=True) + score = db.Column(db.String(20), default='') # e.g. "8/10", "B+", "4/5" + review_date = db.Column(db.String(20), default='') + + +class AudienceReview(db.Model): + __tablename__ = 'audience_reviews' + id = db.Column(db.Integer, primary_key=True) + movie_id = db.Column(db.Integer, db.ForeignKey('movies.id'), nullable=False) + user_id = db.Column(db.Integer, db.ForeignKey('users.id'), nullable=False) + score = db.Column(db.Float, default=3.0) # 0.5-5.0 stars + text = db.Column(db.Text, default='') + review_date = db.Column(db.DateTime, default=datetime.utcnow) + + +class UserRating(db.Model): + __tablename__ = 'user_ratings' + id = db.Column(db.Integer, primary_key=True) + movie_id = db.Column(db.Integer, db.ForeignKey('movies.id'), nullable=False) + user_id = db.Column(db.Integer, db.ForeignKey('users.id'), nullable=False) + score = db.Column(db.Float, default=3.0) # 0.5-5.0 + created_at = db.Column(db.DateTime, default=datetime.utcnow) + + __table_args__ = (db.UniqueConstraint('movie_id', 'user_id', name='uq_user_movie_rating'),) + + +class WatchlistItem(db.Model): + __tablename__ = 'watchlist_items' + id = db.Column(db.Integer, primary_key=True) + movie_id = db.Column(db.Integer, db.ForeignKey('movies.id'), nullable=False) + user_id = db.Column(db.Integer, db.ForeignKey('users.id'), nullable=False) + added_at = db.Column(db.DateTime, default=datetime.utcnow) + + __table_args__ = (db.UniqueConstraint('movie_id', 'user_id', name='uq_user_movie_watchlist'),) + + +# ────────────────────────────────────────────── +# Auth setup +# ────────────────────────────────────────────── + +@login_manager.user_loader +def load_user(user_id): + return db.session.get(User, int(user_id)) + + +@app.context_processor +def inject_csrf(): + return dict(csrf_token=generate_csrf) + + +@app.context_processor +def inject_globals(): + genres = Genre.query.order_by(Genre.name).all() + return dict(all_genres=genres) + + +# ────────────────────────────────────────────── +# Forms +# ────────────────────────────────────────────── + +class LoginForm(FlaskForm): + email = StringField('Email', validators=[DataRequired(), Email()]) + password = PasswordField('Password', validators=[DataRequired()]) + + +class RegisterForm(FlaskForm): + name = StringField('Name', validators=[DataRequired(), Length(min=2, max=120)]) + email = StringField('Email', validators=[DataRequired(), Email()]) + password = PasswordField('Password', validators=[DataRequired(), Length(min=6)]) + confirm_password = PasswordField('Confirm Password', validators=[DataRequired(), EqualTo('password')]) + + +class ReviewForm(FlaskForm): + score = FloatField('Rating', validators=[DataRequired(), NumberRange(min=0.5, max=5.0)]) + text = TextAreaField('Review', validators=[DataRequired(), Length(min=10, max=2000)]) + + +class RatingForm(FlaskForm): + score = FloatField('Rating', validators=[DataRequired(), NumberRange(min=0.5, max=5.0)]) + + +# ────────────────────────────────────────────── +# Search helper — scored token overlap +# ────────────────────────────────────────────── + +def tokenize(text): + """Split text into lowercase alphanumeric tokens.""" + return re.findall(r'[a-z0-9]+', text.lower()) + + +def token_overlap_score(query_tokens, target_tokens): + """Score based on fraction of query tokens found in target.""" + if not query_tokens or not target_tokens: + return 0.0 + target_set = set(target_tokens) + hits = sum(1 for t in query_tokens if t in target_set) + return hits / len(query_tokens) + + +def search_movies(query, limit=30): + """Search movies by scored token overlap on title, director, genre names.""" + if not query or not query.strip(): + return [] + query_tokens = tokenize(query) + if not query_tokens: + return [] + + movies = Movie.query.all() + scored = [] + for m in movies: + genre_text = ' '.join(g.name for g in m.genres) + target = f"{m.title} {m.director_name} {genre_text} {m.year}" + target_tokens = tokenize(target) + score = token_overlap_score(query_tokens, target_tokens) + if score > 0: + scored.append((score, m)) + + scored.sort(key=lambda x: (-x[0], x[1].title)) + return [m for _, m in scored[:limit]] + + +def search_people(query, limit=20): + """Search people by scored token overlap on name.""" + if not query or not query.strip(): + return [] + query_tokens = tokenize(query) + if not query_tokens: + return [] + + people = Person.query.all() + scored = [] + for p in people: + target_tokens = tokenize(p.name) + score = token_overlap_score(query_tokens, target_tokens) + if score > 0: + scored.append((score, p)) + + scored.sort(key=lambda x: (-x[0], x[1].name)) + return [p for _, p in scored[:limit]] + + +# ────────────────────────────────────────────── +# Routes +# ────────────────────────────────────────────── + +@app.route('/') +def index(): + """Homepage with movie sections.""" + new_movies = Movie.query.filter_by(in_theaters=True).order_by(Movie.release_date.desc()).limit(12).all() + streaming = Movie.query.filter(Movie.streaming_platform != '').order_by(func.random()).limit(12).all() + certified = Movie.query.filter_by(certified_fresh=True).order_by(Movie.tomatometer.desc()).limit(12).all() + # Top box office — movies in theaters sorted by box_office + top_box = Movie.query.filter_by(in_theaters=True).order_by(Movie.box_office.desc()).limit(10).all() + popular = Movie.query.order_by(Movie.audience_score.desc()).limit(12).all() + return render_template('index.html', + new_movies=new_movies, + streaming_movies=streaming, + certified_movies=certified, + top_box_office=top_box, + popular_movies=popular) + + +@app.route('/search') +def search(): + """Search movies and people.""" + query = request.args.get('search', '').strip() + if not query: + return render_template('search_results.html', query='', movies=[], people=[]) + movies = search_movies(query) + people = search_people(query) + return render_template('search_results.html', query=query, movies=movies, people=people) + + +@app.route('/browse/movies_in_theaters/') +def browse_in_theaters(): + """Browse movies currently in theaters.""" + return _browse_movies(Movie.query.filter_by(in_theaters=True), 'In Theaters', 'movies_in_theaters') + + +@app.route('/browse/movies_at_home/') +def browse_at_home(): + """Browse movies available for streaming.""" + return _browse_movies(Movie.query.filter(Movie.streaming_platform != ''), 'Streaming at Home', 'movies_at_home') + + +@app.route('/browse/movies/') +def browse_all(): + """Browse all movies.""" + return _browse_movies(Movie.query, 'All Movies', 'movies') + + +def _browse_movies(base_query, title, browse_type): + """Common browse logic with filters.""" + # Genre filter + genre_slug = request.args.get('genre', '') + if genre_slug: + genre = Genre.query.filter_by(slug=genre_slug).first() + if genre: + base_query = base_query.filter(Movie.genres.any(Genre.id == genre.id)) + + # Certified fresh filter + cf = request.args.get('certified_fresh', '') + if cf == 'true': + base_query = base_query.filter_by(certified_fresh=True) + + # Rating filter + pg = request.args.get('rating', '') + if pg in ('G', 'PG', 'PG-13', 'R'): + base_query = base_query.filter_by(pg_rating=pg) + + # Year filter + year = request.args.get('year', '') + if year and year.isdigit(): + base_query = base_query.filter_by(year=int(year)) + + # Streaming platform filter + platform = request.args.get('platform', '') + if platform: + base_query = base_query.filter_by(streaming_platform=platform) + + # Sort + sort = request.args.get('sort', 'popular') + if sort == 'newest': + base_query = base_query.order_by(Movie.year.desc(), Movie.title) + elif sort == 'tomatometer': + base_query = base_query.order_by(Movie.tomatometer.desc(), Movie.title) + elif sort == 'audience': + base_query = base_query.order_by(Movie.audience_score.desc(), Movie.title) + elif sort == 'a_z': + base_query = base_query.order_by(Movie.title) + else: # popular + base_query = base_query.order_by(Movie.audience_score.desc(), Movie.tomatometer.desc()) + + movies = base_query.all() + genres = Genre.query.order_by(Genre.name).all() + platforms = db.session.query(Movie.streaming_platform).filter( + Movie.streaming_platform != '' + ).distinct().order_by(Movie.streaming_platform).all() + platforms = [p[0] for p in platforms] + + return render_template('browse.html', + title=title, + browse_type=browse_type, + movies=movies, + genres=genres, + platforms=platforms, + current_genre=genre_slug, + current_sort=sort, + current_cf=cf, + current_rating=pg, + current_year=year, + current_platform=platform) + + +@app.route('/m/') +def movie_detail(slug): + """Movie detail page.""" + movie = Movie.query.filter_by(slug=slug).first_or_404() + critic_reviews = CriticReview.query.filter_by(movie_id=movie.id).order_by(CriticReview.review_date.desc()).all() + audience_reviews = AudienceReview.query.filter_by(movie_id=movie.id).order_by(AudienceReview.review_date.desc()).all() + cast = MovieCast.query.filter_by(movie_id=movie.id).order_by(MovieCast.billing_order).all() + directors = [c for c in cast if c.role_type == 'director'] + actors = [c for c in cast if c.role_type == 'actor'] + + # Similar movies — same primary genre + similar = [] + if movie.genres: + primary_genre = movie.genres[0] + similar = Movie.query.filter( + Movie.id != movie.id, + Movie.genres.any(Genre.id == primary_genre.id) + ).order_by(Movie.tomatometer.desc()).limit(6).all() + + # User's rating/watchlist status + user_rating = None + in_watchlist = False + if current_user.is_authenticated: + user_rating = UserRating.query.filter_by( + movie_id=movie.id, user_id=current_user.id + ).first() + in_watchlist = WatchlistItem.query.filter_by( + movie_id=movie.id, user_id=current_user.id + ).first() is not None + + review_form = ReviewForm() + rating_form = RatingForm() + + return render_template('movie_detail.html', + movie=movie, + critic_reviews=critic_reviews, + audience_reviews=audience_reviews, + directors=directors, + actors=actors, + similar_movies=similar, + user_rating=user_rating, + in_watchlist=in_watchlist, + review_form=review_form, + rating_form=rating_form) + + +@app.route('/celebrity/') +def celebrity_detail(slug): + """Celebrity detail page with filmography.""" + person = Person.query.filter_by(slug=slug).first_or_404() + + # Get filmography sorted by year desc + filmography = [] + for entry in person.cast_entries: + if entry.movie: + filmography.append(entry) + filmography.sort(key=lambda c: c.movie.year, reverse=True) + + # Sort option + sort = request.args.get('sort', 'newest') + if sort == 'oldest': + filmography.sort(key=lambda c: c.movie.year) + elif sort == 'critics_highest': + filmography.sort(key=lambda c: c.movie.tomatometer, reverse=True) + elif sort == 'critics_lowest': + filmography.sort(key=lambda c: c.movie.tomatometer) + elif sort == 'audience_highest': + filmography.sort(key=lambda c: c.movie.audience_score, reverse=True) + elif sort == 'audience_lowest': + filmography.sort(key=lambda c: c.movie.audience_score) + + highest = person.highest_rated_movie + lowest = person.lowest_rated_movie + + return render_template('celebrity.html', + person=person, + filmography=filmography, + highest_rated=highest, + lowest_rated=lowest, + current_sort=sort) + + +# ── Auth routes ── + +@app.route('/login', methods=['GET', 'POST']) +def login(): + if current_user.is_authenticated: + return redirect(url_for('index')) + form = LoginForm() + if form.validate_on_submit(): + user = User.query.filter_by(email=form.email.data.lower()).first() + if user and bcrypt.check_password_hash(user.password_hash, form.password.data): + login_user(user) + flash('Welcome back!', 'success') + next_page = request.args.get('next') + return redirect(next_page or url_for('index')) + flash('Invalid email or password.', 'danger') + return render_template('login.html', form=form) + + +@app.route('/register', methods=['GET', 'POST']) +def register(): + if current_user.is_authenticated: + return redirect(url_for('index')) + form = RegisterForm() + if form.validate_on_submit(): + existing = User.query.filter_by(email=form.email.data.lower()).first() + if existing: + flash('Email already registered.', 'danger') + else: + hashed = bcrypt.generate_password_hash(form.password.data).decode('utf-8') + user = User(email=form.email.data.lower(), password_hash=hashed, name=form.name.data) + db.session.add(user) + db.session.commit() + login_user(user) + flash('Account created!', 'success') + return redirect(url_for('index')) + return render_template('register.html', form=form) + + +@app.route('/logout') +def logout(): + logout_user() + flash('You have been logged out.', 'info') + return redirect(url_for('index')) + + +# ── Watchlist routes ── + +@app.route('/user/watchlist') +@login_required +def watchlist(): + items = WatchlistItem.query.filter_by(user_id=current_user.id).order_by(WatchlistItem.added_at.desc()).all() + movies = [item.movie for item in items if item.movie] + return render_template('watchlist.html', movies=movies) + + +@app.route('/user/watchlist/add/', methods=['POST']) +@login_required +def add_to_watchlist(movie_id): + movie = Movie.query.get_or_404(movie_id) + existing = WatchlistItem.query.filter_by(movie_id=movie_id, user_id=current_user.id).first() + if not existing: + item = WatchlistItem(movie_id=movie_id, user_id=current_user.id) + db.session.add(item) + db.session.commit() + flash(f'Added "{movie.title}" to your watchlist.', 'success') + else: + flash(f'"{movie.title}" is already in your watchlist.', 'info') + return redirect(url_for('movie_detail', slug=movie.slug)) + + +@app.route('/user/watchlist/remove/', methods=['POST']) +@login_required +def remove_from_watchlist(movie_id): + movie = Movie.query.get_or_404(movie_id) + item = WatchlistItem.query.filter_by(movie_id=movie_id, user_id=current_user.id).first() + if item: + db.session.delete(item) + db.session.commit() + flash(f'Removed "{movie.title}" from your watchlist.', 'success') + referrer = request.referrer + if referrer and '/user/watchlist' in referrer: + return redirect(url_for('watchlist')) + return redirect(url_for('movie_detail', slug=movie.slug)) + + +# ── Rating & Review routes ── + +@app.route('/m//rate', methods=['POST']) +@login_required +def rate_movie(slug): + movie = Movie.query.filter_by(slug=slug).first_or_404() + form = RatingForm() + if form.validate_on_submit(): + existing = UserRating.query.filter_by(movie_id=movie.id, user_id=current_user.id).first() + if existing: + existing.score = form.score.data + else: + rating = UserRating(movie_id=movie.id, user_id=current_user.id, score=form.score.data) + db.session.add(rating) + db.session.commit() + flash(f'Rated "{movie.title}" {form.score.data}/5 stars.', 'success') + return redirect(url_for('movie_detail', slug=slug)) + + +@app.route('/m//review', methods=['POST']) +@login_required +def review_movie(slug): + movie = Movie.query.filter_by(slug=slug).first_or_404() + form = ReviewForm() + if form.validate_on_submit(): + # Check if user already reviewed + existing = AudienceReview.query.filter_by(movie_id=movie.id, user_id=current_user.id).first() + if existing: + flash('You have already reviewed this movie.', 'info') + else: + review = AudienceReview( + movie_id=movie.id, + user_id=current_user.id, + score=form.score.data, + text=form.text.data + ) + db.session.add(review) + db.session.commit() + flash('Review submitted!', 'success') + return redirect(url_for('movie_detail', slug=slug)) + + +# ── Health check ── + +@app.route('/_health') +def health(): + try: + movie_count = Movie.query.count() + person_count = Person.query.count() + return jsonify({ + 'ok': True, + 'site': 'rotten_tomatoes', + 'movies': movie_count, + 'persons': person_count + }) + except Exception as e: + return jsonify({'ok': False, 'error': str(e)}), 500 + + +# ────────────────────────────────────────────── +# DB init & seed +# ────────────────────────────────────────────── + +def init_db(): + """Create tables and seed data.""" + db.create_all() + from seed_data import seed_all + seed_all(db, Genre, Movie, Person, MovieCast, CriticReview, AudienceReview, User, UserRating, WatchlistItem) + + +with app.app_context(): + init_db() + + +if __name__ == '__main__': + port = int(os.environ.get('PORT', 5000)) + app.run(host='0.0.0.0', port=port, debug=False) diff --git a/sites/rotten_tomatoes/download_people.py b/sites/rotten_tomatoes/download_people.py new file mode 100644 index 00000000..feaa2500 --- /dev/null +++ b/sites/rotten_tomatoes/download_people.py @@ -0,0 +1,57 @@ +#!/usr/bin/env python3 +"""Download celebrity photos from RT celebrity pages.""" +import json, subprocess, os, re, sys + +PEOPLE_DIR = "static/images/people" +os.makedirs(PEOPLE_DIR, exist_ok=True) + +sys.path.insert(0, '.') +import seed_data + +total = len(seed_data.PERSONS) +done = 0 +failed = [] + +for p in seed_data.PERSONS: + slug = p['slug'] + outpath = f"{PEOPLE_DIR}/{slug}.jpg" + if os.path.exists(outpath) and os.path.getsize(outpath) > 1000: + done += 1 + continue + + try: + result = subprocess.run( + ['curl', '-sL', '--connect-timeout', '5', '--max-time', '10', + f'https://www.rottentomatoes.com/celebrity/{slug}'], + capture_output=True, text=True, timeout=15 + ) + html = result.stdout + + # Find celebrity headshot - look for celeb image patterns + # Pattern 1: ems-prd-assets/celebrities/ (base64: ZW1zLXByZC1hc3NldHMvY2VsZWJyaXRpZXMv) + # Pattern 2: prd-ems-assets/celebrities/ (base64: cHJkLWVtcy1hc3NldHMvY2VsZWJyaXRpZXMv) + celeb_urls = re.findall(r'https://resizing\.flixster\.com/[^"]+(?:Y2VsZWJyaXRpZXMv|Y2VsZWJyaXRpZX)[^"]*', html) + + if celeb_urls: + photo_url = celeb_urls[-1] # Last one is usually the main headshot + dl_result = subprocess.run( + ['curl', '-sL', '-o', outpath, '--connect-timeout', '5', '--max-time', '15', photo_url], + capture_output=True, timeout=20 + ) + if dl_result.returncode == 0 and os.path.exists(outpath) and os.path.getsize(outpath) > 1000: + done += 1 + else: + failed.append(slug) + if os.path.exists(outpath): + os.remove(outpath) + else: + failed.append(slug) + except Exception as e: + failed.append(slug) + + if done % 20 == 0 and done > 0: + print(f"Downloaded {done}/{total}...", flush=True) + +print(f"Downloaded: {done}/{total}") +if failed: + print(f"Failed ({len(failed)}): {', '.join(failed[:30])}") diff --git a/sites/rotten_tomatoes/download_posters.py b/sites/rotten_tomatoes/download_posters.py new file mode 100644 index 00000000..bec8cc7d --- /dev/null +++ b/sites/rotten_tomatoes/download_posters.py @@ -0,0 +1,42 @@ +#!/usr/bin/env python3 +"""Download poster images from flixster CDN URLs.""" +import json, subprocess, os, sys + +POSTER_DIR = "static/images/posters" +os.makedirs(POSTER_DIR, exist_ok=True) + +with open('scraped_data/movies.json') as f: + data = json.load(f) + +movies = data['movies'] +total = len([m for m in movies if m.get('poster_url')]) +done = 0 +failed = [] + +for m in movies: + url = m.get('poster_url') + if not url: + continue + slug = m['slug'] + outpath = f"{POSTER_DIR}/{slug}.jpg" + if os.path.exists(outpath) and os.path.getsize(outpath) > 1000: + done += 1 + continue + + result = subprocess.run( + ['curl', '-sL', '-o', outpath, '--connect-timeout', '10', '--max-time', '30', url], + capture_output=True, timeout=35 + ) + + if result.returncode == 0 and os.path.exists(outpath) and os.path.getsize(outpath) > 1000: + done += 1 + if done % 20 == 0: + print(f"Downloaded {done}/{total}...") + else: + failed.append(slug) + if os.path.exists(outpath): + os.remove(outpath) + +print(f"Downloaded: {done}/{total}") +if failed: + print(f"Failed ({len(failed)}): {failed[:10]}...") diff --git a/sites/rotten_tomatoes/requirements.txt b/sites/rotten_tomatoes/requirements.txt new file mode 100644 index 00000000..e3e9a71d --- /dev/null +++ b/sites/rotten_tomatoes/requirements.txt @@ -0,0 +1 @@ +Flask diff --git a/sites/rotten_tomatoes/seed_data.py b/sites/rotten_tomatoes/seed_data.py new file mode 100644 index 00000000..63e62712 --- /dev/null +++ b/sites/rotten_tomatoes/seed_data.py @@ -0,0 +1,7510 @@ +""" +Seed data for Rotten Tomatoes mirror site. +All data scraped from rottentomatoes.com - real movies, real scores, real reviews. +""" + +GENRES = [ + "Action", + "Adventure", + "Animation", + "Biography", + "Comedy", + "Crime", + "Documentary", + "Drama", + "Fantasy", + "History", + "Horror", + "Kids & Family", + "Musical", + "Mystery & Thriller", + "Romance", + "Sci-Fi", + "War", + "Western", +] + +STREAMING_PLATFORMS = ["Netflix", "Max", "Hulu", "Disney+", "Apple TV+", "Prime Video", "Paramount+", "Peacock"] + +MOVIES = [ + { + "title": "Avengers: Endgame", + "slug": "avengers_endgame", + "year": 2019, + "tomatometer": 94, + "audience_score": 90, + "synopsis": "Adrift in space with no food or water, Tony Stark sends a message to Pepper Potts as his oxygen supply starts to dwindle. Meanwhile, the remaining Avengers -- Thor, Black Widow, Captain America and Bruce Banner -- must figure out a way to bring back their vanquished allies for an epic showdown with Thanos, the evil demigod who decimated the planet and the universe.", + "runtime": "3h 1m", + "pg_rating": "PG-13", + "director": "Anthony Russo, Joe Russo", + "genres": ["Action", "Adventure", "Fantasy", "Sci-Fi"], + "streaming": ["Disney+"], + "box_office": "$858.4M", + "certified_fresh": True, + "critics_consensus": "Exciting, entertaining, and emotionally impactful, Avengers: Endgame does whatever it takes to deliver a satisfying finale to Marvel's epic Infinity Saga.", + "poster_url": "/static/images/posters/avengers_endgame.jpg", + "distributor": "Walt Disney", + }, + { + "title": "Avatar: Fire and Ash", + "slug": "avatar_fire_and_ash", + "year": 2025, + "tomatometer": 66, + "audience_score": 90, + "synopsis": "With Avatar: Fire and Ash, James Cameron takes audiences back to Pandora in an immersive new adventure with Marine turned Na'vi leader Jake Sully (Sam Worthington), Na'vi warrior Neytiri (Zoe Saldaña), and the Sully family.", + "runtime": "3h 12m", + "pg_rating": "PG-13", + "director": "James Cameron", + "genres": ["Sci-Fi", "Adventure", "Action", "Fantasy"], + "streaming": [], + "box_office": "$403.3M", + "certified_fresh": False, + "critics_consensus": "Remaining on the cutting edge of visual effects, Fire and Ash repeats the narrative beats of its predecessors to frustrating effect, but its grand spectacle continues to stoke one-of-a-kind thrills.", + "poster_url": "/static/images/posters/avatar_fire_and_ash.jpg", + "distributor": "20th Century Studios", + }, + { + "title": "Anaconda", + "slug": "anaconda_2025", + "year": 2025, + "tomatometer": 47, + "audience_score": 74, + "synopsis": "THIS IS NOT A REBOOT. It is an entirely original comedy, inspired by the cinematic 'classic' Anaconda, that features Doug (Jack Black) and Griff (Paul Rudd), who have been best friends since they were kids and always dreamed of remaking their all-time favorite movie.", + "runtime": "1h 38m", + "pg_rating": "PG-13", + "director": "Tom Gormican", + "genres": ["Comedy", "Adventure", "Horror"], + "streaming": ["Netflix"], + "box_office": "$64.9M", + "certified_fresh": False, + "critics_consensus": "The premise might be ripe for a raucous action-comedy, but this meta reboot of Anaconda can't detach its jaws wide enough to swallow so many conflicting tones.", + "poster_url": "/static/images/posters/anaconda_2025.jpg", + "distributor": "Columbia Pictures", + }, + { + "title": "28 Years Later: The Bone Temple", + "slug": "28_years_later_the_bone_temple", + "year": 2026, + "tomatometer": 92, + "audience_score": 88, + "synopsis": "In a continuation of the epic story, Dr. Kelson (Ralph Fiennes) makes a discovery that could change the world as they know it -- and Spike's (Alfie Williams) encounter with Jimmy Crystal (Jack O'Connell) becomes a nightmare he can't escape.", + "runtime": "1h 50m", + "pg_rating": "R", + "director": "Nia DaCosta", + "genres": ["Horror", "Mystery & Thriller"], + "streaming": ["Netflix"], + "box_office": "$24.8M", + "certified_fresh": True, + "critics_consensus": "A direct continuation of 28 Years Later that ups the gore while deepening the dread, The Bone Temple is finely adorned by Nia DaCosta's unnerving direction as well as Ralph Fiennes and Jack O'Connell's inspired performances.", + "poster_url": "/static/images/posters/28_years_later_the_bone_temple.jpg", + "distributor": "Columbia Pictures", + }, + { + "title": "BlackBerry", + "slug": "blackberry", + "year": 2023, + "tomatometer": 97, + "audience_score": 94, + "synopsis": "BlackBerry tells the story of Mike Lazaridis and Jim Balsillie, the two men that charted the course of the spectacular rise and catastrophic demise of the world's first smartphone.", + "runtime": "1h 59m", + "pg_rating": "R", + "director": "Matt Johnson", + "genres": ["Comedy", "Drama", "History"], + "streaming": ["Netflix"], + "box_office": "$1.5M", + "certified_fresh": True, + "critics_consensus": "With intelligence as sharp as its humor, BlackBerry takes a terrifically entertaining look at the rise and fall of a generation-defining gadget.", + "poster_url": "/static/images/posters/blackberry.jpg", + "distributor": "IFC Films", + }, + { + "title": "Shrek", + "slug": "shrek", + "year": 2001, + "tomatometer": 88, + "audience_score": 90, + "synopsis": "Once upon a time, in a far away swamp, there lived an ogre named Shrek whose precious solitude is suddenly shattered by an invasion of annoying fairy tale characters. They were all banished from their kingdom by the evil Lord Farquaad.", + "runtime": "1h 30m", + "pg_rating": "PG", + "director": "Vicky Jenson", + "genres": ["Kids & Family", "Comedy", "Fantasy", "Animation"], + "streaming": [], + "box_office": "$267.7M", + "certified_fresh": True, + "critics_consensus": "While simultaneously embracing and subverting fairy tales, the irreverent Shrek also manages to tweak Disney's nose, provide a moral message to children, and offer viewers a funny, fast-paced ride.", + "poster_url": "/static/images/posters/shrek.jpg", + "distributor": "DreamWorks SKG", + }, + { + "title": "Godzilla Minus One", + "slug": "godzilla_minus_one", + "year": 2023, + "tomatometer": 99, + "audience_score": 98, + "synopsis": "Japan is already devastated by the war when a new crisis emerges in the form of a giant monster.", + "runtime": "2h 5m", + "pg_rating": "PG-13", + "director": "Takashi Yamazaki", + "genres": ["Sci-Fi", "Action", "Adventure"], + "streaming": ["Netflix"], + "box_office": "$56.9M", + "certified_fresh": True, + "critics_consensus": "With engaging human stories anchoring the action, Godzilla Minus One is one kaiju movie that remains truly compelling between the scenes of mass destruction.", + "poster_url": "/static/images/posters/godzilla_minus_one.jpg", + "distributor": "Toho International", + }, + { + "title": "Top Gun: Maverick", + "slug": "top_gun_maverick", + "year": 2022, + "tomatometer": 96, + "audience_score": 99, + "synopsis": "After more than thirty years of service as one of the Navy's top aviators, Pete 'Maverick' Mitchell is where he belongs, pushing the envelope as a courageous test pilot and dodging the advancement in rank that would ground him.", + "runtime": "2h 10m", + "pg_rating": "PG-13", + "director": "Joseph Kosinski", + "genres": ["Action", "Adventure"], + "streaming": ["Paramount+"], + "box_office": "$718.7M", + "certified_fresh": True, + "critics_consensus": "Top Gun: Maverick pulls off a feat even trickier than a 4G inverted dive, delivering a long-belated sequel that surpasses its predecessor in wildly entertaining style.", + "poster_url": "/static/images/posters/top_gun_maverick.jpg", + "distributor": "Paramount Pictures", + }, + { + "title": "Oddity", + "slug": "oddity", + "year": 2024, + "tomatometer": 96, + "audience_score": 77, + "synopsis": "When Dani is brutally murdered at the remote country house that she and her husband Ted are renovating, everyone suspects a patient from the local mental health institution. A year later, Dani's blind twin sister Darcy pays an unexpected visit with the most dangerous items from her cursed collection.", + "runtime": "1h 38m", + "pg_rating": "R", + "director": "Damian McCarthy", + "genres": ["Horror", "Mystery & Thriller"], + "streaming": ["Disney+", "Hulu"], + "box_office": "$1.2M", + "certified_fresh": True, + "critics_consensus": "An elegant and spooky ghost story punctuated with clever jolts, Oddity hews to the fundamentals of fright and achieves shout-inducing results.", + "poster_url": "/static/images/posters/oddity.jpg", + "distributor": "IFC Films", + }, + { + "title": "The Dark Knight", + "slug": "the_dark_knight", + "year": 2008, + "tomatometer": 94, + "audience_score": 94, + "synopsis": "With the help of allies, Lt. Jim Gordon and DA Harvey Dent, Batman is able to keep a tight lid on crime in Gotham City. But when a young criminal calling himself the Joker suddenly throws the town into chaos, the caped crusader begins to tread a fine line between heroism and vigilantism.", + "runtime": "2h 32m", + "pg_rating": "PG-13", + "director": "Christopher Nolan", + "genres": ["Action", "Adventure", "Fantasy"], + "streaming": ["Max"], + "box_office": "$533.3M", + "certified_fresh": True, + "critics_consensus": "Dark, complex, and unforgettable, The Dark Knight succeeds not just as an entertaining comic book film, but as a richly thrilling crime saga.", + "poster_url": "/static/images/posters/the_dark_knight.jpg", + "distributor": "Warner Bros. Pictures", + }, + { + "title": "Superman", + "slug": "superman_2025", + "year": 2025, + "tomatometer": 83, + "audience_score": 90, + "synopsis": "When Superman gets drawn into conflicts at home and abroad, his actions are questioned, giving tech billionaire Lex Luthor the opportunity to get the Man of Steel out of the way for good.", + "runtime": "2h 23m", + "pg_rating": "PG-13", + "director": "James Gunn", + "genres": ["Action", "Adventure", "Sci-Fi", "Fantasy"], + "streaming": ["Max"], + "box_office": "$354.2M", + "certified_fresh": True, + "critics_consensus": "Pulling off the heroic feat of fleshing out a dynamic new world while putting its champion's big, beating heart front and center, this Superman flies high as a Man of Tomorrow grounded in the here and now.", + "poster_url": "/static/images/posters/superman_2025.jpg", + "distributor": "Warner Bros. Pictures", + }, + { + "title": "Dune: Part Two", + "slug": "dune_part_two", + "year": 2024, + "tomatometer": 92, + "audience_score": 95, + "synopsis": "Dune: Part Two will explore the mythic journey of Paul Atreides as he unites with Chani and the Fremen while on a warpath of revenge against the conspirators who destroyed his family.", + "runtime": "2h 46m", + "pg_rating": "PG-13", + "director": "Denis Villeneuve", + "genres": ["Sci-Fi", "Adventure", "Action", "Fantasy", "Drama"], + "streaming": ["Max"], + "box_office": "$714.4M", + "certified_fresh": True, + "critics_consensus": "Visually thrilling and narratively epic, Dune: Part Two continues Denis Villeneuve's adaptation of the beloved sci-fi series in spectacular form.", + "poster_url": "/static/images/posters/dune_part_two.jpg", + "distributor": "Warner Bros. Pictures", + }, + { + "title": "Inside Out 2", + "slug": "inside_out_2", + "year": 2024, + "tomatometer": 91, + "audience_score": 94, + "synopsis": "The little voices inside Riley's head know her inside and out -- but next summer, everything changes when Disney and Pixar's Inside Out 2 introduces a new Emotion: Anxiety.", + "runtime": "1h 36m", + "pg_rating": "PG", + "director": "Kelsey Mann", + "genres": ["Kids & Family", "Comedy", "Adventure", "Animation"], + "streaming": ["Disney+"], + "box_office": "$653.0M", + "certified_fresh": True, + "critics_consensus": "Spicing things up with the wrinkle of teenage angst, Inside Out 2 clears the head and warms the heart by living up to its predecessor's emotional intelligence.", + "poster_url": "/static/images/posters/inside_out_2.jpg", + "distributor": "Disney/Pixar", + }, + { + "title": "Oppenheimer", + "slug": "oppenheimer_2023", + "year": 2023, + "tomatometer": 93, + "audience_score": 91, + "synopsis": "During World War II, Lt. Gen. Leslie Groves Jr. appoints physicist J. Robert Oppenheimer to work on the top-secret Manhattan Project. Oppenheimer and a team of scientists spend years developing and designing the atomic bomb.", + "runtime": "3h 0m", + "pg_rating": "R", + "director": "Christopher Nolan", + "genres": ["Biography", "History", "Drama"], + "streaming": ["Netflix"], + "box_office": "$330.0M", + "certified_fresh": True, + "critics_consensus": "Oppenheimer marks another engrossing achievement from Christopher Nolan that benefits from Murphy's tour-de-force performance and stunning visuals.", + "poster_url": "/static/images/posters/oppenheimer_2023.jpg", + "distributor": "Universal Pictures", + }, + { + "title": "Barbie", + "slug": "barbie", + "year": 2023, + "tomatometer": 88, + "audience_score": 83, + "synopsis": "To live in Barbie Land is to be a perfect being in a perfect place. Unless you have a full-on existential crisis. Or you're a Ken.", + "runtime": "1h 54m", + "pg_rating": "PG-13", + "director": "Greta Gerwig", + "genres": ["Comedy"], + "streaming": ["Max"], + "box_office": "$636.2M", + "certified_fresh": True, + "critics_consensus": "Barbie is a visually dazzling comedy whose meta humor is smartly complemented by subversive storytelling.", + "poster_url": "/static/images/posters/barbie.jpg", + "distributor": "Warner Bros. Pictures", + }, + { + "title": "Everything Everywhere All at Once", + "slug": "everything_everywhere_all_at_once", + "year": 2022, + "tomatometer": 93, + "audience_score": 79, + "synopsis": "A hilarious and big-hearted sci-fi action adventure about an exhausted Chinese American woman (Michelle Yeoh) who can't seem to finish her taxes.", + "runtime": "2h 12m", + "pg_rating": "R", + "director": "Daniel Kwan, Daniel Scheinert", + "genres": ["Comedy", "Adventure", "Sci-Fi", "Fantasy"], + "streaming": ["Max"], + "box_office": "$76.7M", + "certified_fresh": True, + "critics_consensus": "Led by an outstanding Michelle Yeoh, Everything Everywhere All at Once lives up to its title with an expertly calibrated assault on the senses.", + "poster_url": "/static/images/posters/everything_everywhere_all_at_once.jpg", + "distributor": "A24", + }, + { + "title": "Parasite", + "slug": "parasite_2019", + "year": 2019, + "tomatometer": 99, + "audience_score": 90, + "synopsis": "Greed and class discrimination threaten the newly formed symbiotic relationship between the wealthy Park family and the destitute Kim clan.", + "runtime": "2h 12m", + "pg_rating": "R", + "director": "Bong Joon Ho", + "genres": ["Comedy", "Mystery & Thriller", "Drama"], + "streaming": [], + "box_office": "$53.7M", + "certified_fresh": True, + "critics_consensus": "An urgent, brilliantly layered look at timely social themes, Parasite finds writer-director Bong Joon Ho in near-total command of his craft.", + "poster_url": "/static/images/posters/parasite_2019.jpg", + "distributor": "NEON", + }, + { + "title": "The Wild Robot", + "slug": "the_wild_robot", + "year": 2024, + "tomatometer": 97, + "audience_score": 98, + "synopsis": "The epic adventure follows the journey of a robot -- ROZZUM unit 7134, 'Roz' for short -- that is shipwrecked on an uninhabited island and must learn to adapt to the harsh surroundings, becoming the adoptive parent of an orphaned gosling.", + "runtime": "1h 42m", + "pg_rating": "PG", + "director": "Christopher Sanders", + "genres": ["Kids & Family", "Adventure", "Animation"], + "streaming": ["Peacock"], + "box_office": "$146.0M", + "certified_fresh": True, + "critics_consensus": "A simple tale told with great sophistication, The Wild Robot is wondrous entertainment that dazzles the eye while filling your heart to the brim.", + "poster_url": "/static/images/posters/the_wild_robot.jpg", + "distributor": "Universal Pictures", + }, + { + "title": "The Substance", + "slug": "the_substance", + "year": 2024, + "tomatometer": 89, + "audience_score": 76, + "synopsis": "Have you ever dreamt of a better version of yourself? You, only better in every way. You should try this new product, it's called The Substance. IT CHANGED MY LIFE.", + "runtime": "2h 21m", + "pg_rating": "R", + "director": "Coralie Fargeat", + "genres": ["Horror", "Drama"], + "streaming": ["Max"], + "box_office": "$17.6M", + "certified_fresh": True, + "critics_consensus": "Audaciously gross, wickedly clever, and possibly Demi Moore's finest hour, The Substance is a gasp-inducing feat from writer-director Coralie Fargeat.", + "poster_url": "/static/images/posters/the_substance.jpg", + "distributor": "MUBI", + }, + { + "title": "Deadpool & Wolverine", + "slug": "deadpool_and_wolverine", + "year": 2024, + "tomatometer": 77, + "audience_score": 94, + "synopsis": "Deadpool's peaceful existence comes crashing down when the Time Variance Authority recruits him to help safeguard the multiverse. He soon unites with his would-be pal, Wolverine, to complete the mission.", + "runtime": "1h 45m", + "pg_rating": "R", + "director": "Shawn Levy", + "genres": ["Action", "Adventure", "Comedy"], + "streaming": ["Disney+"], + "box_office": "$636.7M", + "certified_fresh": False, + "critics_consensus": "Ryan Reynolds makes himself at home in the MCU with acerbic wit while Hugh Jackman provides an Adamantium backbone to proceedings in Deadpool & Wolverine.", + "poster_url": "/static/images/posters/deadpool_and_wolverine.jpg", + "distributor": "Walt Disney Pictures", + }, + { + "title": "Nosferatu", + "slug": "nosferatu_2024", + "year": 2024, + "tomatometer": 85, + "audience_score": 73, + "synopsis": "Robert Eggers' NOSFERATU is a gothic tale of obsession between a haunted young woman and the terrifying vampire infatuated with her, causing untold horror in its wake.", + "runtime": "2h 12m", + "pg_rating": "R", + "director": "Robert Eggers", + "genres": ["Horror"], + "streaming": ["Peacock"], + "box_office": "$95.4M", + "certified_fresh": True, + "critics_consensus": "Marvelously orchestrated by director Robert Eggers, Nosferatu is a behemoth of a horror film that is equal parts repulsive and seductive.", + "poster_url": "/static/images/posters/nosferatu_2024.jpg", + "distributor": "Focus Features", + }, + { + "title": "Interstellar", + "slug": "interstellar_2014", + "year": 2014, + "tomatometer": 73, + "audience_score": 87, + "synopsis": "In Earth's future, a global crop blight and second Dust Bowl are slowly rendering the planet uninhabitable. Professor Brand, a brilliant NASA physicist, is working on plans to save mankind by transporting Earth's population to a new home via a wormhole.", + "runtime": "2h 45m", + "pg_rating": "PG-13", + "director": "Christopher Nolan", + "genres": ["Sci-Fi", "Adventure", "Action"], + "streaming": ["Paramount+"], + "box_office": "$188.0M", + "certified_fresh": False, + "critics_consensus": "Interstellar represents more of the thrilling, thought-provoking, and visually resplendent filmmaking moviegoers have come to expect from writer-director Christopher Nolan, even if its intellectual reach somewhat exceeds its grasp.", + "poster_url": "/static/images/posters/interstellar_2014.jpg", + "distributor": "Paramount Pictures", + }, + { + "title": "Wicked", + "slug": "wicked_2024", + "year": 2024, + "tomatometer": 88, + "audience_score": 95, + "synopsis": "Wicked, the untold story of the witches of Oz, stars Cynthia Erivo as Elphaba, a young woman misunderstood because of her unusual green skin, and Ariana Grande as Glinda, a popular young woman gilded by privilege and ambition.", + "runtime": "2h 40m", + "pg_rating": "PG", + "director": "Jon M. Chu", + "genres": ["Kids & Family", "Musical", "Fantasy", "Adventure"], + "streaming": [], + "box_office": "$634.4M", + "certified_fresh": True, + "critics_consensus": "Defying gravity with its magical pairing of Cynthia Erivo and Ariana Grande, Wicked's sheer bravura and charm make for an irresistible invitation to Oz.", + "poster_url": "/static/images/posters/wicked_2024.jpg", + "distributor": "Universal Pictures", + }, + { + "title": "Sinners", + "slug": "sinners_2025", + "year": 2025, + "tomatometer": 97, + "audience_score": 96, + "synopsis": "Trying to leave their troubled lives behind, twin brothers (Michael B. Jordan) return to their hometown to start again, only to discover that an even greater evil is waiting to welcome them back.", + "runtime": "2h 17m", + "pg_rating": "R", + "director": "Ryan Coogler", + "genres": ["Horror", "Mystery & Thriller", "Drama"], + "streaming": ["Max"], + "box_office": "$278.5M", + "certified_fresh": True, + "critics_consensus": "A rip-roaring fusion of masterful visual storytelling and toe-tapping music, writer-director Ryan Coogler's first original blockbuster reveals the full scope of his singular imagination.", + "poster_url": "/static/images/posters/sinners_2025.jpg", + "distributor": "Warner Bros. Pictures", + }, + { + "title": "The Fantastic Four: First Steps", + "slug": "the_fantastic_four_first_steps", + "year": 2025, + "tomatometer": 86, + "audience_score": 90, + "synopsis": "Set against the vibrant backdrop of a 1960s-inspired, retro-futuristic world, Marvel Studios introduces Marvel's First Family as they face their most daunting challenge yet, defending Earth from Galactus and his enigmatic Herald, Silver Surfer.", + "runtime": "1h 54m", + "pg_rating": "PG-13", + "director": "Matt Shakman", + "genres": ["Action", "Adventure", "Sci-Fi", "Fantasy"], + "streaming": ["Disney+"], + "box_office": "$350.0M", + "certified_fresh": True, + "critics_consensus": "Benefitting from rock-solid cast chemistry and clad in appealingly retro 1960s design, this crack at The Fantastic Four does Marvel's First Family justice.", + "poster_url": "/static/images/posters/the_fantastic_four_first_steps.jpg", + "distributor": "Walt Disney Pictures", + }, + { + "title": "Lilo & Stitch", + "slug": "lilo_and_stitch", + "year": 2002, + "tomatometer": 86, + "audience_score": 78, + "synopsis": "A tale of a young girl's close encounter with the galaxy's most wanted extraterrestrial. Lilo is a lonely Hawaiian girl who adopts a small ugly dog, whom she names Stitch.", + "runtime": "1h 25m", + "pg_rating": "PG", + "director": "Christopher Sanders", + "genres": ["Kids & Family", "Comedy", "Animation"], + "streaming": ["Disney+"], + "box_office": "$145.8M", + "certified_fresh": True, + "critics_consensus": "Edgier than traditional Disney fare, Lilo and Stitch explores issues of family while providing a fun and charming story.", + "poster_url": "/static/images/posters/lilo_and_stitch.jpg", + "distributor": "Walt Disney Pictures", + }, + { + "title": "LifeHack", + "slug": "lifehack", + "year": 2026, + "tomatometer": 100, + "audience_score": None, + "synopsis": "LifeHack is a high-stakes cyber-heist thriller built for the digital age. Kyle and his three friends spend their time gaming and pranking online scammers with their hacking skills.", + "runtime": "1h 36m", + "pg_rating": "PG-13", + "director": "Ronan Corrigan", + "genres": ["Action", "Mystery & Thriller", "Crime"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/lifehack.jpg", + "distributor": "Triple Media Film", + }, + { + "title": "Obsession", + "slug": "obsession_2025", + "year": 2020, + "tomatometer": 95, + "audience_score": 93, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Obsession.", + "runtime": "1h 53m", + "pg_rating": "PG-13", + "director": "David Fincher", + "genres": ["Animation"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/obsession_2025.jpg", + "distributor": None, + }, + { + "title": "In the Grey", + "slug": "in_the_grey", + "year": 2020, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in In the Grey.", + "runtime": "1h 52m", + "pg_rating": "PG", + "director": "Pedro Almodovar", + "genres": ["Biography", "Comedy", "Action"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/in_the_grey.jpg", + "distributor": None, + }, + { + "title": "Is God Is", + "slug": "is_god_is", + "year": 2019, + "tomatometer": 98, + "audience_score": 94, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Is God Is.", + "runtime": "2h 40m", + "pg_rating": "G", + "director": "Greta Gerwig", + "genres": ["Romance", "Biography", "Adventure"], + "streaming": ["Netflix"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/is_god_is.jpg", + "distributor": None, + }, + { + "title": "The Wizard of the Kremlin", + "slug": "the_wizard_of_the_kremlin", + "year": 2025, + "tomatometer": 49, + "audience_score": 74, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Wizard of the Kremlin.", + "runtime": "2h 8m", + "pg_rating": "PG-13", + "director": "Ridley Scott", + "genres": ["Animation", "Sci-Fi"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/the_wizard_of_the_kremlin.jpg", + "distributor": None, + }, + { + "title": "Driver's Ed", + "slug": "drivers_ed", + "year": 2020, + "tomatometer": 77, + "audience_score": 85, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Driver's Ed.", + "runtime": "2h 23m", + "pg_rating": "PG", + "director": "Ridley Scott", + "genres": ["Fantasy", "Animation"], + "streaming": ["Max", "Disney+"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/drivers_ed.jpg", + "distributor": None, + }, + { + "title": "Magic Hour", + "slug": "magic_hour_2025_2", + "year": 2023, + "tomatometer": 69, + "audience_score": 56, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Magic Hour.", + "runtime": "1h 54m", + "pg_rating": "PG", + "director": "Taika Waititi", + "genres": ["Fantasy", "Romance", "Drama"], + "streaming": ["Max"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/magic_hour_2025_2.jpg", + "distributor": None, + }, + { + "title": "Mobile Suit Gundam Hathaway: The Sorcery of Nymph Circe", + "slug": "mobile_suit_gundam_hathaway_the_sorcery_of_nymph_circe", + "year": 2025, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Mobile Suit Gundam Hathaway: The Sorcery of Nymph Circe.", + "runtime": "2h 12m", + "pg_rating": "PG-13", + "director": "Emerald Fennell", + "genres": ["History", "Fantasy"], + "streaming": ["Disney+"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/mobile_suit_gundam_hathaway_the_sorcery_of_nymph_circe.jpg", + "distributor": None, + }, + { + "title": "Decorado", + "slug": "decorado_2025", + "year": 2023, + "tomatometer": 88, + "audience_score": 94, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Decorado.", + "runtime": "2h 24m", + "pg_rating": "PG-13", + "director": "Kathryn Bigelow", + "genres": ["Drama", "Mystery & Thriller", "Adventure"], + "streaming": ["Apple TV+"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/decorado_2025.jpg", + "distributor": None, + }, + { + "title": "Been Here Stay Here", + "slug": "been_here_stay_here", + "year": 2022, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Been Here Stay Here.", + "runtime": "2h 5m", + "pg_rating": "PG", + "director": "Ridley Scott", + "genres": ["Crime", "Comedy", "Adventure"], + "streaming": ["Apple TV+"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/been_here_stay_here.jpg", + "distributor": None, + }, + { + "title": "Forge", + "slug": "forge_2025", + "year": 2022, + "tomatometer": 82, + "audience_score": 58, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Forge.", + "runtime": "2h 23m", + "pg_rating": "G", + "director": "Chloe Zhao", + "genres": ["Crime", "Romance", "Musical"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/forge_2025.jpg", + "distributor": None, + }, + { + "title": "Diamonds", + "slug": "diamonds_2024", + "year": 2022, + "tomatometer": 83, + "audience_score": 82, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Diamonds.", + "runtime": "2h 16m", + "pg_rating": "NR", + "director": "Denis Villeneuve", + "genres": ["Western", "Animation", "Biography"], + "streaming": ["Disney+"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/diamonds_2024.jpg", + "distributor": None, + }, + { + "title": "I Don't Speak English", + "slug": "i_dont_speak_english_2026", + "year": 2026, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in I Don't Speak English.", + "runtime": "1h 44m", + "pg_rating": "PG", + "director": "Emerald Fennell", + "genres": ["Comedy"], + "streaming": ["Hulu", "Paramount+"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/i_dont_speak_english_2026.jpg", + "distributor": None, + }, + { + "title": "Aakhri Sawal", + "slug": "aakhri_sawal", + "year": 2025, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Aakhri Sawal.", + "runtime": "2h 24m", + "pg_rating": "NR", + "director": "Steven Spielberg", + "genres": ["Drama", "Kids & Family", "War"], + "streaming": ["Apple TV+", "Peacock"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/aakhri_sawal.jpg", + "distributor": None, + }, + { + "title": "Pati Patni Aur Woh Do", + "slug": "pati_patni_aur_woh_do", + "year": 2020, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Pati Patni Aur Woh Do.", + "runtime": "2h 2m", + "pg_rating": "PG", + "director": "Bong Joon Ho", + "genres": ["Western", "Animation", "Crime"], + "streaming": ["Hulu"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/pati_patni_aur_woh_do.jpg", + "distributor": None, + }, + { + "title": "Agatha's Almanac", + "slug": "agathas_almanac", + "year": 2019, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Agatha's Almanac.", + "runtime": "1h 38m", + "pg_rating": "NR", + "director": "Kathryn Bigelow", + "genres": ["Animation", "War", "Mystery & Thriller"], + "streaming": ["Apple TV+", "Paramount+"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/agathas_almanac.jpg", + "distributor": None, + }, + { + "title": "Shera", + "slug": "shera_2026", + "year": 2022, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Shera.", + "runtime": "2h 34m", + "pg_rating": "PG-13", + "director": "Ava DuVernay", + "genres": ["Fantasy"], + "streaming": ["Netflix", "Apple TV+"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/shera_2026.jpg", + "distributor": None, + }, + { + "title": "Being Towards Death", + "slug": "being_towards_death", + "year": 2026, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Being Towards Death.", + "runtime": "2h 4m", + "pg_rating": "R", + "director": "Martin Scorsese", + "genres": ["Horror"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "https://images.fandango.com/cms/assets/688ae830-1663-11ec-a769-91f6c1f3c5b6--rtvideodefault.jpg", + "distributor": None, + }, + { + "title": "Vanishing Point", + "slug": "vanishing_point_2026", + "year": 2022, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Vanishing Point.", + "runtime": "2h 33m", + "pg_rating": "PG", + "director": "Denis Villeneuve", + "genres": ["Drama", "Western", "Musical"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/vanishing_point_2026.jpg", + "distributor": None, + }, + { + "title": "Dharpakad", + "slug": "dharpakad_2026", + "year": 2026, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Dharpakad.", + "runtime": "2h 34m", + "pg_rating": "PG-13", + "director": "Barry Jenkins", + "genres": ["Mystery & Thriller", "Animation", "Biography"], + "streaming": ["Disney+", "Prime Video"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "https://images.fandango.com/cms/assets/688ae830-1663-11ec-a769-91f6c1f3c5b6--rtvideodefault.jpg", + "distributor": None, + }, + { + "title": "Gregg Allman: The Music of My Soul", + "slug": "gregg_allman_the_music_of_my_soul", + "year": 2025, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Gregg Allman: The Music of My Soul.", + "runtime": "1h 56m", + "pg_rating": "PG", + "director": "Ridley Scott", + "genres": ["Fantasy", "History", "War"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/gregg_allman_the_music_of_my_soul.jpg", + "distributor": None, + }, + { + "title": "Saptadingar Guptodhon", + "slug": "saptadingar_guptodhon", + "year": 2024, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Saptadingar Guptodhon.", + "runtime": "2h 40m", + "pg_rating": "PG-13", + "director": "Steven Spielberg", + "genres": ["Western"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/saptadingar_guptodhon.jpg", + "distributor": None, + }, + { + "title": "Athiradi", + "slug": "athiradi", + "year": 2020, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Athiradi.", + "runtime": "2h 7m", + "pg_rating": "PG", + "director": "Pedro Almodovar", + "genres": ["Comedy", "Adventure", "Drama"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/athiradi.jpg", + "distributor": None, + }, + { + "title": "Karuppu", + "slug": "karuppu", + "year": 2022, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Karuppu.", + "runtime": "1h 41m", + "pg_rating": "NR", + "director": "Alfonso Cuaron", + "genres": ["Musical", "Romance"], + "streaming": ["Peacock", "Max"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/karuppu.jpg", + "distributor": None, + }, + { + "title": "Top Gun", + "slug": "top_gun", + "year": 2025, + "tomatometer": 56, + "audience_score": 79, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Top Gun.", + "runtime": "2h 20m", + "pg_rating": "PG", + "director": "Paul Thomas Anderson", + "genres": ["Horror"], + "streaming": ["Paramount+"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/top_gun.jpg", + "distributor": None, + }, + { + "title": "ENHYPEN: IMMERSION IN CINEMAS", + "slug": "enhypen_immersion_in_cinemas", + "year": 2019, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in ENHYPEN: IMMERSION IN CINEMAS.", + "runtime": "1h 38m", + "pg_rating": "R", + "director": "Jordan Peele", + "genres": ["Horror", "Comedy", "Kids & Family"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/enhypen_immersion_in_cinemas.jpg", + "distributor": None, + }, + { + "title": "Remarkably Bright Creatures", + "slug": "remarkably_bright_creatures", + "year": 2022, + "tomatometer": 82, + "audience_score": 78, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Remarkably Bright Creatures.", + "runtime": "2h 0m", + "pg_rating": "PG-13", + "director": "Ridley Scott", + "genres": ["History", "Sci-Fi", "Biography"], + "streaming": ["Disney+"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/remarkably_bright_creatures.jpg", + "distributor": None, + }, + { + "title": "Send Help", + "slug": "send_help", + "year": 2020, + "tomatometer": 93, + "audience_score": 76, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Send Help.", + "runtime": "1h 36m", + "pg_rating": "PG", + "director": "Greta Gerwig", + "genres": ["Western"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/send_help.jpg", + "distributor": None, + }, + { + "title": "Project Hail Mary", + "slug": "project_hail_mary", + "year": 2026, + "tomatometer": 94, + "audience_score": 66, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Project Hail Mary.", + "runtime": "1h 46m", + "pg_rating": "PG", + "director": "Wes Anderson", + "genres": ["Romance", "Kids & Family"], + "streaming": ["Netflix"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/project_hail_mary.jpg", + "distributor": None, + }, + { + "title": "Apex", + "slug": "apex_2026", + "year": 2026, + "tomatometer": 66, + "audience_score": 87, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Apex.", + "runtime": "1h 49m", + "pg_rating": "PG-13", + "director": "Martin Scorsese", + "genres": ["Biography", "Musical"], + "streaming": ["Disney+"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/apex_2026.jpg", + "distributor": None, + }, + { + "title": "The Drama", + "slug": "the_drama", + "year": 2019, + "tomatometer": 76, + "audience_score": 55, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Drama.", + "runtime": "2h 26m", + "pg_rating": "NR", + "director": "Pedro Almodovar", + "genres": ["Crime", "Comedy", "War"], + "streaming": ["Hulu", "Netflix"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/the_drama.jpg", + "distributor": None, + }, + { + "title": "Exit 8", + "slug": "exit_8_2025", + "year": 2021, + "tomatometer": 93, + "audience_score": 65, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Exit 8.", + "runtime": "2h 16m", + "pg_rating": "PG-13", + "director": "Sofia Coppola", + "genres": ["Drama"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/exit_8_2025.jpg", + "distributor": None, + }, + { + "title": "The Perfect Neighbor", + "slug": "the_perfect_neighbor_2025", + "year": 2019, + "tomatometer": 99, + "audience_score": 75, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Perfect Neighbor.", + "runtime": "1h 51m", + "pg_rating": "R", + "director": "Chloe Zhao", + "genres": ["Drama", "Biography", "Crime"], + "streaming": ["Prime Video", "Max"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/the_perfect_neighbor_2025.jpg", + "distributor": None, + }, + { + "title": "The Punisher: One Last Kill", + "slug": "the_punisher_one_last_kill", + "year": 2021, + "tomatometer": 81, + "audience_score": 84, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Punisher: One Last Kill.", + "runtime": "1h 26m", + "pg_rating": "PG", + "director": "Ridley Scott", + "genres": ["Documentary", "History", "Crime"], + "streaming": ["Max"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/the_punisher_one_last_kill.jpg", + "distributor": None, + }, + { + "title": "Swapped", + "slug": "swapped_2026", + "year": 2022, + "tomatometer": 67, + "audience_score": 78, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Swapped.", + "runtime": "1h 56m", + "pg_rating": "PG", + "director": "Greta Gerwig", + "genres": ["Animation", "Sci-Fi", "Fantasy"], + "streaming": ["Apple TV+"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/swapped_2026.jpg", + "distributor": None, + }, + { + "title": "Mortal Kombat", + "slug": "mortal_kombat_2021", + "year": 2023, + "tomatometer": 55, + "audience_score": 97, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Mortal Kombat.", + "runtime": "1h 42m", + "pg_rating": "PG", + "director": "David Fincher", + "genres": ["War", "Action", "Documentary"], + "streaming": ["Max"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/mortal_kombat_2021.jpg", + "distributor": None, + }, + { + "title": "Wuthering Heights", + "slug": "wuthering_heights_2026", + "year": 2021, + "tomatometer": 57, + "audience_score": 66, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Wuthering Heights.", + "runtime": "1h 51m", + "pg_rating": "R", + "director": "Alfonso Cuaron", + "genres": ["Documentary", "Romance"], + "streaming": ["Apple TV+", "Peacock"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/wuthering_heights_2026.jpg", + "distributor": None, + }, + { + "title": "Hoppers", + "slug": "hoppers", + "year": 2019, + "tomatometer": 94, + "audience_score": 99, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Hoppers.", + "runtime": "1h 30m", + "pg_rating": "R", + "director": "Ava DuVernay", + "genres": ["Biography"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/hoppers.jpg", + "distributor": None, + }, + { + "title": "Ready or Not 2: Here I Come", + "slug": "ready_or_not_2_here_i_come", + "year": 2021, + "tomatometer": 74, + "audience_score": 94, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Ready or Not 2: Here I Come.", + "runtime": "2h 19m", + "pg_rating": "NR", + "director": "Ridley Scott", + "genres": ["Animation", "Mystery & Thriller", "History"], + "streaming": ["Netflix", "Peacock"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/ready_or_not_2_here_i_come.jpg", + "distributor": None, + }, + { + "title": "Gary", + "slug": "gary_2026", + "year": 2021, + "tomatometer": 100, + "audience_score": 73, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Gary.", + "runtime": "1h 41m", + "pg_rating": "G", + "director": "Barry Jenkins", + "genres": ["Comedy", "Fantasy", "Sci-Fi"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/gary_2026.jpg", + "distributor": None, + }, + { + "title": "The Devil Wears Prada", + "slug": "the_devil_wears_prada", + "year": 2019, + "tomatometer": 75, + "audience_score": 65, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Devil Wears Prada.", + "runtime": "2h 10m", + "pg_rating": "PG", + "director": "Denis Villeneuve", + "genres": ["Romance", "Adventure"], + "streaming": ["Paramount+", "Apple TV+"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/the_devil_wears_prada.jpg", + "distributor": None, + }, + { + "title": "Marty Supreme", + "slug": "marty_supreme", + "year": 2021, + "tomatometer": 93, + "audience_score": 92, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Marty Supreme.", + "runtime": "1h 47m", + "pg_rating": "PG", + "director": "Paul Thomas Anderson", + "genres": ["Biography"], + "streaming": ["Prime Video", "Paramount+"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/marty_supreme.jpg", + "distributor": None, + }, + { + "title": "Greenland 2: Migration", + "slug": "greenland_2_migration", + "year": 2022, + "tomatometer": 48, + "audience_score": 79, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Greenland 2: Migration.", + "runtime": "1h 29m", + "pg_rating": "G", + "director": "Jordan Peele", + "genres": ["Mystery & Thriller", "Horror"], + "streaming": ["Disney+"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/greenland_2_migration.jpg", + "distributor": None, + }, + { + "title": "A Great Awakening", + "slug": "a_great_awakening", + "year": 2024, + "tomatometer": 73, + "audience_score": 54, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in A Great Awakening.", + "runtime": "1h 49m", + "pg_rating": "PG", + "director": "Chloe Zhao", + "genres": ["Adventure", "Western"], + "streaming": ["Prime Video"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/a_great_awakening.jpg", + "distributor": None, + }, + { + "title": "Beast", + "slug": "beast_2026", + "year": 2023, + "tomatometer": 82, + "audience_score": 66, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Beast.", + "runtime": "2h 7m", + "pg_rating": "NR", + "director": "David Fincher", + "genres": ["War", "Kids & Family"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/beast_2026.jpg", + "distributor": None, + }, + { + "title": "Good Luck, Have Fun, Don't Die", + "slug": "good_luck_have_fun_dont_die", + "year": 2021, + "tomatometer": 81, + "audience_score": 88, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Good Luck, Have Fun, Don't Die.", + "runtime": "2h 20m", + "pg_rating": "NR", + "director": "Paul Thomas Anderson", + "genres": ["Animation", "Comedy", "Horror"], + "streaming": ["Prime Video"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/good_luck_have_fun_dont_die.jpg", + "distributor": None, + }, + { + "title": "The Housemaid", + "slug": "the_housemaid_2025", + "year": 2020, + "tomatometer": 73, + "audience_score": 84, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Housemaid.", + "runtime": "2h 20m", + "pg_rating": "PG", + "director": "Pedro Almodovar", + "genres": ["Romance", "Animation"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/the_housemaid_2025.jpg", + "distributor": None, + }, + { + "title": "Crime 101", + "slug": "crime_101_2026", + "year": 2022, + "tomatometer": 88, + "audience_score": 82, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Crime 101.", + "runtime": "2h 44m", + "pg_rating": "R", + "director": "Barry Jenkins", + "genres": ["Biography", "Drama"], + "streaming": ["Max"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/crime_101_2026.jpg", + "distributor": None, + }, + { + "title": "They Will Kill You", + "slug": "they_will_kill_you", + "year": 2023, + "tomatometer": 65, + "audience_score": 76, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in They Will Kill You.", + "runtime": "2h 35m", + "pg_rating": "R", + "director": "Jordan Peele", + "genres": ["Biography", "Crime", "Kids & Family"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/they_will_kill_you.jpg", + "distributor": None, + }, + { + "title": "We Bury the Dead", + "slug": "we_bury_the_dead", + "year": 2025, + "tomatometer": 88, + "audience_score": 77, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in We Bury the Dead.", + "runtime": "1h 25m", + "pg_rating": "NR", + "director": "Jordan Peele", + "genres": ["Mystery & Thriller", "Documentary", "Kids & Family"], + "streaming": ["Apple TV+"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/we_bury_the_dead.jpg", + "distributor": None, + }, + { + "title": "Good Boy", + "slug": "good_boy_2025", + "year": 2024, + "tomatometer": 90, + "audience_score": 55, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Good Boy.", + "runtime": "2h 30m", + "pg_rating": "PG-13", + "director": "Emerald Fennell", + "genres": ["History", "Western"], + "streaming": ["Hulu"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/good_boy_2025.jpg", + "distributor": None, + }, + { + "title": "Merrily We Roll Along", + "slug": "merrily_we_roll_along", + "year": 2023, + "tomatometer": 95, + "audience_score": 51, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Merrily We Roll Along.", + "runtime": "1h 53m", + "pg_rating": "R", + "director": "Denis Villeneuve", + "genres": ["Crime", "Drama", "Adventure"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/merrily_we_roll_along.jpg", + "distributor": None, + }, + { + "title": "Bugonia", + "slug": "bugonia", + "year": 2019, + "tomatometer": 87, + "audience_score": 86, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Bugonia.", + "runtime": "1h 34m", + "pg_rating": "NR", + "director": "Kathryn Bigelow", + "genres": ["Musical"], + "streaming": ["Paramount+"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/bugonia.jpg", + "distributor": None, + }, + { + "title": "Mother's Day", + "slug": "mothers_day_2016", + "year": 2022, + "tomatometer": 8, + "audience_score": 99, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Mother's Day.", + "runtime": "1h 43m", + "pg_rating": "PG-13", + "director": "David Fincher", + "genres": ["Kids & Family", "Musical", "Western"], + "streaming": ["Netflix", "Paramount+"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/mothers_day_2016.jpg", + "distributor": None, + }, + { + "title": "The Devil Wears Prada 2", + "slug": "the_devil_wears_prada_2", + "year": 2025, + "tomatometer": 78, + "audience_score": 65, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Devil Wears Prada 2.", + "runtime": "2h 24m", + "pg_rating": "NR", + "director": "Yorgos Lanthimos", + "genres": ["Mystery & Thriller"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/the_devil_wears_prada_2.jpg", + "distributor": None, + }, + { + "title": "Hokum", + "slug": "hokum", + "year": 2020, + "tomatometer": 89, + "audience_score": 89, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Hokum.", + "runtime": "2h 36m", + "pg_rating": "NR", + "director": "Bong Joon Ho", + "genres": ["Sci-Fi", "History"], + "streaming": ["Prime Video", "Paramount+"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/hokum.jpg", + "distributor": None, + }, + { + "title": "The Christophers", + "slug": "the_christophers", + "year": 2025, + "tomatometer": 96, + "audience_score": 67, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Christophers.", + "runtime": "1h 58m", + "pg_rating": "G", + "director": "Kathryn Bigelow", + "genres": ["History", "Mystery & Thriller", "Musical"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/the_christophers.jpg", + "distributor": None, + }, + { + "title": "Fuze", + "slug": "fuze", + "year": 2026, + "tomatometer": 73, + "audience_score": 71, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Fuze.", + "runtime": "2h 1m", + "pg_rating": "PG", + "director": "Chloe Zhao", + "genres": ["Adventure", "Animation", "History"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/fuze.jpg", + "distributor": None, + }, + { + "title": "I Swear", + "slug": "i_swear_2025", + "year": 2024, + "tomatometer": 97, + "audience_score": 54, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in I Swear.", + "runtime": "2h 14m", + "pg_rating": "PG-13", + "director": "Jordan Peele", + "genres": ["Drama", "Sci-Fi", "War"], + "streaming": ["Hulu", "Prime Video"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/i_swear_2025.jpg", + "distributor": None, + }, + { + "title": "Erupcja", + "slug": "erupcja", + "year": 2025, + "tomatometer": 85, + "audience_score": 74, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Erupcja.", + "runtime": "1h 32m", + "pg_rating": "G", + "director": "Paul Thomas Anderson", + "genres": ["Crime", "History"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/erupcja.jpg", + "distributor": None, + }, + { + "title": "Normal", + "slug": "normal_2025", + "year": 2019, + "tomatometer": 77, + "audience_score": 97, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Normal.", + "runtime": "2h 3m", + "pg_rating": "R", + "director": "Yorgos Lanthimos", + "genres": ["Kids & Family", "Musical", "Action"], + "streaming": ["Paramount+"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/normal_2025.jpg", + "distributor": None, + }, + { + "title": "Blue Heron", + "slug": "blue_heron", + "year": 2022, + "tomatometer": 97, + "audience_score": 71, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Blue Heron.", + "runtime": "2h 27m", + "pg_rating": "G", + "director": "Wes Anderson", + "genres": ["Adventure", "Animation"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/blue_heron.jpg", + "distributor": None, + }, + { + "title": "The Stranger", + "slug": "the_stranger_2025", + "year": 2025, + "tomatometer": 91, + "audience_score": 87, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Stranger.", + "runtime": "2h 33m", + "pg_rating": "NR", + "director": "Wes Anderson", + "genres": ["Mystery & Thriller", "History", "Sci-Fi"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/the_stranger_2025.jpg", + "distributor": None, + }, + { + "title": "Amrum", + "slug": "amrum", + "year": 2019, + "tomatometer": 98, + "audience_score": 66, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Amrum.", + "runtime": "2h 24m", + "pg_rating": "PG-13", + "director": "Martin Scorsese", + "genres": ["Biography"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/amrum.jpg", + "distributor": None, + }, + { + "title": "Miroirs No. 3", + "slug": "miroirs_no_3", + "year": 2025, + "tomatometer": 95, + "audience_score": 66, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Miroirs No. 3.", + "runtime": "2h 8m", + "pg_rating": "R", + "director": "Paul Thomas Anderson", + "genres": ["Romance", "History"], + "streaming": ["Apple TV+"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/miroirs_no_3.jpg", + "distributor": None, + }, + { + "title": "Mr. Nobody Against Putin", + "slug": "mr_nobody_against_putin", + "year": 2020, + "tomatometer": 100, + "audience_score": 52, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Mr. Nobody Against Putin.", + "runtime": "1h 53m", + "pg_rating": "R", + "director": "Kathryn Bigelow", + "genres": ["Action", "Comedy"], + "streaming": ["Max", "Paramount+"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/mr_nobody_against_putin.jpg", + "distributor": None, + }, + { + "title": "The Blue Trail", + "slug": "the_blue_trail", + "year": 2019, + "tomatometer": 100, + "audience_score": 58, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Blue Trail.", + "runtime": "2h 44m", + "pg_rating": "PG", + "director": "Taika Waititi", + "genres": ["Romance"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/the_blue_trail.jpg", + "distributor": None, + }, + { + "title": "Two Prosecutors", + "slug": "two_prosecutors", + "year": 2026, + "tomatometer": 97, + "audience_score": 88, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Two Prosecutors.", + "runtime": "2h 12m", + "pg_rating": "R", + "director": "Spike Lee", + "genres": ["Horror", "Romance", "History"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/two_prosecutors.jpg", + "distributor": None, + }, + { + "title": "Kontinental '25", + "slug": "kontinental_25", + "year": 2020, + "tomatometer": 92, + "audience_score": 86, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Kontinental '25.", + "runtime": "2h 39m", + "pg_rating": "PG", + "director": "Barry Jenkins", + "genres": ["Documentary"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/kontinental_25.jpg", + "distributor": None, + }, + { + "title": "Tow", + "slug": "tow_2025", + "year": 2025, + "tomatometer": 77, + "audience_score": 94, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Tow.", + "runtime": "2h 45m", + "pg_rating": "NR", + "director": "David Fincher", + "genres": ["Romance", "Drama"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/tow_2025.jpg", + "distributor": None, + }, + { + "title": "A Poet", + "slug": "a_poet", + "year": 2023, + "tomatometer": 100, + "audience_score": 91, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in A Poet.", + "runtime": "2h 19m", + "pg_rating": "NR", + "director": "Pedro Almodovar", + "genres": ["Horror", "Comedy", "Fantasy"], + "streaming": ["Prime Video", "Netflix"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/a_poet.jpg", + "distributor": None, + }, + { + "title": "Late Shift", + "slug": "late_shift_2025", + "year": 2024, + "tomatometer": 96, + "audience_score": 79, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Late Shift.", + "runtime": "1h 38m", + "pg_rating": "G", + "director": "Kathryn Bigelow", + "genres": ["Biography"], + "streaming": ["Prime Video"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/late_shift_2025.jpg", + "distributor": None, + }, + { + "title": "Put Your Soul on Your Hand and Walk", + "slug": "put_your_soul_on_your_hand_and_walk", + "year": 2021, + "tomatometer": 96, + "audience_score": 96, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Put Your Soul on Your Hand and Walk.", + "runtime": "2h 43m", + "pg_rating": "R", + "director": "Paul Thomas Anderson", + "genres": ["Mystery & Thriller", "War"], + "streaming": ["Peacock", "Disney+"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/put_your_soul_on_your_hand_and_walk.jpg", + "distributor": None, + }, + { + "title": "The Sheep Detectives", + "slug": "the_sheep_detectives", + "year": 2023, + "tomatometer": 94, + "audience_score": 86, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Sheep Detectives.", + "runtime": "2h 22m", + "pg_rating": "R", + "director": "Bong Joon Ho", + "genres": ["Adventure", "Drama"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/the_sheep_detectives.jpg", + "distributor": None, + }, + { + "title": "Marty, Life Is Short", + "slug": "marty_life_is_short", + "year": 2025, + "tomatometer": 94, + "audience_score": 66, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Marty, Life Is Short.", + "runtime": "1h 48m", + "pg_rating": "R", + "director": "Guillermo del Toro", + "genres": ["Action", "Musical"], + "streaming": ["Disney+"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/marty_life_is_short.jpg", + "distributor": None, + }, + { + "title": "The Crash", + "slug": "the_crash_2026", + "year": 2024, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Crash.", + "runtime": "1h 49m", + "pg_rating": "NR", + "director": "Taika Waititi", + "genres": ["Animation", "Action"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/the_crash_2026.jpg", + "distributor": None, + }, + { + "title": "My Dearest Assassin", + "slug": "my_dearest_assassin", + "year": 2025, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in My Dearest Assassin.", + "runtime": "2h 27m", + "pg_rating": "G", + "director": "Ridley Scott", + "genres": ["Western", "Adventure"], + "streaming": ["Netflix"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/my_dearest_assassin.jpg", + "distributor": None, + }, + { + "title": "Nuremberg", + "slug": "nuremberg_2025", + "year": 2023, + "tomatometer": 71, + "audience_score": 83, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Nuremberg.", + "runtime": "2h 4m", + "pg_rating": "PG-13", + "director": "Yorgos Lanthimos", + "genres": ["Kids & Family"], + "streaming": ["Prime Video", "Disney+"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/nuremberg_2025.jpg", + "distributor": None, + }, + { + "title": "The Roast of Kevin Hart", + "slug": "the_roast_of_kevin_hart", + "year": 2024, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Roast of Kevin Hart.", + "runtime": "2h 23m", + "pg_rating": "R", + "director": "Chloe Zhao", + "genres": ["Western", "Crime"], + "streaming": ["Apple TV+"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/the_roast_of_kevin_hart.jpg", + "distributor": None, + }, + { + "title": "Train Dreams", + "slug": "train_dreams", + "year": 2022, + "tomatometer": 94, + "audience_score": 97, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Train Dreams.", + "runtime": "1h 40m", + "pg_rating": "R", + "director": "Jordan Peele", + "genres": ["Romance"], + "streaming": ["Hulu", "Max"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/train_dreams.jpg", + "distributor": None, + }, + { + "title": "The Rip", + "slug": "the_rip", + "year": 2026, + "tomatometer": 78, + "audience_score": 61, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Rip.", + "runtime": "1h 49m", + "pg_rating": "PG", + "director": "Guillermo del Toro", + "genres": ["War", "Documentary"], + "streaming": ["Disney+"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/the_rip.jpg", + "distributor": None, + }, + { + "title": "War Machine", + "slug": "war_machine", + "year": 2023, + "tomatometer": 68, + "audience_score": 85, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in War Machine.", + "runtime": "2h 0m", + "pg_rating": "PG-13", + "director": "Martin Scorsese", + "genres": ["Western"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/war_machine.jpg", + "distributor": None, + }, + { + "title": "Peaky Blinders: The Immortal Man", + "slug": "peaky_blinders_the_immortal_man", + "year": 2023, + "tomatometer": 90, + "audience_score": 78, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Peaky Blinders: The Immortal Man.", + "runtime": "2h 38m", + "pg_rating": "PG", + "director": "Alfonso Cuaron", + "genres": ["Sci-Fi", "Musical", "Horror"], + "streaming": ["Peacock"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/peaky_blinders_the_immortal_man.jpg", + "distributor": None, + }, + { + "title": "Striking Distance", + "slug": "striking_distance", + "year": 2024, + "tomatometer": 20, + "audience_score": 75, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Striking Distance.", + "runtime": "2h 26m", + "pg_rating": "R", + "director": "Ridley Scott", + "genres": ["Comedy"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/striking_distance.jpg", + "distributor": None, + }, + { + "title": "Je m'appelle Agneta", + "slug": "je_mappelle_agneta", + "year": 2026, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Je m'appelle Agneta.", + "runtime": "1h 44m", + "pg_rating": "PG-13", + "director": "Taika Waititi", + "genres": ["Comedy"], + "streaming": ["Apple TV+", "Netflix"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/je_mappelle_agneta.jpg", + "distributor": None, + }, + { + "title": "Green Book", + "slug": "green_book", + "year": 2020, + "tomatometer": 77, + "audience_score": 86, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Green Book.", + "runtime": "2h 21m", + "pg_rating": "G", + "director": "Barry Jenkins", + "genres": ["Biography", "Adventure", "Kids & Family"], + "streaming": ["Paramount+"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/green_book.jpg", + "distributor": None, + }, + { + "title": "Domestic Disturbance", + "slug": "domestic_disturbance", + "year": 2019, + "tomatometer": 23, + "audience_score": 61, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Domestic Disturbance.", + "runtime": "1h 35m", + "pg_rating": "R", + "director": "Taika Waititi", + "genres": ["Horror", "Romance", "War"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/domestic_disturbance.jpg", + "distributor": None, + }, + { + "title": "People We Meet on Vacation", + "slug": "people_we_meet_on_vacation", + "year": 2020, + "tomatometer": 76, + "audience_score": 64, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in People We Meet on Vacation.", + "runtime": "2h 22m", + "pg_rating": "G", + "director": "Martin Scorsese", + "genres": ["Action"], + "streaming": ["Peacock", "Hulu"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/people_we_meet_on_vacation.jpg", + "distributor": None, + }, + { + "title": "Relay", + "slug": "relay", + "year": 2023, + "tomatometer": 82, + "audience_score": 84, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Relay.", + "runtime": "1h 58m", + "pg_rating": "PG-13", + "director": "David Fincher", + "genres": ["Documentary", "History", "Drama"], + "streaming": ["Disney+", "Peacock"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/relay.jpg", + "distributor": None, + }, + { + "title": "Thrash", + "slug": "thrash", + "year": 2022, + "tomatometer": 43, + "audience_score": 88, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Thrash.", + "runtime": "1h 32m", + "pg_rating": "PG", + "director": "Barry Jenkins", + "genres": ["Sci-Fi", "Animation", "Western"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/thrash.jpg", + "distributor": None, + }, + { + "title": "Wake Up Dead Man: A Knives Out Mystery", + "slug": "wake_up_dead_man_a_knives_out_mystery", + "year": 2023, + "tomatometer": 92, + "audience_score": 55, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Wake Up Dead Man: A Knives Out Mystery.", + "runtime": "2h 16m", + "pg_rating": "R", + "director": "Bong Joon Ho", + "genres": ["Horror", "History"], + "streaming": ["Peacock"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/wake_up_dead_man_a_knives_out_mystery.jpg", + "distributor": None, + }, + { + "title": "You, Me & Tuscany", + "slug": "you_me_and_tuscany", + "year": 2019, + "tomatometer": 66, + "audience_score": 86, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in You, Me & Tuscany.", + "runtime": "1h 36m", + "pg_rating": "PG", + "director": "Emerald Fennell", + "genres": ["Crime", "Animation"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/you_me_and_tuscany.jpg", + "distributor": None, + }, + { + "title": "Faces of Death", + "slug": "faces_of_death_2026", + "year": 2019, + "tomatometer": 68, + "audience_score": 87, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Faces of Death.", + "runtime": "2h 31m", + "pg_rating": "G", + "director": "Greta Gerwig", + "genres": ["Animation", "Comedy", "Mystery & Thriller"], + "streaming": ["Peacock", "Hulu"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/faces_of_death_2026.jpg", + "distributor": None, + }, + { + "title": "Sleeping Dog", + "slug": "sleeping_dog", + "year": 2025, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Sleeping Dog.", + "runtime": "2h 17m", + "pg_rating": "R", + "director": "Emerald Fennell", + "genres": ["Musical", "Drama", "Western"], + "streaming": ["Prime Video"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/sleeping_dog.jpg", + "distributor": None, + }, + { + "title": "Suburban Fury", + "slug": "suburban_fury", + "year": 2020, + "tomatometer": 100, + "audience_score": 52, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Suburban Fury.", + "runtime": "2h 28m", + "pg_rating": "G", + "director": "Yorgos Lanthimos", + "genres": ["Crime"], + "streaming": ["Paramount+"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/suburban_fury.jpg", + "distributor": None, + }, + { + "title": "$POSITIONS", + "slug": "spositions", + "year": 2026, + "tomatometer": 86, + "audience_score": 82, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in $POSITIONS.", + "runtime": "2h 6m", + "pg_rating": "R", + "director": "Wes Anderson", + "genres": ["Crime"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/spositions.jpg", + "distributor": None, + }, + { + "title": "Marc by Sofia", + "slug": "marc_by_sofia", + "year": 2019, + "tomatometer": 74, + "audience_score": 90, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Marc by Sofia.", + "runtime": "1h 49m", + "pg_rating": "PG", + "director": "Alfonso Cuaron", + "genres": ["Western", "History", "Biography"], + "streaming": ["Prime Video", "Apple TV+"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/marc_by_sofia.jpg", + "distributor": None, + }, + { + "title": "The Butcher's Blade", + "slug": "the_butchers_blade", + "year": 2026, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Butcher's Blade.", + "runtime": "2h 35m", + "pg_rating": "R", + "director": "Barry Jenkins", + "genres": ["Romance"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/the_butchers_blade.jpg", + "distributor": None, + }, + { + "title": "100 Dates in Dallas", + "slug": "100_dates_in_dallas", + "year": 2026, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in 100 Dates in Dallas.", + "runtime": "1h 55m", + "pg_rating": "NR", + "director": "Yorgos Lanthimos", + "genres": ["Musical", "Horror", "Action"], + "streaming": ["Hulu", "Peacock"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/100_dates_in_dallas.jpg", + "distributor": None, + }, + { + "title": "Among Neighbors", + "slug": "among_neighbors", + "year": 2019, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Among Neighbors.", + "runtime": "2h 24m", + "pg_rating": "PG", + "director": "Kathryn Bigelow", + "genres": ["Biography", "Drama", "Adventure"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/among_neighbors.jpg", + "distributor": None, + }, + { + "title": "Cotton Candy Bubble Gum", + "slug": "cotton_candy_bubble_gum", + "year": 2021, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Cotton Candy Bubble Gum.", + "runtime": "2h 18m", + "pg_rating": "R", + "director": "Taika Waititi", + "genres": ["Documentary", "War"], + "streaming": ["Peacock"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/cotton_candy_bubble_gum.jpg", + "distributor": None, + }, + { + "title": "The Propagandist", + "slug": "the_propagandist", + "year": 2026, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Propagandist.", + "runtime": "2h 30m", + "pg_rating": "NR", + "director": "Ridley Scott", + "genres": ["Sci-Fi", "Kids & Family", "Romance"], + "streaming": ["Hulu", "Paramount+"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/the_propagandist.jpg", + "distributor": None, + }, + { + "title": "An Enemy Within", + "slug": "an_enemy_within", + "year": 2023, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in An Enemy Within.", + "runtime": "1h 25m", + "pg_rating": "R", + "director": "Sofia Coppola", + "genres": ["Crime", "War"], + "streaming": ["Apple TV+"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/an_enemy_within.jpg", + "distributor": None, + }, + { + "title": "Greenland", + "slug": "greenland", + "year": 2026, + "tomatometer": 78, + "audience_score": 98, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Greenland.", + "runtime": "2h 26m", + "pg_rating": "NR", + "director": "Yorgos Lanthimos", + "genres": ["History"], + "streaming": ["Prime Video"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/greenland.jpg", + "distributor": None, + }, + { + "title": "The Running Man", + "slug": "the_running_man_2025", + "year": 2025, + "tomatometer": 61, + "audience_score": 52, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Running Man.", + "runtime": "2h 38m", + "pg_rating": "PG-13", + "director": "Paul Thomas Anderson", + "genres": ["Crime", "Romance"], + "streaming": ["Disney+"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/the_running_man_2025.jpg", + "distributor": None, + }, + { + "title": "Balls Up", + "slug": "balls_up_2026", + "year": 2024, + "tomatometer": 23, + "audience_score": 82, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Balls Up.", + "runtime": "2h 28m", + "pg_rating": "PG-13", + "director": "Denis Villeneuve", + "genres": ["Musical", "Kids & Family", "War"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/balls_up_2026.jpg", + "distributor": None, + }, + { + "title": "Mercy", + "slug": "mercy_2026", + "year": 2024, + "tomatometer": 25, + "audience_score": 76, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Mercy.", + "runtime": "2h 32m", + "pg_rating": "PG", + "director": "Denis Villeneuve", + "genres": ["History"], + "streaming": ["Netflix"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/mercy_2026.jpg", + "distributor": None, + }, + { + "title": "Man on Fire", + "slug": "man_on_fire", + "year": 2021, + "tomatometer": 39, + "audience_score": 71, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Man on Fire.", + "runtime": "2h 8m", + "pg_rating": "R", + "director": "Ridley Scott", + "genres": ["Musical"], + "streaming": ["Paramount+", "Prime Video"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/man_on_fire.jpg", + "distributor": None, + }, + { + "title": "Mike & Nick & Nick & Alice", + "slug": "mike_and_nick_and_nick_and_alice", + "year": 2025, + "tomatometer": 76, + "audience_score": 93, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Mike & Nick & Nick & Alice.", + "runtime": "1h 33m", + "pg_rating": "NR", + "director": "Kathryn Bigelow", + "genres": ["Musical", "Comedy"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/mike_and_nick_and_nick_and_alice.jpg", + "distributor": None, + }, + { + "title": "Mortal Kombat", + "slug": "mortal_kombat", + "year": 2023, + "tomatometer": 44, + "audience_score": 94, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Mortal Kombat.", + "runtime": "1h 37m", + "pg_rating": "G", + "director": "Greta Gerwig", + "genres": ["Drama"], + "streaming": ["Max", "Disney+"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/mortal_kombat.jpg", + "distributor": None, + }, + { + "title": "Shelter", + "slug": "shelter_2026", + "year": 2023, + "tomatometer": 65, + "audience_score": 77, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Shelter.", + "runtime": "1h 32m", + "pg_rating": "R", + "director": "Guillermo del Toro", + "genres": ["Comedy"], + "streaming": ["Prime Video"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/shelter_2026.jpg", + "distributor": None, + }, + { + "title": "The Hunt", + "slug": "the_hunt_2019", + "year": 2021, + "tomatometer": 57, + "audience_score": 55, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Hunt.", + "runtime": "2h 37m", + "pg_rating": "G", + "director": "Greta Gerwig", + "genres": ["War"], + "streaming": ["Hulu", "Max"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/the_hunt_2019.jpg", + "distributor": None, + }, + { + "title": "Yes", + "slug": "yes_2025", + "year": 2025, + "tomatometer": 91, + "audience_score": 92, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Yes.", + "runtime": "2h 24m", + "pg_rating": "PG-13", + "director": "Chloe Zhao", + "genres": ["Adventure", "Musical", "Sci-Fi"], + "streaming": ["Apple TV+", "Disney+"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/yes_2025.jpg", + "distributor": None, + }, + { + "title": "Lisa Ann Walter: It Was An Accident", + "slug": "lisa_ann_walter_it_was_an_accident", + "year": 2019, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Lisa Ann Walter: It Was An Accident.", + "runtime": "2h 21m", + "pg_rating": "PG", + "director": "Kathryn Bigelow", + "genres": ["Documentary", "Mystery & Thriller"], + "streaming": ["Apple TV+"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/lisa_ann_walter_it_was_an_accident.jpg", + "distributor": None, + }, + { + "title": "GOAT", + "slug": "goat_2026", + "year": 2025, + "tomatometer": 84, + "audience_score": 74, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in GOAT.", + "runtime": "2h 14m", + "pg_rating": "PG-13", + "director": "Taika Waititi", + "genres": ["Animation", "History", "Documentary"], + "streaming": ["Max"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/goat_2026.jpg", + "distributor": None, + }, + { + "title": "Outcome", + "slug": "outcome", + "year": 2024, + "tomatometer": 28, + "audience_score": 93, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Outcome.", + "runtime": "2h 0m", + "pg_rating": "G", + "director": "Sofia Coppola", + "genres": ["Documentary", "Western", "Action"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/outcome.jpg", + "distributor": None, + }, + { + "title": "One Battle After Another", + "slug": "one_battle_after_another", + "year": 2019, + "tomatometer": 94, + "audience_score": 62, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in One Battle After Another.", + "runtime": "2h 10m", + "pg_rating": "NR", + "director": "Kathryn Bigelow", + "genres": ["Musical", "Documentary", "Adventure"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/one_battle_after_another.jpg", + "distributor": None, + }, + { + "title": "Buffet Infinity", + "slug": "buffet_infinity", + "year": 2023, + "tomatometer": 100, + "audience_score": 73, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Buffet Infinity.", + "runtime": "2h 21m", + "pg_rating": "R", + "director": "Sofia Coppola", + "genres": ["Sci-Fi", "Horror", "Comedy"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/buffet_infinity.jpg", + "distributor": None, + }, + { + "title": "Rental Family", + "slug": "rental_family", + "year": 2021, + "tomatometer": 88, + "audience_score": 58, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Rental Family.", + "runtime": "2h 18m", + "pg_rating": "R", + "director": "Jordan Peele", + "genres": ["Documentary"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/rental_family.jpg", + "distributor": None, + }, + { + "title": "Fantasy Life", + "slug": "fantasy_life", + "year": 2024, + "tomatometer": 81, + "audience_score": 79, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Fantasy Life.", + "runtime": "2h 26m", + "pg_rating": "R", + "director": "David Fincher", + "genres": ["War", "Animation", "Mystery & Thriller"], + "streaming": ["Prime Video"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/fantasy_life.jpg", + "distributor": None, + }, + { + "title": "They Wait in Shadows", + "slug": "they_wait_in_shadows", + "year": 2020, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in They Wait in Shadows.", + "runtime": "2h 36m", + "pg_rating": "G", + "director": "Wes Anderson", + "genres": ["Adventure"], + "streaming": ["Max"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/they_wait_in_shadows.jpg", + "distributor": None, + }, + { + "title": "undertone", + "slug": "undertone", + "year": 2019, + "tomatometer": 74, + "audience_score": 90, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in undertone.", + "runtime": "2h 12m", + "pg_rating": "G", + "director": "Wes Anderson", + "genres": ["Western", "Horror"], + "streaming": ["Apple TV+", "Peacock"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/undertone.jpg", + "distributor": None, + }, + { + "title": "Dust Bunny", + "slug": "dust_bunny", + "year": 2024, + "tomatometer": 85, + "audience_score": 91, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Dust Bunny.", + "runtime": "1h 28m", + "pg_rating": "G", + "director": "Taika Waititi", + "genres": ["Adventure"], + "streaming": ["Prime Video", "Apple TV+"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/dust_bunny.jpg", + "distributor": None, + }, + { + "title": "Hallow Road", + "slug": "hallow_road", + "year": 2020, + "tomatometer": 88, + "audience_score": 69, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Hallow Road.", + "runtime": "1h 42m", + "pg_rating": "PG", + "director": "Martin Scorsese", + "genres": ["History", "Documentary", "Biography"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/hallow_road.jpg", + "distributor": None, + }, + { + "title": "Weapons", + "slug": "weapons", + "year": 2026, + "tomatometer": 93, + "audience_score": 79, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Weapons.", + "runtime": "2h 33m", + "pg_rating": "PG-13", + "director": "Wes Anderson", + "genres": ["Horror"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/weapons.jpg", + "distributor": None, + }, + { + "title": "Forbidden Fruits", + "slug": "forbidden_fruits_2026", + "year": 2024, + "tomatometer": 75, + "audience_score": 52, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Forbidden Fruits.", + "runtime": "1h 37m", + "pg_rating": "G", + "director": "Chloe Zhao", + "genres": ["Western", "Biography", "Sci-Fi"], + "streaming": ["Paramount+"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/forbidden_fruits_2026.jpg", + "distributor": None, + }, + { + "title": "Ready or Not", + "slug": "ready_or_not_2019", + "year": 2024, + "tomatometer": 89, + "audience_score": 73, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Ready or Not.", + "runtime": "1h 55m", + "pg_rating": "G", + "director": "Emerald Fennell", + "genres": ["History"], + "streaming": ["Max"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/ready_or_not_2019.jpg", + "distributor": None, + }, + { + "title": "Dracula", + "slug": "dracula_2025_2", + "year": 2024, + "tomatometer": 54, + "audience_score": 55, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Dracula.", + "runtime": "1h 49m", + "pg_rating": "R", + "director": "Bong Joon Ho", + "genres": ["Kids & Family"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/dracula_2025_2.jpg", + "distributor": None, + }, + { + "title": "The Long Walk", + "slug": "the_long_walk_2025", + "year": 2022, + "tomatometer": 88, + "audience_score": 63, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Long Walk.", + "runtime": "1h 41m", + "pg_rating": "PG-13", + "director": "Yorgos Lanthimos", + "genres": ["Action", "Comedy", "Crime"], + "streaming": ["Disney+", "Netflix"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/the_long_walk_2025.jpg", + "distributor": None, + }, + { + "title": "Cold Storage", + "slug": "cold_storage_2026", + "year": 2022, + "tomatometer": 81, + "audience_score": 59, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Cold Storage.", + "runtime": "2h 41m", + "pg_rating": "PG-13", + "director": "Chloe Zhao", + "genres": ["Crime"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/cold_storage_2026.jpg", + "distributor": None, + }, + { + "title": "Scream 7", + "slug": "scream_7", + "year": 2021, + "tomatometer": 31, + "audience_score": 65, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Scream 7.", + "runtime": "1h 41m", + "pg_rating": "PG", + "director": "Guillermo del Toro", + "genres": ["Animation", "Mystery & Thriller", "Horror"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/scream_7.jpg", + "distributor": None, + }, + { + "title": "Whistle", + "slug": "whistle_2025", + "year": 2024, + "tomatometer": 64, + "audience_score": 83, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Whistle.", + "runtime": "1h 31m", + "pg_rating": "R", + "director": "Paul Thomas Anderson", + "genres": ["Mystery & Thriller"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/whistle_2025.jpg", + "distributor": None, + }, + { + "title": "Companion", + "slug": "companion_2025", + "year": 2020, + "tomatometer": 93, + "audience_score": 64, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Companion.", + "runtime": "2h 30m", + "pg_rating": "R", + "director": "Pedro Almodovar", + "genres": ["Drama", "Musical", "History"], + "streaming": ["Max", "Disney+"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/companion_2025.jpg", + "distributor": None, + }, + { + "title": "THE BRIDE!", + "slug": "the_bride_2026", + "year": 2019, + "tomatometer": 57, + "audience_score": 93, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in THE BRIDE!.", + "runtime": "1h 32m", + "pg_rating": "PG", + "director": "Paul Thomas Anderson", + "genres": ["War", "Documentary", "History"], + "streaming": ["Paramount+"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/the_bride_2026.jpg", + "distributor": None, + }, + { + "title": "Return to Silent Hill", + "slug": "return_to_silent_hill", + "year": 2020, + "tomatometer": 18, + "audience_score": 67, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Return to Silent Hill.", + "runtime": "2h 6m", + "pg_rating": "PG", + "director": "Denis Villeneuve", + "genres": ["History", "Drama"], + "streaming": ["Hulu", "Netflix"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/return_to_silent_hill.jpg", + "distributor": None, + }, + { + "title": "The Life of Chuck", + "slug": "the_life_of_chuck", + "year": 2024, + "tomatometer": 80, + "audience_score": 91, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Life of Chuck.", + "runtime": "2h 29m", + "pg_rating": "G", + "director": "David Fincher", + "genres": ["War", "Documentary"], + "streaming": ["Paramount+", "Netflix"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/the_life_of_chuck.jpg", + "distributor": None, + }, + { + "title": "Predator: Badlands", + "slug": "predator_badlands", + "year": 2022, + "tomatometer": 86, + "audience_score": 96, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Predator: Badlands.", + "runtime": "2h 8m", + "pg_rating": "G", + "director": "Paul Thomas Anderson", + "genres": ["History", "Adventure"], + "streaming": ["Paramount+"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/predator_badlands.jpg", + "distributor": None, + }, + { + "title": "Star Wars: The Last Jedi", + "slug": "star_wars_the_last_jedi", + "year": 2020, + "tomatometer": 91, + "audience_score": 80, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Star Wars: The Last Jedi.", + "runtime": "2h 12m", + "pg_rating": "R", + "director": "Emerald Fennell", + "genres": ["Biography", "Crime"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/star_wars_the_last_jedi.jpg", + "distributor": None, + }, + { + "title": "Frankenstein", + "slug": "frankenstein_2025", + "year": 2020, + "tomatometer": 85, + "audience_score": 58, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Frankenstein.", + "runtime": "2h 20m", + "pg_rating": "PG", + "director": "Guillermo del Toro", + "genres": ["Drama"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/frankenstein_2025.jpg", + "distributor": None, + }, + { + "title": "The Martian", + "slug": "the_martian", + "year": 2019, + "tomatometer": 91, + "audience_score": 68, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Martian.", + "runtime": "2h 10m", + "pg_rating": "G", + "director": "Martin Scorsese", + "genres": ["Western", "Crime", "Horror"], + "streaming": ["Paramount+", "Peacock"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/the_martian.jpg", + "distributor": None, + }, + { + "title": "Together", + "slug": "together_2025", + "year": 2023, + "tomatometer": 90, + "audience_score": 72, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Together.", + "runtime": "1h 44m", + "pg_rating": "PG-13", + "director": "David Fincher", + "genres": ["Horror", "War"], + "streaming": ["Peacock", "Max"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/together_2025.jpg", + "distributor": None, + }, + { + "title": "The Hunger Games: The Ballad of Songbirds & Snakes", + "slug": "the_hunger_games_the_ballad_of_songbirds_and_snakes", + "year": 2024, + "tomatometer": 64, + "audience_score": 92, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Hunger Games: The Ballad of Songbirds & Snakes.", + "runtime": "1h 53m", + "pg_rating": "NR", + "director": "Spike Lee", + "genres": ["Animation"], + "streaming": ["Netflix"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/the_hunger_games_the_ballad_of_songbirds_and_snakes.jpg", + "distributor": None, + }, + { + "title": "Star Wars: The Rise of Skywalker", + "slug": "star_wars_the_rise_of_skywalker", + "year": 2023, + "tomatometer": 51, + "audience_score": 61, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Star Wars: The Rise of Skywalker.", + "runtime": "2h 4m", + "pg_rating": "R", + "director": "Steven Spielberg", + "genres": ["Mystery & Thriller"], + "streaming": ["Prime Video"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/star_wars_the_rise_of_skywalker.jpg", + "distributor": None, + }, + { + "title": "Jurassic World Rebirth", + "slug": "jurassic_world_rebirth", + "year": 2021, + "tomatometer": 50, + "audience_score": 79, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Jurassic World Rebirth.", + "runtime": "1h 36m", + "pg_rating": "PG", + "director": "Paul Thomas Anderson", + "genres": ["Kids & Family", "Drama", "Sci-Fi"], + "streaming": ["Disney+", "Peacock"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/jurassic_world_rebirth.jpg", + "distributor": None, + }, + { + "title": "Independence Day", + "slug": "1071806-independence_day", + "year": 2024, + "tomatometer": 69, + "audience_score": 60, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Independence Day.", + "runtime": "2h 6m", + "pg_rating": "R", + "director": "Denis Villeneuve", + "genres": ["Fantasy"], + "streaming": ["Max", "Netflix"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/1071806-independence_day.jpg", + "distributor": None, + }, + { + "title": "Touch Me", + "slug": "touch_me_2025", + "year": 2019, + "tomatometer": 84, + "audience_score": 63, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Touch Me.", + "runtime": "2h 27m", + "pg_rating": "G", + "director": "Chloe Zhao", + "genres": ["Drama", "Animation", "History"], + "streaming": ["Peacock", "Disney+"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/touch_me_2025.jpg", + "distributor": None, + }, + { + "title": "Godzilla x Kong: The New Empire", + "slug": "godzilla_x_kong_the_new_empire", + "year": 2020, + "tomatometer": 54, + "audience_score": 64, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Godzilla x Kong: The New Empire.", + "runtime": "2h 40m", + "pg_rating": "R", + "director": "Martin Scorsese", + "genres": ["Biography", "Horror"], + "streaming": ["Apple TV+"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/godzilla_x_kong_the_new_empire.jpg", + "distributor": None, + }, + { + "title": "Star Wars: Episode III - Revenge of the Sith", + "slug": "star_wars_episode_iii_revenge_of_the_sith", + "year": 2025, + "tomatometer": 79, + "audience_score": 68, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Star Wars: Episode III - Revenge of the Sith.", + "runtime": "1h 52m", + "pg_rating": "R", + "director": "Chloe Zhao", + "genres": ["Comedy", "Action", "Romance"], + "streaming": [], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/star_wars_episode_iii_revenge_of_the_sith.jpg", + "distributor": None, + }, + { + "title": "Hamlet", + "slug": "hamlet_2025", + "year": 2024, + "tomatometer": 72, + "audience_score": 74, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Hamlet.", + "runtime": "2h 20m", + "pg_rating": "G", + "director": "Denis Villeneuve", + "genres": ["Action"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/hamlet_2025.jpg", + "distributor": None, + }, + { + "title": "Voices Carry", + "slug": "voices_carry_2025", + "year": 2022, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Voices Carry.", + "runtime": "1h 30m", + "pg_rating": "G", + "director": "Bong Joon Ho", + "genres": ["Western", "Fantasy", "Drama"], + "streaming": ["Netflix"], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/voices_carry_2025.jpg", + "distributor": None, + }, + { + "title": "Sofia", + "slug": "sofia_2025", + "year": 2020, + "tomatometer": None, + "audience_score": None, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Sofia.", + "runtime": "2h 2m", + "pg_rating": "G", + "director": "Wes Anderson", + "genres": ["Biography", "Kids & Family"], + "streaming": [], + "box_office": None, + "certified_fresh": False, + "critics_consensus": None, + "poster_url": "/static/images/posters/sofia_2025.jpg", + "distributor": None, + }, + { + "title": "Pillion", + "slug": "pillion", + "year": 2019, + "tomatometer": 99, + "audience_score": 77, + "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Pillion.", + "runtime": "1h 36m", + "pg_rating": "R", + "director": "Taika Waititi", + "genres": ["Mystery & Thriller", "History"], + "streaming": ["Max"], + "box_office": None, + "certified_fresh": True, + "critics_consensus": None, + "poster_url": "/static/images/posters/pillion.jpg", + "distributor": None, + }, +] + +PERSONS = [ + { + "name": "Aaron Eckhart", + "slug": "aaron_eckhart", + "bio": "Aaron Edward Eckhart is an American actor.", + "birthplace": "Cupertino, California, USA", + "photo_url": "", + }, + { + "name": "Aaron Stanford", + "slug": "aaron_stanford", + "bio": "Aaron Stanford is an American actor.", + "birthplace": "Westford, Massachusetts, USA", + "photo_url": "", + }, + { + "name": "Aaron Taylor-Johnson", + "slug": "aaron_taylor_johnson", + "bio": "Aaron Taylor-Johnson is an English actor.", + "birthplace": "High Wycombe, Buckinghamshire, England", + "photo_url": "", + }, + { + "name": "America Ferrera", + "slug": "america_ferrera", + "bio": "America Georgine Ferrera is an American actress.", + "birthplace": "Los Angeles, California, USA", + "photo_url": "", + }, + { + "name": "Amy Poehler", + "slug": "amy_poehler", + "bio": "Amy Meredith Poehler is an American actress, comedian, and producer.", + "birthplace": "Newton, Massachusetts, USA", + "photo_url": "", + }, + { + "name": "Anne Hathaway", + "slug": "anne_hathaway", + "bio": "Anne Jacqueline Hathaway is an American actress.", + "birthplace": "Brooklyn, New York, USA", + "photo_url": "/static/images/people/anne_hathaway.jpg", + }, + { + "name": "Ariana Grande", + "slug": "ariana_grande", + "bio": "Ariana Grande-Butera is an American singer, songwriter, and actress.", + "birthplace": "Boca Raton, Florida, USA", + "photo_url": "", + }, + { + "name": "Ariana Greenblatt", + "slug": "ariana_greenblatt", + "bio": "Ariana Greenblatt is an American actress.", + "birthplace": "New York City, New York, USA", + "photo_url": "/static/images/people/ariana_greenblatt.jpg", + }, + { + "name": "Austin Butler", + "slug": "austin_butler", + "bio": "Austin Robert Butler is an American actor.", + "birthplace": "Anaheim, California, USA", + "photo_url": "", + }, + { + "name": "Ayo Edebiri", + "slug": "ayo_edebiri", + "bio": "Ay\u00f2 Tometi Edebiri is an American actress and comedian.", + "birthplace": "Boston, Massachusetts, USA", + "photo_url": "", + }, + { + "name": "Benedict Cumberbatch", + "slug": "benedict_cumberbatch", + "bio": "Benedict Timothy Carlton Cumberbatch is an English actor.", + "birthplace": "London, England, UK", + "photo_url": "", + }, + { + "name": "Bill Nighy", + "slug": "bill_nighy", + "bio": "William Francis Nighy is an English actor.", + "birthplace": "Caterham, Surrey, England", + "photo_url": "", + }, + { + "name": "Bill Skarsg\u00e5rd", + "slug": "bill_skarsg\u00e5rd", + "bio": "Bill Skarsg\u00e5rd is an actor and performer.", + "birthplace": "", + "photo_url": "", + }, + { + "name": "Bradley Cooper", + "slug": "bradley_cooper", + "bio": "Bradley Charles Cooper is an American actor and filmmaker.", + "birthplace": "Philadelphia, Pennsylvania, USA", + "photo_url": "/static/images/people/bradley_cooper.jpg", + }, + { + "name": "Brie Larson", + "slug": "brie_larson", + "bio": "Brianne Sidonie Desaulniers, known as Brie Larson, is an American actress and filmmaker.", + "birthplace": "Sacramento, California, USA", + "photo_url": "", + }, + { + "name": "Cameron Diaz", + "slug": "cameron_diaz", + "bio": "Cameron Michelle Diaz is an American actress.", + "birthplace": "San Diego, California, USA", + "photo_url": "", + }, + { + "name": "Caroline Menton", + "slug": "caroline_menton", + "bio": "Caroline Menton is an Irish actress.", + "birthplace": "Dublin, Ireland", + "photo_url": "", + }, + { + "name": "Carolyn Bracken", + "slug": "carolyn_bracken", + "bio": "Carolyn Bracken is an Irish actress.", + "birthplace": "Dublin, Ireland", + "photo_url": "", + }, + { + "name": "Cary Elwes", + "slug": "cary_elwes", + "bio": "Ivan Simon Cary Elwes is an English actor and writer.", + "birthplace": "London, England, UK", + "photo_url": "", + }, + { + "name": "Casey Affleck", + "slug": "casey_affleck", + "bio": "Caleb Casey McGuire Affleck-Boldt is an American actor and filmmaker.", + "birthplace": "Falmouth, Massachusetts, USA", + "photo_url": "", + }, + { + "name": "Catherine O'Hara", + "slug": "catherine_ohara", + "bio": "Catherine Anne O'Hara is a Canadian actress and comedian.", + "birthplace": "Toronto, Ontario, Canada", + "photo_url": "", + }, + { + "name": "Chadwick Boseman", + "slug": "chadwick_boseman", + "bio": "Chadwick Aaron Boseman was an American actor known for Black Panther.", + "birthplace": "Anderson, South Carolina, USA", + "photo_url": "", + }, + { + "name": "Choi Woo-sik", + "slug": "choi_woo_sik", + "bio": "Choi Woo-shik is a South Korean-Canadian actor.", + "birthplace": "Seoul, South Korea", + "photo_url": "", + }, + { + "name": "Chris Evans", + "slug": "chris_evans", + "bio": "Christopher Robert Evans is an American actor known for his role as Captain America in the Marvel Cinematic Universe.", + "birthplace": "Boston, Massachusetts, USA", + "photo_url": "", + }, + { + "name": "Chris Hemsworth", + "slug": "chris_hemsworth", + "bio": "Chris Hemsworth is an Australian actor known for playing Thor in the MCU.", + "birthplace": "Melbourne, Victoria, Australia", + "photo_url": "", + }, + { + "name": "Chris Sanders", + "slug": "chris_sanders", + "bio": "Chris Sanders is an American animator, director, and voice actor.", + "birthplace": "Colorado Springs, Colorado, USA", + "photo_url": "", + }, + { + "name": "Christian Bale", + "slug": "christian_bale", + "bio": "Christian Charles Philip Bale is an English actor known for intense method performances.", + "birthplace": "Haverfordwest, Pembrokeshire, Wales", + "photo_url": "", + }, + { + "name": "Christopher Walken", + "slug": "christopher_walken", + "bio": "Christopher Walken is an American actor with a career spanning over 60 years.", + "birthplace": "Queens, New York, USA", + "photo_url": "", + }, + { + "name": "Cillian Murphy", + "slug": "cillian_murphy", + "bio": "Cillian Murphy is an Irish actor known for his work in both independent and blockbuster films.", + "birthplace": "Douglas, Cork, Ireland", + "photo_url": "/static/images/people/cillian_murphy.jpg", + }, + { + "name": "Cliff Curtis", + "slug": "cliff_curtis", + "bio": "Cliff Curtis is a New Zealand actor.", + "birthplace": "Rotorua, New Zealand", + "photo_url": "", + }, + { + "name": "Cynthia Erivo", + "slug": "cynthia_erivo", + "bio": "Cynthia Onyedinachukwu Erivo is a British actress, singer, and songwriter.", + "birthplace": "London, England, UK", + "photo_url": "", + }, + { + "name": "Daveigh Chase", + "slug": "daveigh_chase", + "bio": "Daveigh Chase is an American actress.", + "birthplace": "Las Vegas, Nevada, USA", + "photo_url": "", + }, + { + "name": "David Corenswet", + "slug": "david_corenswet", + "bio": "David Corenswet is an American actor known for his role as Superman in the DCU.", + "birthplace": "Philadelphia, Pennsylvania, USA", + "photo_url": "", + }, + { + "name": "David Ogden Stiers", + "slug": "david_ogden_stiers", + "bio": "David Ogden Stiers was an American actor and musician.", + "birthplace": "Peoria, Illinois, USA", + "photo_url": "", + }, + { + "name": "Delroy Lindo", + "slug": "delroy_lindo", + "bio": "Delroy Lindo is a British-American actor.", + "birthplace": "London, England, UK", + "photo_url": "", + }, + { + "name": "Demi Moore", + "slug": "demi_moore", + "bio": "Demi Moore is an American actress, former songwriter, and model.", + "birthplace": "Roswell, New Mexico, USA", + "photo_url": "", + }, + { + "name": "Dennis Quaid", + "slug": "dennis_quaid", + "bio": "Dennis William Quaid is an American actor.", + "birthplace": "Houston, Texas, USA", + "photo_url": "", + }, + { + "name": "Don Cheadle", + "slug": "don_cheadle", + "bio": "Donald Frank Cheadle Jr. is an American actor and filmmaker.", + "birthplace": "Kansas City, Missouri, USA", + "photo_url": "", + }, + { + "name": "Dua Lipa", + "slug": "dua_lipa", + "bio": "Dua Lipa is an English and Albanian singer, songwriter, and actress.", + "birthplace": "London, England, UK", + "photo_url": "", + }, + { + "name": "Ebon Moss-Bachrach", + "slug": "ebon_moss_bachrach", + "bio": "Ebon Moss-Bachrach is an American actor.", + "birthplace": "Amherst, Massachusetts, USA", + "photo_url": "", + }, + { + "name": "Ed Harris", + "slug": "ed_harris", + "bio": "Edward Allen Harris is an American actor and filmmaker.", + "birthplace": "Tenafly, New Jersey, USA", + "photo_url": "", + }, + { + "name": "Eddie Murphy", + "slug": "eddie_murphy", + "bio": "Edward Regan Murphy is an American actor, comedian, and singer.", + "birthplace": "Brooklyn, New York, USA", + "photo_url": "", + }, + { + "name": "Edi Gathegi", + "slug": "edi_gathegi", + "bio": "Edi Mue Gathegi is a Kenyan-American actor.", + "birthplace": "Nairobi, Kenya", + "photo_url": "", + }, + { + "name": "Emily Blunt", + "slug": "emily_blunt", + "bio": "Emily Olivia Leah Blunt is a British-American actress.", + "birthplace": "London, England, UK", + "photo_url": "", + }, + { + "name": "Emma Corrin", + "slug": "emma_corrin", + "bio": "Emma Corrin is an English actor.", + "birthplace": "Tunbridge Wells, Kent, England", + "photo_url": "/static/images/people/emma_corrin.jpg", + }, + { + "name": "Eric Roberts", + "slug": "eric_roberts", + "bio": "Eric Roberts is an actor and performer.", + "birthplace": "", + "photo_url": "", + }, + { + "name": "Erin Kellyman", + "slug": "erin_kellyman", + "bio": "Erin Kellyman is an actor and performer.", + "birthplace": "", + "photo_url": "", + }, + { + "name": "Ethan Slater", + "slug": "ethan_slater", + "bio": "Ethan Slater is an American actor and singer.", + "birthplace": "Washington, D.C., USA", + "photo_url": "/static/images/people/ethan_slater.jpg", + }, + { + "name": "Florence Pugh", + "slug": "florence_pugh", + "bio": "Florence Pugh is an English actress known for her work in period dramas and action films.", + "birthplace": "Oxford, England, UK", + "photo_url": "", + }, + { + "name": "Gary Oldman", + "slug": "gary_oldman", + "bio": "Gary Leonard Oldman is an English actor and filmmaker.", + "birthplace": "London, England, UK", + "photo_url": "", + }, + { + "name": "Giovanni Ribisi", + "slug": "giovanni_ribisi", + "bio": "Giovanni Ribisi is an American actor.", + "birthplace": "Los Angeles, California, USA", + "photo_url": "", + }, + { + "name": "Glen Powell", + "slug": "glen_powell", + "bio": "Glen Thomas Powell Jr. is an American actor.", + "birthplace": "Austin, Texas, USA", + "photo_url": "/static/images/people/glen_powell.jpg", + }, + { + "name": "Glenn Howerton", + "slug": "glenn_howerton", + "bio": "Glenn Franklin Howerton III is an American actor.", + "birthplace": "New York City, New York, USA", + "photo_url": "", + }, + { + "name": "Gwilym Lee", + "slug": "gwilym_lee", + "bio": "Gwilym Lee is a Welsh actor.", + "birthplace": "Bristol, England, UK", + "photo_url": "", + }, + { + "name": "Gwyneth Paltrow", + "slug": "gwyneth_paltrow", + "bio": "Gwyneth Kate Paltrow is an American actress, businesswoman, and author.", + "birthplace": "Los Angeles, California, USA", + "photo_url": "", + }, + { + "name": "Hailee Steinfeld", + "slug": "hailee_steinfeld", + "bio": "Hailee Steinfeld is an American actress and singer.", + "birthplace": "Los Angeles, California, USA", + "photo_url": "", + }, + { + "name": "Harry Shum Jr.", + "slug": "harry_shum_jr", + "bio": "Harry Shum Jr. is a Costa Rican-American actor and dancer.", + "birthplace": "Puerto Lim\u00f3n, Costa Rica", + "photo_url": "", + }, + { + "name": "Heath Ledger", + "slug": "heath_ledger", + "bio": "Heathcliff Andrew Ledger was an Australian actor and music video director.", + "birthplace": "Perth, Western Australia, Australia", + "photo_url": "", + }, + { + "name": "Helen Mirren", + "slug": "helen_mirren", + "bio": "Dame Helen Mirren is an English actress with a career spanning five decades.", + "birthplace": "London, England, UK", + "photo_url": "", + }, + { + "name": "Hidetaka Yoshioka", + "slug": "hidetaka_yoshioka", + "bio": "Hidetaka Yoshioka is a Japanese actor.", + "birthplace": "Saitama, Japan", + "photo_url": "", + }, + { + "name": "Hugh Jackman", + "slug": "hugh_jackman", + "bio": "Hugh Michael Jackman is an Australian actor, singer, and producer.", + "birthplace": "Sydney, New South Wales, Australia", + "photo_url": "", + }, + { + "name": "Hugo Diego Garcia", + "slug": "hugo_diego_garcia", + "bio": "Hugo Diego Garcia is an actor and performer.", + "birthplace": "", + "photo_url": "", + }, + { + "name": "Ice Cube", + "slug": "ice_cube", + "bio": "O'Shea Jackson Sr., known as Ice Cube, is an American rapper, actor, and filmmaker.", + "birthplace": "Los Angeles, California, USA", + "photo_url": "", + }, + { + "name": "Isabela Merced", + "slug": "isabela_merced", + "bio": "Isabela Merced is an American actress and singer.", + "birthplace": "Cleveland, Ohio, USA", + "photo_url": "", + }, + { + "name": "Issa Rae", + "slug": "issa_rae", + "bio": "Jo-Issa Rae Diop is an American actress, writer, and producer.", + "birthplace": "Los Angeles, California, USA", + "photo_url": "", + }, + { + "name": "Jack Black", + "slug": "jack_black", + "bio": "Thomas Jacob Black is an American actor, comedian, and musician.", + "birthplace": "Santa Monica, California, USA", + "photo_url": "", + }, + { + "name": "Jack O'Connell", + "slug": "jack_oconnell", + "bio": "Jack O'Connell is an English actor.", + "birthplace": "Derby, England, UK", + "photo_url": "", + }, + { + "name": "James Hong", + "slug": "james_hong", + "bio": "James Hong is an American actor with over 600 acting credits.", + "birthplace": "Minneapolis, Minnesota, USA", + "photo_url": "", + }, + { + "name": "Jamie Lee Curtis", + "slug": "jamie_lee_curtis", + "bio": "Jamie Lee Curtis is an American actress, producer, and children's book author.", + "birthplace": "Los Angeles, California, USA", + "photo_url": "", + }, + { + "name": "Jang Hye-jin", + "slug": "jang_hye_jin", + "bio": "Jang Hye-jin is a South Korean actress.", + "birthplace": "South Korea", + "photo_url": "", + }, + { + "name": "Javier Bardem", + "slug": "javier_bardem", + "bio": "Javier \u00c1ngel Encinas Bardem is a Spanish actor.", + "birthplace": "Las Palmas de Gran Canaria, Spain", + "photo_url": "", + }, + { + "name": "Jay Baruchel", + "slug": "jay_baruchel", + "bio": "Jonathan Adam Saunders Baruchel is a Canadian actor.", + "birthplace": "Ottawa, Ontario, Canada", + "photo_url": "", + }, + { + "name": "Jayme Lawson", + "slug": "jayme_lawson", + "bio": "Jayme Lawson is an American actress.", + "birthplace": "Chesterfield, Virginia, USA", + "photo_url": "", + }, + { + "name": "Jeff Goldblum", + "slug": "jeff_goldblum", + "bio": "Jeffrey Lynn Goldblum is an American actor.", + "birthplace": "Pittsburgh, Pennsylvania, USA", + "photo_url": "", + }, + { + "name": "Jemaine Clement", + "slug": "jemaine_clement", + "bio": "Jemaine Clement is a New Zealand actor and comedian.", + "birthplace": "Masterton, New Zealand", + "photo_url": "", + }, + { + "name": "Jennifer Connelly", + "slug": "jennifer_connelly", + "bio": "Jennifer Lynn Connelly is an American actress.", + "birthplace": "Cairo, New York, USA", + "photo_url": "", + }, + { + "name": "Jenny Slate", + "slug": "jenny_slate", + "bio": "Jenny Slate is an American actress and comedian.", + "birthplace": "Milton, Massachusetts, USA", + "photo_url": "", + }, + { + "name": "Jeremy Renner", + "slug": "jeremy_renner", + "bio": "Jeremy Lee Renner is an American actor known for playing Hawkeye in the MCU.", + "birthplace": "Modesto, California, USA", + "photo_url": "", + }, + { + "name": "Jessica Chastain", + "slug": "jessica_chastain", + "bio": "Jessica Michelle Chastain is an American actress and producer.", + "birthplace": "Sacramento, California, USA", + "photo_url": "", + }, + { + "name": "Jo Yeo-jeong", + "slug": "jo_yeo_jeong", + "bio": "Jo Yeo-jeong is a South Korean actress.", + "birthplace": "Seoul, South Korea", + "photo_url": "", + }, + { + "name": "Jodie Comer", + "slug": "jodie_comer", + "bio": "Jodie Marie Comer is an English actress.", + "birthplace": "Liverpool, England, UK", + "photo_url": "", + }, + { + "name": "John Lithgow", + "slug": "john_lithgow", + "bio": "John Arthur Lithgow is an American actor, musician, and author.", + "birthplace": "Rochester, New York, USA", + "photo_url": "", + }, + { + "name": "John Malkovich", + "slug": "john_malkovich", + "bio": "John Malkovich is an actor and performer.", + "birthplace": "", + "photo_url": "", + }, + { + "name": "Jon Hamm", + "slug": "jon_hamm", + "bio": "Jonathan Daniel Hamm is an American actor.", + "birthplace": "St. Louis, Missouri, USA", + "photo_url": "", + }, + { + "name": "Jonathan Bailey", + "slug": "jonathan_bailey", + "bio": "Jonathan Bailey is an English actor.", + "birthplace": "Wallingford, Oxfordshire, England", + "photo_url": "", + }, + { + "name": "Joseph Quinn", + "slug": "joseph_quinn", + "bio": "Joseph Quinn is an English actor.", + "birthplace": "London, England, UK", + "photo_url": "", + }, + { + "name": "Josh Brolin", + "slug": "josh_brolin", + "bio": "Josh James Brolin is an American actor.", + "birthplace": "Santa Monica, California, USA", + "photo_url": "", + }, + { + "name": "Josh Hartnett", + "slug": "josh_hartnett", + "bio": "Joshua Daniel Hartnett is an American actor.", + "birthplace": "Saint Paul, Minnesota, USA", + "photo_url": "", + }, + { + "name": "Julia Garner", + "slug": "julia_garner", + "bio": "Julia Garner is an American actress.", + "birthplace": "New York City, New York, USA", + "photo_url": "", + }, + { + "name": "Karen Gillan", + "slug": "karen_gillan", + "bio": "Karen Sheila Gillan is a Scottish actress and filmmaker.", + "birthplace": "Inverness, Scotland, UK", + "photo_url": "", + }, + { + "name": "Kate McKinnon", + "slug": "kate_mckinnon", + "bio": "Kathryn McKinnon Berthold is an American actress and comedian.", + "birthplace": "Sea Cliff, New York, USA", + "photo_url": "", + }, + { + "name": "Kate Winslet", + "slug": "kate_winslet", + "bio": "Kate Elizabeth Winslet is an English actress.", + "birthplace": "Reading, Berkshire, England", + "photo_url": "", + }, + { + "name": "Ke Huy Quan", + "slug": "ke_huy_quan", + "bio": "Ke Huy Quan is a Vietnamese-American actor.", + "birthplace": "Saigon, Vietnam", + "photo_url": "", + }, + { + "name": "Kenneth Branagh", + "slug": "kenneth_branagh", + "bio": "Sir Kenneth Charles Branagh is a Northern Irish actor and filmmaker.", + "birthplace": "Belfast, Northern Ireland, UK", + "photo_url": "", + }, + { + "name": "Kensington Tallman", + "slug": "kensington_tallman", + "bio": "Kensington Tallman is an American actress.", + "birthplace": "Denver, Colorado, USA", + "photo_url": "", + }, + { + "name": "Kevin McDonald", + "slug": "kevin_mcdonald", + "bio": "Kevin McDonald is a Canadian actor and comedian.", + "birthplace": "Montreal, Quebec, Canada", + "photo_url": "", + }, + { + "name": "Kit Connor", + "slug": "kit_connor", + "bio": "Kit Sebastian Connor is an English actor.", + "birthplace": "London, England, UK", + "photo_url": "", + }, + { + "name": "Kuranosuke Sasaki", + "slug": "kuranosuke_sasaki", + "bio": "Kuranosuke Sasaki is a Japanese actor.", + "birthplace": "Kyoto, Japan", + "photo_url": "", + }, + { + "name": "L\u00e9a Seydoux", + "slug": "lea_seydoux", + "bio": "L\u00e9a Seydoux is a French actress.", + "birthplace": "Paris, France", + "photo_url": "", + }, + { + "name": "Lee Jeong-eun", + "slug": "lee_jeong_eun", + "bio": "Lee Jeong-eun is a South Korean actress.", + "birthplace": "South Korea", + "photo_url": "", + }, + { + "name": "Lee Sun-kyun", + "slug": "lee_sun_kyun", + "bio": "Lee Sun-kyun was a South Korean actor known for his roles in film and television.", + "birthplace": "Seoul, South Korea", + "photo_url": "", + }, + { + "name": "Leslie Uggams", + "slug": "leslie_uggams", + "bio": "Leslie Uggams is an actor and performer.", + "birthplace": "", + "photo_url": "", + }, + { + "name": "Lewis Black", + "slug": "lewis_black", + "bio": "Lewis Niles Black is an American stand-up comedian and actor.", + "birthplace": "Silver Spring, Maryland, USA", + "photo_url": "", + }, + { + "name": "Lewis Pullman", + "slug": "lewis_pullman", + "bio": "Lewis Pullman is an American actor.", + "birthplace": "Los Angeles, California, USA", + "photo_url": "", + }, + { + "name": "Li Jun Li", + "slug": "li_jun_li", + "bio": "Li Jun Li is a Chinese-American actress.", + "birthplace": "Shanghai, China", + "photo_url": "", + }, + { + "name": "Lily-Rose Depp", + "slug": "lily_rose_depp", + "bio": "Lily-Rose Melody Depp is a French-American actress and model.", + "birthplace": "Paris, France", + "photo_url": "", + }, + { + "name": "Liza Lapira", + "slug": "liza_lapira", + "bio": "Liza Lapira is an American actress.", + "birthplace": "Queens, New York, USA", + "photo_url": "", + }, + { + "name": "Lupita Nyong'o", + "slug": "lupita_nyongo", + "bio": "Lupita Amondi Nyong'o is a Kenyan-Mexican actress known for her Oscar-winning role in 12 Years a Slave.", + "birthplace": "Mexico City, Mexico", + "photo_url": "", + }, + { + "name": "Mackenzie Foy", + "slug": "mackenzie_foy", + "bio": "Mackenzie Christine Foy is an American actress and model.", + "birthplace": "Los Angeles, California, USA", + "photo_url": "", + }, + { + "name": "Maggie Gyllenhaal", + "slug": "maggie_gyllenhaal", + "bio": "Maggie Gyllenhaal is an actor and performer.", + "birthplace": "", + "photo_url": "", + }, + { + "name": "Margaret Qualley", + "slug": "margaret_qualley", + "bio": "Margaret Qualley is an American actress and model.", + "birthplace": "Kalispell, Montana, USA", + "photo_url": "", + }, + { + "name": "Margot Robbie", + "slug": "margot_robbie", + "bio": "Margot Elise Robbie is an Australian actress and producer known for her roles in critically acclaimed films.", + "birthplace": "Dalby, Queensland, Australia", + "photo_url": "/static/images/people/margot_robbie.jpg", + }, + { + "name": "Marissa Bode", + "slug": "marissa_bode", + "bio": "Marissa Bode is an American actress.", + "birthplace": "USA", + "photo_url": "/static/images/people/marissa_bode.jpg", + }, + { + "name": "Mark Hamill", + "slug": "mark_hamill", + "bio": "Mark Richard Hamill is an American actor known for Luke Skywalker.", + "birthplace": "Oakland, California, USA", + "photo_url": "", + }, + { + "name": "Mark Ruffalo", + "slug": "mark_ruffalo", + "bio": "Mark Ruffalo is an actor and performer.", + "birthplace": "", + "photo_url": "", + }, + { + "name": "Matt Berry", + "slug": "matt_berry", + "bio": "Matthew Edward Berry is an English actor, writer, and musician.", + "birthplace": "London, England, UK", + "photo_url": "", + }, + { + "name": "Matt Damon", + "slug": "matt_damon", + "bio": "Matthew Paige Damon is an American actor, producer, and screenwriter.", + "birthplace": "Cambridge, Massachusetts, USA", + "photo_url": "", + }, + { + "name": "Matt Johnson", + "slug": "matt_johnson", + "bio": "Matt Johnson is a Canadian filmmaker and actor.", + "birthplace": "Toronto, Ontario, Canada", + "photo_url": "", + }, + { + "name": "Matthew McConaughey", + "slug": "matthew_mcconaughey", + "bio": "Matthew David McConaughey is an American actor and producer.", + "birthplace": "Uvalde, Texas, USA", + "photo_url": "", + }, + { + "name": "Maya Hawke", + "slug": "maya_hawke", + "bio": "Maya Ray Thurman Hawke is an American actress and musician.", + "birthplace": "New York City, New York, USA", + "photo_url": "", + }, + { + "name": "Michael B. Jordan", + "slug": "michael_b_jordan", + "bio": "Michael B. Jordan is an American actor and producer known for his critical and commercial success.", + "birthplace": "Santa Ana, California, USA", + "photo_url": "", + }, + { + "name": "Michael Caine", + "slug": "michael_caine", + "bio": "Sir Michael Caine is an English actor known for his distinctive Cockney accent.", + "birthplace": "London, England, UK", + "photo_url": "", + }, + { + "name": "Michael Cera", + "slug": "michael_cera", + "bio": "Michael Austin Cera is a Canadian actor.", + "birthplace": "Brampton, Ontario, Canada", + "photo_url": "", + }, + { + "name": "Michael Ironside", + "slug": "michael_ironside", + "bio": "Michael Ironside is a Canadian actor.", + "birthplace": "Toronto, Ontario, Canada", + "photo_url": "", + }, + { + "name": "Michelle Yeoh", + "slug": "michelle_yeoh", + "bio": "Michelle Yeoh is a Malaysian actress known for her roles in martial arts films and action movies.", + "birthplace": "Ipoh, Perak, Malaysia", + "photo_url": "", + }, + { + "name": "Mike Myers", + "slug": "mike_myers", + "bio": "Michael John Myers is a Canadian actor, comedian, screenwriter, and film producer.", + "birthplace": "Scarborough, Ontario, Canada", + "photo_url": "", + }, + { + "name": "Miles Caton", + "slug": "miles_caton", + "bio": "Miles Caton is an American actor.", + "birthplace": "USA", + "photo_url": "", + }, + { + "name": "Miles Teller", + "slug": "miles_teller", + "bio": "Miles Alexander Teller is an American actor.", + "birthplace": "Downingtown, Pennsylvania, USA", + "photo_url": "", + }, + { + "name": "Minami Hamabe", + "slug": "minami_hamabe", + "bio": "Minami Hamabe is a Japanese actress.", + "birthplace": "Kawasaki, Kanagawa, Japan", + "photo_url": "", + }, + { + "name": "Monica Barbaro", + "slug": "monica_barbaro", + "bio": "Monica Barbaro is an American actress.", + "birthplace": "San Francisco, California, USA", + "photo_url": "", + }, + { + "name": "Morena Baccarin", + "slug": "morena_baccarin", + "bio": "Morena Baccarin is a Brazilian-American actress.", + "birthplace": "Rio de Janeiro, Brazil", + "photo_url": "", + }, + { + "name": "Morgan Freeman", + "slug": "morgan_freeman", + "bio": "Morgan Freeman is an American actor, director, and narrator.", + "birthplace": "Memphis, Tennessee, USA", + "photo_url": "", + }, + { + "name": "Munetaka Aoki", + "slug": "munetaka_aoki", + "bio": "Munetaka Aoki is a Japanese actor.", + "birthplace": "Osaka, Japan", + "photo_url": "", + }, + { + "name": "Natasha Lyonne", + "slug": "natasha_lyonne", + "bio": "Natasha Bianca Lyonne Braunstein is an American actress.", + "birthplace": "New York City, New York, USA", + "photo_url": "", + }, + { + "name": "Nathan Fillion", + "slug": "nathan_fillion", + "bio": "Nathan Fillion is a Canadian-American actor.", + "birthplace": "Edmonton, Alberta, Canada", + "photo_url": "", + }, + { + "name": "Nicholas Hoult", + "slug": "nicholas_hoult", + "bio": "Nicholas Caradoc Hoult is an English actor.", + "birthplace": "Wokingham, Berkshire, England", + "photo_url": "", + }, + { + "name": "Oona Chaplin", + "slug": "oona_chaplin", + "bio": "Oona Chaplin is a Spanish-British actress.", + "birthplace": "Madrid, Spain", + "photo_url": "", + }, + { + "name": "Park So-dam", + "slug": "park_so_dam", + "bio": "Park So-dam is a South Korean actress.", + "birthplace": "Seoul, South Korea", + "photo_url": "", + }, + { + "name": "Paul Rudd", + "slug": "paul_rudd", + "bio": "Paul Stephen Rudd is an American actor known for comedic roles and as Ant-Man in the MCU.", + "birthplace": "Passaic, New Jersey, USA", + "photo_url": "", + }, + { + "name": "Paul Walter Hauser", + "slug": "paul_walter_hauser", + "bio": "Paul Walter Hauser is an American actor.", + "birthplace": "Grand Rapids, Michigan, USA", + "photo_url": "", + }, + { + "name": "Pedro Pascal", + "slug": "pedro_pascal", + "bio": "Jos\u00e9 Pedro Balmaceda Pascal is a Chilean-American actor.", + "birthplace": "Santiago, Chile", + "photo_url": "", + }, + { + "name": "Peter Dinklage", + "slug": "peter_dinklage", + "bio": "Peter Hayden Dinklage is an American actor.", + "birthplace": "Morristown, New Jersey, USA", + "photo_url": "", + }, + { + "name": "Phyllis Smith", + "slug": "phyllis_smith", + "bio": "Phyllis Smith is an American actress known for The Office.", + "birthplace": "St. Louis, Missouri, USA", + "photo_url": "", + }, + { + "name": "Rachel Brosnahan", + "slug": "rachel_brosnahan", + "bio": "Rachel Brosnahan is an American actress.", + "birthplace": "Milwaukee, Wisconsin, USA", + "photo_url": "", + }, + { + "name": "Ralph Fiennes", + "slug": "ralph_fiennes", + "bio": "Ralph Nathaniel Twisleton-Wykeham-Fiennes is an English actor, director, and producer.", + "birthplace": "Ipswich, Suffolk, England", + "photo_url": "", + }, + { + "name": "Ralph Ineson", + "slug": "ralph_ineson", + "bio": "Ralph Michael Ineson is an English actor.", + "birthplace": "Leeds, West Yorkshire, England", + "photo_url": "", + }, + { + "name": "Rami Malek", + "slug": "rami_malek", + "bio": "Rami Said Malek is an American actor.", + "birthplace": "Los Angeles, California, USA", + "photo_url": "", + }, + { + "name": "Rebecca Ferguson", + "slug": "rebecca_ferguson", + "bio": "Rebecca Louisa Ferguson Sundstr\u00f6m is a Swedish actress.", + "birthplace": "Stockholm, Sweden", + "photo_url": "", + }, + { + "name": "Rich Sommer", + "slug": "rich_sommer", + "bio": "Rich Sommer is an American actor.", + "birthplace": "Minneapolis, Minnesota, USA", + "photo_url": "", + }, + { + "name": "Rob Delaney", + "slug": "rob_delaney", + "bio": "Rob Delaney is an actor and performer.", + "birthplace": "", + "photo_url": "", + }, + { + "name": "Robert Downey Jr.", + "slug": "robert_downey_jr", + "bio": "Robert Downey Jr. is an American actor and producer known for his roles as Tony Stark/Iron Man in the Marvel Cinematic Universe.", + "birthplace": "New York City, New York, USA", + "photo_url": "/static/images/people/robert_downey_jr.jpg", + }, + { + "name": "Ryan Gosling", + "slug": "ryan_gosling", + "bio": "Ryan Thomas Gosling is a Canadian actor and musician known for both indie and mainstream films.", + "birthplace": "London, Ontario, Canada", + "photo_url": "/static/images/people/ryan_gosling.jpg", + }, + { + "name": "Ryan Reynolds", + "slug": "ryan_reynolds", + "bio": "Ryan Rodney Reynolds is a Canadian-American actor, producer, and businessman.", + "birthplace": "Vancouver, British Columbia, Canada", + "photo_url": "", + }, + { + "name": "Ry\u00fbnosuke Kamiki", + "slug": "ryunosuke_kamiki", + "bio": "Ry\u00fbnosuke Kamiki is a Japanese actor.", + "birthplace": "Sagamihara, Kanagawa, Japan", + "photo_url": "", + }, + { + "name": "Sakura And\u00f4", + "slug": "sakura_ando", + "bio": "Sakura And\u00f4 is a Japanese actress.", + "birthplace": "Tokyo, Japan", + "photo_url": "", + }, + { + "name": "Sam Worthington", + "slug": "sam_worthington", + "bio": "Sam Worthington is an Australian actor known for Avatar and Clash of the Titans.", + "birthplace": "Godalming, Surrey, England", + "photo_url": "", + }, + { + "name": "Saul Rubinek", + "slug": "saul_rubinek", + "bio": "Saul Rubinek is a Canadian actor.", + "birthplace": "F\u00f6hrenwald, Germany", + "photo_url": "", + }, + { + "name": "Scarlett Johansson", + "slug": "scarlett_johansson", + "bio": "Scarlett Johansson is an American actress and singer, one of the world's highest-paid actresses.", + "birthplace": "New York City, New York, USA", + "photo_url": "/static/images/people/scarlett_johansson.jpg", + }, + { + "name": "Sigourney Weaver", + "slug": "sigourney_weaver", + "bio": "Sigourney Weaver is an American actress.", + "birthplace": "New York City, New York, USA", + "photo_url": "", + }, + { + "name": "Simon McBurney", + "slug": "simon_mcburney", + "bio": "Simon McBurney is an English actor and director.", + "birthplace": "Cambridge, England, UK", + "photo_url": "", + }, + { + "name": "Simu Liu", + "slug": "simu_liu", + "bio": "Simu Liu is a Chinese-Canadian actor.", + "birthplace": "Harbin, China", + "photo_url": "", + }, + { + "name": "Skyler Gisondo", + "slug": "skyler_gisondo", + "bio": "Skyler Gisondo is an American actor.", + "birthplace": "Palm Beach County, Florida, USA", + "photo_url": "", + }, + { + "name": "Song Kang-ho", + "slug": "song_kang_ho", + "bio": "Song Kang-ho is a South Korean actor, one of the country's most acclaimed.", + "birthplace": "Gimhae, South Korea", + "photo_url": "", + }, + { + "name": "Stellan Skarsg\u00e5rd", + "slug": "stellan_skarsg\u00e5rd", + "bio": "Stellan Skarsg\u00e5rd is an actor and performer.", + "birthplace": "", + "photo_url": "", + }, + { + "name": "Stephanie Hsu", + "slug": "stephanie_hsu", + "bio": "Stephanie Hsu is an American actress.", + "birthplace": "Torrance, California, USA", + "photo_url": "", + }, + { + "name": "Stephen Lang", + "slug": "stephen_lang", + "bio": "Stephen Lang is an American actor and playwright.", + "birthplace": "Queens, New York, USA", + "photo_url": "", + }, + { + "name": "Steve Wall", + "slug": "steve_wall", + "bio": "Steve Wall is an Irish actor and musician.", + "birthplace": "Dublin, Ireland", + "photo_url": "", + }, + { + "name": "Steve Zahn", + "slug": "steve_zahn", + "bio": "Steve Zahn is an American actor.", + "birthplace": "Marshall, Minnesota, USA", + "photo_url": "", + }, + { + "name": "Tadhg Murphy", + "slug": "tadhg_murphy", + "bio": "Tadhg Murphy is an Irish actor.", + "birthplace": "Cork, Ireland", + "photo_url": "", + }, + { + "name": "Thandiwe Newton", + "slug": "thandiwe_newton", + "bio": "Thandiwe Newton is an English actress.", + "birthplace": "London, England, UK", + "photo_url": "", + }, + { + "name": "Tia Carrere", + "slug": "tia_carrere", + "bio": "Tia Carrere is an American actress and singer.", + "birthplace": "Honolulu, Hawaii, USA", + "photo_url": "", + }, + { + "name": "Timoth\u00e9e Chalamet", + "slug": "timothee_chalamet", + "bio": "Timoth\u00e9e Hal Chalamet is an American actor known for his work in independent films and blockbusters.", + "birthplace": "New York City, New York, USA", + "photo_url": "", + }, + { + "name": "Tom Cruise", + "slug": "tom_cruise", + "bio": "Tom Cruise is an American actor and producer known for his action roles and dedication to performing his own stunts.", + "birthplace": "Syracuse, New York, USA", + "photo_url": "/static/images/people/tom_cruise.jpg", + }, + { + "name": "Tom Holland", + "slug": "tom_holland", + "bio": "Thomas Stanley Holland is an English actor known as Spider-Man in the MCU.", + "birthplace": "Kingston upon Thames, England, UK", + "photo_url": "", + }, + { + "name": "Tony Hale", + "slug": "tony_hale", + "bio": "Anthony Russell Hale is an American actor.", + "birthplace": "West Point, New York, USA", + "photo_url": "", + }, + { + "name": "Val Kilmer", + "slug": "val_kilmer", + "bio": "Val Edward Kilmer is an American actor.", + "birthplace": "Los Angeles, California, USA", + "photo_url": "", + }, + { + "name": "Vanessa Kirby", + "slug": "vanessa_kirby", + "bio": "Vanessa Kirby is an English actress known for stage and screen roles.", + "birthplace": "London, England, UK", + "photo_url": "", + }, + { + "name": "Ving Rhames", + "slug": "ving_rhames", + "bio": "Irving Rameses Rhames is an American actor.", + "birthplace": "Harlem, New York, USA", + "photo_url": "", + }, + { + "name": "Wendell Pierce", + "slug": "wendell_pierce", + "bio": "Wendell Edward Pierce is an American actor.", + "birthplace": "New Orleans, Louisiana, USA", + "photo_url": "", + }, + { + "name": "Will Ferrell", + "slug": "will_ferrell", + "bio": "John William Ferrell is an American actor, comedian, and producer.", + "birthplace": "Irvine, California, USA", + "photo_url": "/static/images/people/will_ferrell.jpg", + }, + { + "name": "Wunmi Mosaku", + "slug": "wunmi_mosaku", + "bio": "Wunmi Mosaku is a Nigerian-British actress.", + "birthplace": "Ibadan, Nigeria", + "photo_url": "", + }, + { + "name": "Zendaya", + "slug": "zendaya", + "bio": "Zendaya Maree Stoermer Coleman is an American actress, singer, and model.", + "birthplace": "Oakland, California, USA", + "photo_url": "", + }, + { + "name": "Zoe Salda\u00f1a", + "slug": "zoe_saldana", + "bio": "Zoe Salda\u00f1a is an American actress known for her roles in Avatar and Guardians of the Galaxy.", + "birthplace": "Passaic, New Jersey, USA", + "photo_url": "", + }, + {"name": "Abderrahmane Dehkani", "slug": "abderrahmane_dehkani", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Abe Farrelly", "slug": "abe_farrelly", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Abir Chatterjee", "slug": "abir_chatterjee", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Adam Brody", "slug": "adam_brody", "bio": "American actor", "birthplace": "San Diego, California, USA", "photo_url": ""}, + {"name": "Adam Driver", "slug": "adam_driver", "bio": "American actor", "birthplace": "San Diego, California, USA", "photo_url": ""}, + {"name": "Adeline Rudolph", "slug": "adeline_rudolph", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Adonis Tanța", "slug": "adonis_tanța", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Adrian Grenier", "slug": "adrian_grenier", "bio": "American actor and director", "birthplace": "Santa Fe, New Mexico, USA", "photo_url": ""}, + {"name": "Adrian Sitaru", "slug": "adrian_sitaru", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Agata Trzebuchowska", "slug": "agata_trzebuchowska", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Aintzane Gamiz", "slug": "aintzane_gamiz", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Akira Emoto", "slug": "akira_emoto", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Alain Doutey", "slug": "alain_doutey", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Alana Gerlach", "slug": "alana_gerlach", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Alana Haim", "slug": "alana_haim", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Albana Agaj", "slug": "albana_agaj", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Aleksandr Filippenko", "slug": "aleksandr_filippenko", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Aleksandr Kuznetsov", "slug": "aleksandr_kuznetsov", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Alessandro Nivola", "slug": "alessandro_nivola", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Alex Cannon", "slug": "alex_cannon", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Alexander Lincoln", "slug": "alexander_lincoln", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Alexander Skarsgård", "slug": "alexander_skarsgård", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Alexandra Shipp", "slug": "alexandra_shipp", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Alexey Serebryakov", "slug": "alexey_serebryakov", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Alfre Woodard", "slug": "alfre_woodard", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Alfred Molina", "slug": "alfred_molina", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Alicia Vikander", "slug": "alicia_vikander", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Alireza Bayram", "slug": "alireza_bayram", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Alison Brie", "slug": "alison_brie", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Alisson Correa", "slug": "alisson_correa", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Allison Bench", "slug": "allison_bench", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Allison Joy Gale", "slug": "allison_joy_gale", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Alyla Browne", "slug": "alyla_browne", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Alyssa Milano", "slug": "alyssa_milano", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Amanda Peet", "slug": "amanda_peet", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Amanda Seyfried", "slug": "amanda_seyfried", "bio": "American actress", "birthplace": "Allentown, Pennsylvania, USA", "photo_url": ""}, + {"name": "Amber Midthunder", "slug": "amber_midthunder", "bio": "American actress", "birthplace": "Santa Fe, New Mexico, USA", "photo_url": ""}, + {"name": "Amit Sadh", "slug": "amit_sadh", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Amy Zimmer", "slug": "amy_zimmer", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Anatoliy Belyy", "slug": "anatoliy_belyy", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Andie Ju", "slug": "andie_ju", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Andie MacDowell", "slug": "andie_macdowell", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Andrea Martin", "slug": "andrea_martin", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Andrew Garfield", "slug": "andrew_garfield", "bio": "British-American actor", "birthplace": "Los Angeles, California, USA", "photo_url": ""}, + {"name": "Andrew Lees", "slug": "andrew_lees", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Andrew Scott", "slug": "andrew_scott", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Andris Keiss", "slug": "andris_keiss", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Andy Richter", "slug": "andy_richter", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Anna Baryshnikov", "slug": "anna_baryshnikov", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Anna Crilly", "slug": "anna_crilly", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Anna Ferzetti", "slug": "anna_ferzetti", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Annabelle Wallis", "slug": "annabelle_wallis", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Anne-Marie Ponsot", "slug": "anne_marie_ponsot", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Anthony Edwards", "slug": "anthony_edwards", "bio": "American actor and director", "birthplace": "Santa Barbara, California, USA", "photo_url": ""}, + {"name": "Anton Lytvynov", "slug": "anton_lytvynov", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Anya Krawcheck", "slug": "anya_krawcheck", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ariana DeBose", "slug": "ariana_debose", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ariel Bronz", "slug": "ariel_bronz", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Arielle Friedman", "slug": "arielle_friedman", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Arjun Chakrabarty", "slug": "arjun_chakrabarty", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Arturo Castro", "slug": "arturo_castro", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Asier Hormaza", "slug": "asier_hormaza", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Asim Chaudhry", "slug": "asim_chaudhry", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Aurora Giovinazzo", "slug": "aurora_giovinazzo", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ayesha Raza Mishra", "slug": "ayesha_raza_mishra", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ayushmann Khurrana", "slug": "ayushmann_khurrana", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Aziza Scott", "slug": "aziza_scott", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Bally Gill", "slug": "bally_gill", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Barbara Auer", "slug": "barbara_auer", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Barbie Ferreira", "slug": "barbie_ferreira", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Barry Keoghan", "slug": "barry_keoghan", "bio": "Irish actor", "birthplace": "Dublin, Ireland", "photo_url": ""}, + {"name": "Basil Joseph", "slug": "basil_joseph", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Beanie Feldstein", "slug": "beanie_feldstein", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Bella Ramsey", "slug": "bella_ramsey", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ben Affleck", "slug": "ben_affleck", "bio": "American actor and filmmaker", "birthplace": "Berkeley, California, USA", "photo_url": ""}, + {"name": "Ben Barnes", "slug": "ben_barnes", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ben Bauce", "slug": "ben_bauce", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ben Gojer", "slug": "ben_gojer", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ben Platt", "slug": "ben_platt", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ben Scattone", "slug": "ben_scattone", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ben Schwartz", "slug": "ben_schwartz", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ben Wang", "slug": "ben_wang", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Benicio del Toro", "slug": "benicio_del_toro", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Benjamin Bratt", "slug": "benjamin_bratt", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Benjamin Voisin", "slug": "benjamin_voisin", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Bessie Holland", "slug": "bessie_holland", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Beth Grant", "slug": "beth_grant", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Betty Gilpin", "slug": "betty_gilpin", "bio": "American actress", "birthplace": "New York City, USA", "photo_url": ""}, + {"name": "Bill Pullman", "slug": "bill_pullman", "bio": "American actor", "birthplace": "Hornell, New York, USA", "photo_url": ""}, + {"name": "Billy Dee Williams", "slug": "billy_dee_williams", "bio": "American actor", "birthplace": "New York City, USA", "photo_url": ""}, + {"name": "Billy MacLellan", "slug": "billy_maclellan", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Biluska Annamária", "slug": "biluska_annamária", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Björn Kjellman", "slug": "björn_kjellman", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Bob Balaban", "slug": "bob_balaban", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Bob Odenkirk", "slug": "bob_odenkirk", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Bodhi Rae Breathnach", "slug": "bodhi_rae_breathnach", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Boyd Holbrook", "slug": "boyd_holbrook", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Brad Garrett", "slug": "brad_garrett", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Brahim Bihi", "slug": "brahim_bihi", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Brandon Sklenar", "slug": "brandon_sklenar", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Brandon Soo Hoo", "slug": "brandon_soo_hoo", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Brandon Vanderwall", "slug": "brandon_vanderwall", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Brendan Fraser", "slug": "brendan_fraser", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Brenton Thwaites", "slug": "brenton_thwaites", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Brett Goldstein", "slug": "brett_goldstein", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Bri Giger", "slug": "bri_giger", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Brian Tyree Henry", "slug": "brian_tyree_henry", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Bronson Webb", "slug": "bronson_webb", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Bruce Willis", "slug": "bruce_willis", "bio": "American actor", "birthplace": "Idar-Oberstein, Germany", "photo_url": ""}, + {"name": "Bryan Cranston", "slug": "bryan_cranston", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Bryan Vigier", "slug": "bryan_vigier", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Cailee Spaeny", "slug": "cailee_spaeny", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Caitlin Stasey", "slug": "caitlin_stasey", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Cameron Evans", "slug": "cameron_evans", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Candice Fawcett", "slug": "candice_fawcett", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Carl MJ Anderson", "slug": "carl_mj_anderson", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Carla Signoris", "slug": "carla_signoris", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Carmine Recano", "slug": "carmine_recano", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Carrie Fisher", "slug": "carrie_fisher", "bio": "American actress and writer", "birthplace": "Beverly Hills, California, USA", "photo_url": ""}, + {"name": "Catalina Sandino Moreno", "slug": "catalina_sandino_moreno", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Catherine Zeta-Jones", "slug": "catherine_zeta_jones", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Chanudom Suksathit", "slug": "chanudom_suksathit", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Chanudom Suksatit", "slug": "chanudom_suksatit", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Chaoyue Yang", "slug": "chaoyue_yang", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Charli XCX", "slug": "charli_xcx", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Charlie Alderman", "slug": "charlie_alderman", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Charlie Bentley", "slug": "charlie_bentley", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Charlie Henry Larsen", "slug": "charlie_henry_larsen", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Charlie Plummer", "slug": "charlie_plummer", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Charlize Theron", "slug": "charlize_theron", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Chartayodom Hiranyasthiti", "slug": "chartayodom_hiranyasthiti", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Chase Infiniti", "slug": "chase_infiniti", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Chelcie Lynn", "slug": "chelcie_lynn", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Chelsey Crisp", "slug": "chelsey_crisp", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Chiwetel Ejiofor", "slug": "chiwetel_ejiofor", "bio": "English actor", "birthplace": "London, England, UK", "photo_url": ""}, + {"name": "Chloe Bailey", "slug": "chloe_bailey", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Chloe Hurst", "slug": "chloe_hurst", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Chris O'Dowd", "slug": "chris_odowd", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Chris Pang", "slug": "chris_pang", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Chris Pratt", "slug": "chris_pratt", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Chris Sullivan", "slug": "chris_sullivan", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Christoph Waltz", "slug": "christoph_waltz", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Christophe Malavoy", "slug": "christophe_malavoy", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Christophe Van de Velde", "slug": "christophe_van_de_velde", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Christopher Robin Miller", "slug": "christopher_robin_miller", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Chrys Willet", "slug": "chrys_willet", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Claes Månsson", "slug": "claes_månsson", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Clayton Farris", "slug": "clayton_farris", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Colm Meaney", "slug": "colm_meaney", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Colton Tapp", "slug": "colton_tapp", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Conleth Hill", "slug": "conleth_hill", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Connor Barton", "slug": "connor_barton", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Cooper Hoffman", "slug": "cooper_hoffman", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Cooper Tomlinson", "slug": "cooper_tomlinson", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Corbin Bernsen", "slug": "corbin_bernsen", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Corey Hawkins", "slug": "corey_hawkins", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Courteney Cox", "slug": "courteney_cox", "bio": "American actress", "birthplace": "Birmingham, Alabama, USA", "photo_url": ""}, + {"name": "Daisy Ridley", "slug": "daisy_ridley", "bio": "English actress", "birthplace": "London, England, UK", "photo_url": ""}, + {"name": "Dan Stevens", "slug": "dan_stevens", "bio": "British actor", "birthplace": "Croydon, London, UK", "photo_url": ""}, + {"name": "Daniel Craig", "slug": "daniel_craig", "bio": "English actor", "birthplace": "Chester, England, UK", "photo_url": ""}, + {"name": "Dave Bautista", "slug": "dave_bautista", "bio": "American actor", "birthplace": "Washington, D.C., USA", "photo_url": ""}, + {"name": "Dave Franco", "slug": "dave_franco", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "David Denman", "slug": "david_denman", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Demi Lovato", "slug": "demi_lovato", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Denis Déon", "slug": "denis_déon", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Denis Lavant", "slug": "denis_lavant", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Denise Weinberg", "slug": "denise_weinberg", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Dennis Farina", "slug": "dennis_farina", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Dennis Haysbert", "slug": "dennis_haysbert", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Derek Barnes", "slug": "derek_barnes", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Diane Kruger", "slug": "diane_kruger", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "D.J. Shangela Pierce", "slug": "dj_shangela_pierce", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Djimon Hounsou", "slug": "djimon_hounsou", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Dmitri Denisiuk", "slug": "dmitri_denisiuk", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Dominic Sessa", "slug": "dominic_sessa", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Dorina", "slug": "dorina", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Douglas Hodge", "slug": "douglas_hodge", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Douglas Rankine", "slug": "douglas_rankine", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "D.W. Moffett", "slug": "dw_moffett", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Dwayne Hill", "slug": "dwayne_hill", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Dylan O'Brien", "slug": "dylan_obrien", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Edik Beddoes", "slug": "edik_beddoes", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Edmund Donovan", "slug": "edmund_donovan", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Edoardo Purgatori", "slug": "edoardo_purgatori", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Edoardo Stefanelli", "slug": "edoardo_stefanelli", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Eduardo Franco", "slug": "eduardo_franco", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Edyll Ismail", "slug": "edyll_ismail", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Efrat Dor", "slug": "efrat_dor", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ego Nwodim", "slug": "ego_nwodim", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Eiza Gonzalez", "slug": "eiza_gonzalez", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Eiza González", "slug": "eiza_gonzález", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Elena Sofia Ricci", "slug": "elena_sofia_ricci", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Elham Ehsas", "slug": "elham_ehsas", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Elijah Williams", "slug": "elijah_williams", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Elle Fanning", "slug": "elle_fanning", "bio": "American actress", "birthplace": "Conyers, Georgia, USA", "photo_url": ""}, + {"name": "Emily Bader", "slug": "emily_bader", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Emily Hampshire", "slug": "emily_hampshire", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Emma Frances Chamberlain", "slug": "emma_frances_chamberlain", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Emma Thompson", "slug": "emma_thompson", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "ENHYPEN", "slug": "enhypen", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Enno Trebs", "slug": "enno_trebs", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Eric André", "slug": "eric_andré", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Eric Bana", "slug": "eric_bana", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Erika Alexander", "slug": "erika_alexander", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Eszter Tompa", "slug": "eszter_tompa", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Eugene Ace Banks", "slug": "eugene_ace_banks", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Eva De Dominici", "slug": "eva_de_dominici", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Eva Melander", "slug": "eva_melander", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ewan McGregor", "slug": "ewan_mcgregor", "bio": "Scottish actor", "birthplace": "Perth, Scotland, UK", "photo_url": ""}, + {"name": "Eylul Guven", "slug": "eylul_guven", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Fatma Hassona", "slug": "fatma_hassona", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Felicity Jones", "slug": "felicity_jones", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Fengchao Liu", "slug": "fengchao_liu", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Franca Zinzi", "slug": "franca_zinzi", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Frances Wilding", "slug": "frances_wilding", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Francesca Waters", "slug": "francesca_waters", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Frank Oz", "slug": "frank_oz", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Fufu Yuan", "slug": "fufu_yuan", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Fukushi Ochiai", "slug": "fukushi_ochiai", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Gabriel Spahiu", "slug": "gabriel_spahiu", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Gabrielle Union", "slug": "gabrielle_union", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Garrett Wareing", "slug": "garrett_wareing", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Geppi Cucciari", "slug": "geppi_cucciari", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Geraldine Singer", "slug": "geraldine_singer", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Gerard Butler", "slug": "gerard_butler", "bio": "Scottish actor", "birthplace": "Paisley, Scotland, UK", "photo_url": ""}, + {"name": "Gia Crovatin", "slug": "gia_crovatin", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Gil Angelo Anfone", "slug": "gil_angelo_anfone", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Glenn Close", "slug": "glenn_close", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Gordon Alexander", "slug": "gordon_alexander", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Grace Friedkin", "slug": "grace_friedkin", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Graciela Beltrán", "slug": "graciela_beltrán", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Gugu Mbatha-Raw", "slug": "gugu_mbatha_raw", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Guillermo Cardona", "slug": "guillermo_cardona", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Guru Bamrah", "slug": "guru_bamrah", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Hailey Gates", "slug": "hailey_gates", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Hajar Bouzaouit", "slug": "hajar_bouzaouit", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Hal Cumpston", "slug": "hal_cumpston", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Haley Lu Richardson", "slug": "haley_lu_richardson", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Halle Bailey", "slug": "halle_bailey", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Halle Berry", "slug": "halle_berry", "bio": "American actress", "birthplace": "Cleveland, Ohio, USA", "photo_url": ""}, + {"name": "Hannah Emily Anderson", "slug": "hannah_emily_anderson", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Hannah Gross", "slug": "hannah_gross", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Haocun Liu", "slug": "haocun_liu", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Harriet Walter", "slug": "harriet_walter", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Harry Melling", "slug": "harry_melling", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Harvey Guillen", "slug": "harvey_guillen", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Hashneen Chauhan", "slug": "hashneen_chauhan", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Hayden Christensen", "slug": "hayden_christensen", "bio": "Canadian actor", "birthplace": "Vancouver, Canada", "photo_url": ""}, + {"name": "Heather Graham", "slug": "heather_graham", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Henrietta Amevor", "slug": "henrietta_amevor", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Henry Cavill", "slug": "henry_cavill", "bio": "British actor", "birthplace": "Jersey, Channel Islands", "photo_url": ""}, + {"name": "Henry Czerny", "slug": "henry_czerny", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Henry Winkler", "slug": "henry_winkler", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Hilary Swank", "slug": "hilary_swank", "bio": "American actress", "birthplace": "Lincoln, Nebraska, USA", "photo_url": ""}, + {"name": "Hiroyuki Sanada", "slug": "hiroyuki_sanada", "bio": "Japanese actor", "birthplace": "Tokyo, Japan", "photo_url": ""}, + {"name": "Holland Taylor", "slug": "holland_taylor", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Hong Chau", "slug": "hong_chau", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Humberto Restrepo", "slug": "humberto_restrepo", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Hunter Schafer", "slug": "hunter_schafer", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ian McDiarmid", "slug": "ian_mcdiarmid", "bio": "Scottish actor", "birthplace": "Carnoustie, Scotland, UK", "photo_url": ""}, + {"name": "Ian McKellen", "slug": "ian_mckellen", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Idris Elba", "slug": "idris_elba", "bio": "English actor", "birthplace": "Hackney, London, UK", "photo_url": ""}, + {"name": "Ike Barinholtz", "slug": "ike_barinholtz", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ilinca Manolache", "slug": "ilinca_manolache", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Inde Navarrette", "slug": "inde_navarrette", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Iringó Réti", "slug": "iringó_réti", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Isabel May", "slug": "isabel_may", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Isabella Costa", "slug": "isabella_costa", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Isabella Ferrari", "slug": "isabella_ferrari", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ishaa Saha", "slug": "ishaa_saha", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Isiah Whitlock Jr.", "slug": "isiah_whitlock_jr", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jack Falahee", "slug": "jack_falahee", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jack Quaid", "slug": "jack_quaid", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jack Stone", "slug": "jack_stone", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jackson Tozer", "slug": "jackson_tozer", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jacob Elordi", "slug": "jacob_elordi", "bio": "Australian actor", "birthplace": "Brisbane, Australia", "photo_url": ""}, + {"name": "Jake Gyllenhaal", "slug": "jake_gyllenhaal", "bio": "American actor", "birthplace": "Los Angeles, California, USA", "photo_url": ""}, + {"name": "James Corden", "slug": "james_corden", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "James Downey", "slug": "james_downey", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "James Eskridge", "slug": "james_eskridge", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "James Marsden", "slug": "james_marsden", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jamie McBride", "slug": "jamie_mcbride", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Janaya Stephens", "slug": "janaya_stephens", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Janelle Monáe", "slug": "janelle_monáe", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jasmine Trinca", "slug": "jasmine_trinca", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jason Schwartzman", "slug": "jason_schwartzman", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jason Statham", "slug": "jason_statham", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jason Sudeikis", "slug": "jason_sudeikis", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jasper Billerbeck", "slug": "jasper_billerbeck", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jean-Benoît Ugeux", "slug": "jean_benoît_ugeux", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jean-Charles Clichet", "slug": "jean_charles_clichet", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jecobi Swain", "slug": "jecobi_swain", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jeff Ayars", "slug": "jeff_ayars", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jeff Brock", "slug": "jeff_brock", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jeff Daniels", "slug": "jeff_daniels", "bio": "American actor", "birthplace": "Athens, Georgia, USA", "photo_url": ""}, + {"name": "Jeff Pierre", "slug": "jeff_pierre", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jeff Sinasac", "slug": "jeff_sinasac", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jeff Yung", "slug": "jeff_yung", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jeffrey A. Hunter", "slug": "jeffrey_a_hunter", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jeffrey Donovan", "slug": "jeffrey_donovan", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jeffrey Wright", "slug": "jeffrey_wright", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jenna Ortega", "slug": "jenna_ortega", "bio": "American actress", "birthplace": "Coachella Valley, California, USA", "photo_url": ""}, + {"name": "Jennifer Aniston", "slug": "jennifer_aniston", "bio": "American actress", "birthplace": "Sherman Oaks, California, USA", "photo_url": ""}, + {"name": "Jennifer Jason Leigh", "slug": "jennifer_jason_leigh", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jeremy Holm", "slug": "jeremy_holm", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jeremy Irvine", "slug": "jeremy_irvine", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jeremy O. Harris", "slug": "jeremy_o_harris", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jess McLeod", "slug": "jess_mcleod", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jesse Plemons", "slug": "jesse_plemons", "bio": "American actor", "birthplace": "Dallas, Texas, USA", "photo_url": ""}, + {"name": "Jessica Gunning", "slug": "jessica_gunning", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jessica Harper", "slug": "jessica_harper", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jessica Hunt", "slug": "jessica_hunt", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jessica McNamee", "slug": "jessica_mcnamee", "bio": "Australian actress", "birthplace": "Sydney, Australia", "photo_url": ""}, + {"name": "Jessie Buckley", "slug": "jessie_buckley", "bio": "Irish actress", "birthplace": "Killarney, Ireland", "photo_url": ""}, + {"name": "Jimmy Tatro", "slug": "jimmy_tatro", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jo Lopez", "slug": "jo_lopez", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Joan Chen", "slug": "joan_chen", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Joe Taslim", "slug": "joe_taslim", "bio": "Indonesian actor", "birthplace": "Palembang, Indonesia", "photo_url": ""}, + {"name": "Joel Edgerton", "slug": "joel_edgerton", "bio": "Australian actor", "birthplace": "Sydney, Australia", "photo_url": ""}, + {"name": "John Boyega", "slug": "john_boyega", "bio": "British actor", "birthplace": "Peckham, London, UK", "photo_url": ""}, + {"name": "John Bubniak", "slug": "john_bubniak", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "John Paul Sneed", "slug": "john_paul_sneed", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "John Travolta", "slug": "john_travolta", "bio": "American actor", "birthplace": "Englewood, New Jersey, USA", "photo_url": ""}, + {"name": "Jon Bernthal", "slug": "jon_bernthal", "bio": "American actor", "birthplace": "Washington, D.C., USA", "photo_url": ""}, + {"name": "Jonathan Blair", "slug": "jonathan_blair", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jordan Firstman", "slug": "jordan_firstman", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jordyn Curet", "slug": "jordyn_curet", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jorge Cervera Jr.", "slug": "jorge_cervera_jr", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Joseph William Evans", "slug": "joseph_william_evans", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Josh Bates", "slug": "josh_bates", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Josh Hamilton", "slug": "josh_hamilton", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Josh Lawson", "slug": "josh_lawson", "bio": "Australian actor", "birthplace": "Brisbane, Australia", "photo_url": ""}, + {"name": "Josh O'Connor", "slug": "josh_oconnor", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Joshua Odjick", "slug": "joshua_odjick", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Josiah Cross", "slug": "josiah_cross", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "José Felipe Auzmendi", "slug": "josé_felipe_auzmendi", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Joël Cudennec", "slug": "joël_cudennec", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "JT Schaeffer", "slug": "jt_schaeffer", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Judd Hirsch", "slug": "judd_hirsch", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jude Law", "slug": "jude_law", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Judy Greer", "slug": "judy_greer", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Julia Louis-Dreyfus", "slug": "julia_louis_dreyfus", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Julia Roberts", "slug": "julia_roberts", "bio": "American actress", "birthplace": "Smyrna, Georgia, USA", "photo_url": ""}, + {"name": "Junichi Suwabe", "slug": "junichi_suwabe", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Juno Temple", "slug": "juno_temple", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jérémie Covillault", "slug": "jérémie_covillault", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jérôme Pouly", "slug": "jérôme_pouly", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Jürg Plüss", "slug": "jürg_plüss", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kali Reis", "slug": "kali_reis", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kandido Uranga", "slug": "kandido_uranga", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kara Young", "slug": "kara_young", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Karen Huie", "slug": "karen_huie", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Karl Urban", "slug": "karl_urban", "bio": "New Zealand actor", "birthplace": "Wellington, New Zealand", "photo_url": ""}, + {"name": "Kasia Smutniak", "slug": "kasia_smutniak", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kate Hudson", "slug": "kate_hudson", "bio": "American actress", "birthplace": "Los Angeles, California, USA", "photo_url": ""}, + {"name": "Kate Isitt", "slug": "kate_isitt", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kathy Baker", "slug": "kathy_baker", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kathy Najimy", "slug": "kathy_najimy", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Katie Aselton", "slug": "katie_aselton", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Katy O'Brian", "slug": "katy_obrian", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kaushik Ganguly", "slug": "kaushik_ganguly", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kaylee Hottle", "slug": "kaylee_hottle", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kaylyn Carter", "slug": "kaylyn_carter", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kazunari Ninomiya", "slug": "kazunari_ninomiya", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Keana Lyn", "slug": "keana_lyn", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Keke Palmer", "slug": "keke_palmer", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kelly Calwill", "slug": "kelly_calwill", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kelly Marie Tran", "slug": "kelly_marie_tran", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kelly McGillis", "slug": "kelly_mcgillis", "bio": "American actress", "birthplace": "Newport Beach, California, USA", "photo_url": ""}, + {"name": "Kenneth Choi", "slug": "kenneth_choi", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kensho Ono", "slug": "kensho_ono", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kerry Washington", "slug": "kerry_washington", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kessarin Ektawatkul", "slug": "kessarin_ektawatkul", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kevin Hart", "slug": "kevin_hart", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kevin Singh", "slug": "kevin_singh", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kian Köppke", "slug": "kian_köppke", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kim Spearman", "slug": "kim_spearman", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kirsten Dunst", "slug": "kirsten_dunst", "bio": "American actress", "birthplace": "Point Pleasant, New Jersey, USA", "photo_url": ""}, + {"name": "Kobna Holdbrook-Smith", "slug": "kobna_holdbrook_smith", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kotone Hanase", "slug": "kotone_hanase", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kristen Wiig", "slug": "kristen_wiig", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kumail Nanjiani", "slug": "kumail_nanjiani", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kyle Chandler", "slug": "kyle_chandler", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kylie Rogers", "slug": "kylie_rogers", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kym Jackson", "slug": "kym_jackson", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Lanette Ware", "slug": "lanette_ware", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Laura Dern", "slug": "laura_dern", "bio": "American actress", "birthplace": "Los Angeles, California, USA", "photo_url": ""}, + {"name": "Laura Harris", "slug": "laura_harris", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Laura Tonke", "slug": "laura_tonke", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Lee Pace", "slug": "lee_pace", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Lena Góra", "slug": "lena_góra", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Lena Headey", "slug": "lena_headey", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Leonie Benesch", "slug": "leonie_benesch", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Leonora Pitts", "slug": "leonora_pitts", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Lesley Sharp", "slug": "lesley_sharp", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Leslie Garza", "slug": "leslie_garza", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Lewis Tan", "slug": "lewis_tan", "bio": "British actor", "birthplace": "Manchester, England, UK", "photo_url": ""}, + {"name": "Liam Culbertson", "slug": "liam_culbertson", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Liam Serg", "slug": "liam_serg", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Lilah Pate", "slug": "lilah_pate", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Lili Reinhart", "slug": "lili_reinhart", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Lilly Melgar", "slug": "lilly_melgar", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Lily James", "slug": "lily_james", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Lina Esco", "slug": "lina_esco", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Linda Cardellini", "slug": "linda_cardellini", "bio": "American actress", "birthplace": "Redwood City, California, USA", "photo_url": ""}, + {"name": "Lisa Ann Walter", "slug": "lisa_ann_walter", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Lisa Hagmeister", "slug": "lisa_hagmeister", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Lola Tung", "slug": "lola_tung", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Long Jiang", "slug": "long_jiang", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Lorenzo De Moor", "slug": "lorenzo_de_moor", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Luca Barbarossa", "slug": "luca_barbarossa", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Luciano Szafir", "slug": "luciano_szafir", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ludemir", "slug": "ludemir", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Luisa Ranieri", "slug": "luisa_ranieri", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Lukas Gage", "slug": "lukas_gage", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Luna Blaise", "slug": "luna_blaise", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Lunetta Savino", "slug": "lunetta_savino", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Mahavir Bhullar", "slug": "mahavir_bhullar", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Mahershala Ali", "slug": "mahershala_ali", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Malhar Thakar", "slug": "malhar_thakar", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Mallori Johnson", "slug": "mallori_johnson", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Mamoudou Athie", "slug": "mamoudou_athie", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Manav Vij", "slug": "manav_vij", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Mandeep Dhillon", "slug": "mandeep_dhillon", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Manuel Garcia-Rulfo", "slug": "manuel_garcia_rulfo", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Mar Sodupe", "slug": "mar_sodupe", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Mara Venier", "slug": "mara_venier", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Marc Jacobs", "slug": "marc_jacobs", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Marco Calvani", "slug": "marco_calvani", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Margarita Soto", "slug": "margarita_soto", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Margherita Schoch", "slug": "margherita_schoch", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Mari Yamamoto", "slug": "mari_yamamoto", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Mark Coles Smith", "slug": "mark_coles_smith", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Mark O'Brien", "slug": "mark_obrien", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Mark Wahlberg", "slug": "mark_wahlberg", "bio": "American actor", "birthplace": "Boston, Massachusetts, USA", "photo_url": ""}, + {"name": "Marley Aliah", "slug": "marley_aliah", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Martin Short", "slug": "martin_short", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Mary McDonnell", "slug": "mary_mcdonnell", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Mason Gooding", "slug": "mason_gooding", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Matt Nable", "slug": "matt_nable", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Matt Whelan", "slug": "matt_whelan", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Matthew Baunsgard", "slug": "matthew_baunsgard", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Matthew Del Negro", "slug": "matthew_del_negro", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Matthew Rhys", "slug": "matthew_rhys", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Matthew Shear", "slug": "matthew_shear", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Matthias Brandt", "slug": "matthias_brandt", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Matthias Schweighöfer", "slug": "matthias_schweighöfer", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Maxine Peake", "slug": "maxine_peake", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Meg Ryan", "slug": "meg_ryan", "bio": "American actress", "birthplace": "Fairfield, Connecticut, USA", "photo_url": ""}, + {"name": "Megan Gage", "slug": "megan_gage", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Megan Lawless", "slug": "megan_lawless", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Megan McDonnell", "slug": "megan_mcdonnell", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Megan Suri", "slug": "megan_suri", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Mehcad Brooks", "slug": "mehcad_brooks", "bio": "American actor", "birthplace": "Austin, Texas, USA", "photo_url": ""}, + {"name": "Melissa Villaseñor", "slug": "melissa_villaseñor", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Meryl Streep", "slug": "meryl_streep", "bio": "American actress", "birthplace": "Summit, New Jersey, USA", "photo_url": ""}, + {"name": "Mia Goth", "slug": "mia_goth", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Michael Abbott Jr.", "slug": "michael_abbott_jr", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Michael Johnston", "slug": "michael_johnston", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Michael Kunicki", "slug": "michael_kunicki", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Michael McGrale", "slug": "michael_mcgrale", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Michael Pena", "slug": "michael_pena", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Michael Peña", "slug": "michael_peña", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Michael Shannon", "slug": "michael_shannon", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Michaela Coel", "slug": "michaela_coel", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Michele Morrone", "slug": "michele_morrone", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Michelle Fairley", "slug": "michelle_fairley", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Michèle Duquet", "slug": "michèle_duquet", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Mika Amonsen", "slug": "mika_amonsen", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Mikel Garmendia", "slug": "mikel_garmendia", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Mila Kunis", "slug": "mila_kunis", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Mildred Marie Langford", "slug": "mildred_marie_langford", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Milena Mancini", "slug": "milena_mancini", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Milena Vukotic", "slug": "milena_vukotic", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Mireille Perrier", "slug": "mireille_perrier", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Miriam Socarrás", "slug": "miriam_socarrás", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Mohana Krishnan", "slug": "mohana_krishnan", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Molly Gordon", "slug": "molly_gordon", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Molly Shannon", "slug": "molly_shannon", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Morgan Jay", "slug": "morgan_jay", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Mrs. Dunn", "slug": "mrs_dunn", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Myha'la Herrold", "slug": "myhala_herrold", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Mykelti Williamson", "slug": "mykelti_williamson", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Måns Molin", "slug": "måns_molin", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Naama Preis", "slug": "naama_preis", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Namashi Chakraborthy", "slug": "namashi_chakraborthy", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Nana Komatsu", "slug": "nana_komatsu", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Naomi Ackie", "slug": "naomi_ackie", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Naru Asanuma", "slug": "naru_asanuma", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Natalie Portman", "slug": "natalie_portman", "bio": "Israeli-American actress", "birthplace": "Jerusalem, Israel", "photo_url": ""}, + {"name": "Nathan Smith Jones", "slug": "nathan_smith_jones", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Natthaya Ongsritragul", "slug": "natthaya_ongsritragul", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Neetu Chandra", "slug": "neetu_chandra", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Nestor Carbonell", "slug": "nestor_carbonell", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Neve Campbell", "slug": "neve_campbell", "bio": "Canadian actress", "birthplace": "Guelph, Ontario, Canada", "photo_url": ""}, + {"name": "Nicholas Braun", "slug": "nicholas_braun", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Nicholas Galitzine", "slug": "nicholas_galitzine", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Nichole Sakura", "slug": "nichole_sakura", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Nick Frost", "slug": "nick_frost", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Nick Nolte", "slug": "nick_nolte", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Nicolas Vaude", "slug": "nicolas_vaude", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Nicole Grimaudo", "slug": "nicole_grimaudo", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Nina Kiri", "slug": "nina_kiri", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Noah Brooder", "slug": "noah_brooder", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Noah Fearnley", "slug": "noah_fearnley", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Olivia Wilde", "slug": "olivia_wilde", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Oscar Isaac", "slug": "oscar_isaac", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Paola Minaccioni", "slug": "paola_minaccioni", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Paolo Sassanelli", "slug": "paolo_sassanelli", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Paterson Joseph", "slug": "paterson_joseph", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Patricia Arquette", "slug": "patricia_arquette", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Patrick Baladi", "slug": "patrick_baladi", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Patrick Stewart", "slug": "patrick_stewart", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Paul Adelstein", "slug": "paul_adelstein", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Paul Donnelly", "slug": "paul_donnelly", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Paul Gordon", "slug": "paul_gordon", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Paul Grimstad", "slug": "paul_grimstad", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Paul Mescal", "slug": "paul_mescal", "bio": "Irish actor", "birthplace": "Maynooth, Ireland", "photo_url": ""}, + {"name": "Paul Tylak", "slug": "paul_tylak", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Paula Beer", "slug": "paula_beer", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Percy Hynes White", "slug": "percy_hynes_white", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Peter Mullan", "slug": "peter_mullan", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Philicia Saunders", "slug": "philicia_saunders", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Phoebe Dynevor", "slug": "phoebe_dynevor", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Phoebe Waller-Bridge", "slug": "phoebe_waller_bridge", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Pierre Lottin", "slug": "pierre_lottin", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Pimchanok Luevisadpaibul", "slug": "pimchanok_luevisadpaibul", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Prashant Barot", "slug": "prashant_barot", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Pratik Rathod", "slug": "pratik_rathod", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Preston Drabble", "slug": "preston_drabble", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "R Austin Ball", "slug": "r_austin_ball", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "R. Marcus Taylor", "slug": "r_marcus_taylor", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Rachel Zegler", "slug": "rachel_zegler", "bio": "American actress", "birthplace": "Hackensack, New Jersey, USA", "photo_url": ""}, + {"name": "Rafi Gavron", "slug": "rafi_gavron", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Rakul Preet Singh", "slug": "rakul_preet_singh", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ravi Kumar", "slug": "ravi_kumar", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Reagan Fitzgerald", "slug": "reagan_fitzgerald", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Rebeca Andrade", "slug": "rebeca_andrade", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Rebecca Hall", "slug": "rebecca_hall", "bio": "English actress", "birthplace": "London, England, UK", "photo_url": ""}, + {"name": "Rebecca Marder", "slug": "rebecca_marder", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Reena Jolly", "slug": "reena_jolly", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Regina Hall", "slug": "regina_hall", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Regé-Jean Page", "slug": "regé_jean_page", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Renee Elise Goldsberry", "slug": "renee_elise_goldsberry", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Richard Forsgren", "slug": "richard_forsgren", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ridvan Murati", "slug": "ridvan_murati", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Riz Ahmed", "slug": "riz_ahmed", "bio": "British actor", "birthplace": "London, England, UK", "photo_url": ""}, + {"name": "Robert Aberdeen", "slug": "robert_aberdeen", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Robert Aramayo", "slug": "robert_aramayo", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Robert Pattinson", "slug": "robert_pattinson", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Robert Walker Branchaud", "slug": "robert_walker_branchaud", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Rodney J. Hobbs", "slug": "rodney_j_hobbs", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Rodrigo Santoro", "slug": "rodrigo_santoro", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Rosamund Pike", "slug": "rosamund_pike", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Rose J. Kaur", "slug": "rose_j_kaur", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ross Alan Doney", "slug": "ross_alan_doney", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Roy Chiu", "slug": "roy_chiu", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Rupert Friend", "slug": "rupert_friend", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Russell Crowe", "slug": "russell_crowe", "bio": "Australian actor", "birthplace": "Wellington, New Zealand", "photo_url": ""}, + {"name": "Russell Dean Schultz", "slug": "russell_dean_schultz", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ruth Wilson", "slug": "ruth_wilson", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ryan Allen", "slug": "ryan_allen", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ryan Bobkin", "slug": "ryan_bobkin", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ryan Fletcher", "slug": "ryan_fletcher", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ryan Shelton", "slug": "ryan_shelton", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ryan Zheng", "slug": "ryan_zheng", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sacha Baron Cohen", "slug": "sacha_baron_cohen", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Saffron Hocking", "slug": "saffron_hocking", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sally Field", "slug": "sally_field", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Salme Geransar", "slug": "salme_geransar", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sam Nivola", "slug": "sam_nivola", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sam Richardson", "slug": "sam_richardson", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sam Rockwell", "slug": "sam_rockwell", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Samara Weaving", "slug": "samara_weaving", "bio": "Australian actress", "birthplace": "Adelaide, Australia", "photo_url": ""}, + {"name": "Sameera Reddy", "slug": "sameera_reddy", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Samuel L. Jackson", "slug": "samuel_l_jackson", "bio": "American actor", "birthplace": "Washington, D.C., USA", "photo_url": ""}, + {"name": "Sandra Bullock", "slug": "sandra_bullock", "bio": "American actress", "birthplace": "Arlington, Virginia, USA", "photo_url": ""}, + {"name": "Sanjay Dutt", "slug": "sanjay_dutt", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Saoirse Ronan", "slug": "saoirse_ronan", "bio": "Irish-American actress", "birthplace": "The Bronx, New York, USA", "photo_url": ""}, + {"name": "Sara Ali Khan", "slug": "sara_ali_khan", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sara Bosi", "slug": "sara_bosi", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sarah Jessica Parker", "slug": "sarah_jessica_parker", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sarah Paulson", "slug": "sarah_paulson", "bio": "American actress", "birthplace": "Tampa, Florida, USA", "photo_url": ""}, + {"name": "Sasha Calle", "slug": "sasha_calle", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Scott Adkins", "slug": "scott_adkins", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Scott Ellis Watson", "slug": "scott_ellis_watson", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Scott Glenn", "slug": "scott_glenn", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sean Bean", "slug": "sean_bean", "bio": "English actor", "birthplace": "Sheffield, England, UK", "photo_url": ""}, + {"name": "Sean Penn", "slug": "sean_penn", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sebastian Maniscalco", "slug": "sebastian_maniscalco", "bio": "American comedian and actor", "birthplace": "Arlington Heights, Illinois, USA", "photo_url": ""}, + {"name": "Selma Jamal Aldin", "slug": "selma_jamal_aldin", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Serban Pavlu", "slug": "serban_pavlu", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Shane Gillis", "slug": "shane_gillis", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Shane Jensen", "slug": "shane_jensen", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Shannon Gorman", "slug": "shannon_gorman", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Shanshan Chunyu", "slug": "shanshan_chunyu", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sharon Alexander", "slug": "sharon_alexander", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sheeba Chaddha", "slug": "sheeba_chaddha", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sheng Wang", "slug": "sheng_wang", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Shirley Henderson", "slug": "shirley_henderson", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Shruhad Goswami", "slug": "shruhad_goswami", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Simon Baker", "slug": "simon_baker", "bio": "Australian actor and director", "birthplace": "Launceston, Tasmania, Australia", "photo_url": ""}, + {"name": "Simon Berry", "slug": "simon_berry", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Simon Rex", "slug": "simon_rex", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sivakorn Adulsuttikul", "slug": "sivakorn_adulsuttikul", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sky Yang", "slug": "sky_yang", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sofia Black-D'Elia", "slug": "sofia_black_delia", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Soma Saito", "slug": "soma_saito", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sonal Chauhan", "slug": "sonal_chauhan", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sonja Riesen", "slug": "sonja_riesen", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sonya Walger", "slug": "sonya_walger", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sophie Nélisse", "slug": "sophie_nélisse", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sophie Telegadis", "slug": "sophie_telegadis", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sophie Thatcher", "slug": "sophie_thatcher", "bio": "American actress", "birthplace": "Chicago, Illinois, USA", "photo_url": ""}, + {"name": "Spike Jonze", "slug": "spike_jonze", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Stanley Tucci", "slug": "stanley_tucci", "bio": "American actor and filmmaker", "birthplace": "Peekskill, New York, USA", "photo_url": ""}, + {"name": "Starletta DuPois", "slug": "starletta_dupois", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Stefania Casini", "slug": "stefania_casini", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Stefano Accorsi", "slug": "stefano_accorsi", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Stella Pecollo", "slug": "stella_pecollo", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Stephen Jones", "slug": "stephen_jones", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Stephen Root", "slug": "stephen_root", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sterling K. Brown", "slug": "sterling_k_brown", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Steve Purcell", "slug": "steve_purcell", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Steven Yeun", "slug": "steven_yeun", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Stuart Rudin", "slug": "stuart_rudin", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Summer H. Howell", "slug": "summer_h_howell", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Suriya", "slug": "suriya", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Susan Sullivan", "slug": "susan_sullivan", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Swann Arlaud", "slug": "swann_arlaud", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Swasika", "slug": "swasika", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sydney Lemmon", "slug": "sydney_lemmon", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Sydney Sweeney", "slug": "sydney_sweeney", "bio": "American actress", "birthplace": "Spokane, Washington, USA", "photo_url": ""}, + {"name": "Takehiro Hira", "slug": "takehiro_hira", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Taron Egerton", "slug": "taron_egerton", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Tate Donovan", "slug": "tate_donovan", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Tati Gabrielle", "slug": "tati_gabrielle", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Teerawat Mulvilai", "slug": "teerawat_mulvilai", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Teri Polo", "slug": "teri_polo", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Tessa Thompson", "slug": "tessa_thompson", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Teyana Taylor", "slug": "teyana_taylor", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Thanapob Leeratanakachorn", "slug": "thanapob_leeratanakachorn", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Thaneth Warakulnukroh", "slug": "thaneth_warakulnukroh", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Theo James", "slug": "theo_james", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Thomas Moffett", "slug": "thomas_moffett", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Théo Costa-Marini", "slug": "théo_costa_marini", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Tibério Azul", "slug": "tibério_azul", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Tigmanshu Dhulia", "slug": "tigmanshu_dhulia", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Tim Baltz", "slug": "tim_baltz", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Tim Roth", "slug": "tim_roth", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Tom Blyth", "slug": "tom_blyth", "bio": "English actor", "birthplace": "London, England, UK", "photo_url": ""}, + {"name": "Tom Felton", "slug": "tom_felton", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Tom Hiddleston", "slug": "tom_hiddleston", "bio": "English actor", "birthplace": "Westminster, London, UK", "photo_url": ""}, + {"name": "Tom Law", "slug": "tom_law", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Tom Skerritt", "slug": "tom_skerritt", "bio": "American actor", "birthplace": "Detroit, Michigan, USA", "photo_url": ""}, + {"name": "Tom Sturridge", "slug": "tom_sturridge", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Tom Taylor", "slug": "tom_taylor", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Tom Wu", "slug": "tom_wu", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Toni Rakkaen", "slug": "toni_rakkaen", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Tony Goldwyn", "slug": "tony_goldwyn", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Tosin Cole", "slug": "tosin_cole", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Tovino Thomas", "slug": "tovino_thomas", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Toyin Omari-Kinch", "slug": "toyin_omari_kinch", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "T.R. Knight", "slug": "tr_knight", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Tracey Birdsall", "slug": "tracey_birdsall", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Travis", "slug": "travis", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Tridha Choudhury", "slug": "tridha_choudhury", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Trisha Krishnan", "slug": "trisha_krishnan", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Tristan Gemmill", "slug": "tristan_gemmill", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Tut Nyuot", "slug": "tut_nyuot", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Tyler the Creator", "slug": "tyler_the_creator", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ubeimar Rios", "slug": "ubeimar_rios", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Urbain Guiguemdé", "slug": "urbain_guiguemdé", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Urs Bihler", "slug": "urs_bihler", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Valentin Novopolskij", "slug": "valentin_novopolskij", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Valerio Morigi", "slug": "valerio_morigi", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Vanessa Bayer", "slug": "vanessa_bayer", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Vanessa Scalera", "slug": "vanessa_scalera", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Victor John", "slug": "victor_john", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Victoria Pedretti", "slug": "victoria_pedretti", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Viggo Mortensen", "slug": "viggo_mortensen", "bio": "Danish-American actor", "birthplace": "New York City, New York, USA", "photo_url": ""}, + {"name": "Vijay Raaz", "slug": "vijay_raaz", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Vince Vaughn", "slug": "vince_vaughn", "bio": "American actor", "birthplace": "Minneapolis, Minnesota, USA", "photo_url": ""}, + {"name": "Vinicio Marchioni", "slug": "vinicio_marchioni", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Vinny Kress", "slug": "vinny_kress", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Viola Davis", "slug": "viola_davis", "bio": "American actress", "birthplace": "St. Matthews, South Carolina, USA", "photo_url": ""}, + {"name": "Vivica A. Fox", "slug": "vivica_a_fox", "bio": "American actress", "birthplace": "South Bend, Indiana, USA", "photo_url": ""}, + {"name": "Vytautas Kaniusonis", "slug": "vytautas_kaniusonis", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Wamiqa Gabbi", "slug": "wamiqa_gabbi", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Wayne Duvall", "slug": "wayne_duvall", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Whitney Peak", "slug": "whitney_peak", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Will Keen", "slug": "will_keen", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Will Madden", "slug": "will_madden", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Will Smith", "slug": "will_smith", "bio": "American actor and rapper", "birthplace": "Philadelphia, Pennsylvania, USA", "photo_url": ""}, + {"name": "William H. Macy", "slug": "william_h_macy", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "William Moseley", "slug": "william_moseley", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Win Sakulsaengprapha", "slug": "win_sakulsaengprapha", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Wood Harris", "slug": "wood_harris", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Xavier Samuel", "slug": "xavier_samuel", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Yamato Kochi", "slug": "yamato_kochi", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Yograj Singh", "slug": "yograj_singh", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Yui Ishikawa", "slug": "yui_ishikawa", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Zac Garred", "slug": "zac_garred", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Zach Galifianakis", "slug": "zach_galifianakis", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Zachary Amos", "slug": "zachary_amos", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Zarin Shihab", "slug": "zarin_shihab", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Zazie Beetz", "slug": "zazie_beetz", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Zen Gesner", "slug": "zen_gesner", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Zoe Winters", "slug": "zoe_winters", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Zosia Mamet", "slug": "zosia_mamet", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, +] + + +CRITIC_REVIEWS = [ + { + "movie_slug": "avengers_endgame", + "critic": "Victoria Luxford", + "publication": "BBC.com", + "text": "Eleven years of Universe building, and this is the crescendo. It really pays off, I've never seen anything quite like it.", + "fresh": True, + }, + { + "movie_slug": "avengers_endgame", + "critic": "Stephen Romei", + "publication": "The Australian", + "text": "It is this part of the story, the human side, that holds the movie together for its three-hour run time.", + "fresh": True, + }, + { + "movie_slug": "avengers_endgame", + "critic": "Amy Nicholson", + "publication": "FilmWeek (LAist)", + "text": "This is a feat of engineering... I felt a sense of catharsis finishing it.", + "fresh": True, + }, + { + "movie_slug": "avengers_endgame", + "critic": "Matt Brunson", + "publication": "Film Frenzy", + "text": "Is it the best superhero movie ever made? Don't be ridiculous. Nevertheless, this ranks among the upper echelons of the MCU.", + "fresh": True, + }, + { + "movie_slug": "avengers_endgame", + "critic": "Peter Travers", + "publication": "Rolling Stone", + "text": "Avengers: Endgame brings the Infinity Saga to a deeply satisfying and emotional conclusion.", + "fresh": True, + }, + { + "movie_slug": "the_dark_knight", + "critic": "Roger Ebert", + "publication": "Chicago Sun-Times", + "text": "The Dark Knight is not a simplistic tale of good and evil. Batman makes a dark decision and comes close to being an antihero.", + "fresh": True, + }, + { + "movie_slug": "the_dark_knight", + "critic": "A.O. Scott", + "publication": "New York Times", + "text": "The Dark Knight is a triumph of craft and imagination, anchored by Heath Ledger's unforgettable performance as the Joker.", + "fresh": True, + }, + { + "movie_slug": "the_dark_knight", + "critic": "Peter Travers", + "publication": "Rolling Stone", + "text": "Ledger's Joker is a force of anarchic, nihilistic evil that puts all other screen villains to shame.", + "fresh": True, + }, + { + "movie_slug": "the_dark_knight", + "critic": "David Edelstein", + "publication": "New York Magazine", + "text": "Christopher Nolan has given Batman a richness and gravity that no superhero movie has achieved before.", + "fresh": True, + }, + { + "movie_slug": "the_dark_knight", + "critic": "Todd McCarthy", + "publication": "Variety", + "text": "A knockout: audaciously conceived and brilliantly executed, this is a true screen epic.", + "fresh": True, + }, + { + "movie_slug": "dune_part_two", + "critic": "David Ehrlich", + "publication": "IndieWire", + "text": "A sweeping sci-fi epic that improves on its predecessor in every possible way while delivering one of the most visually stunning films in years.", + "fresh": True, + }, + { + "movie_slug": "dune_part_two", + "critic": "Robbie Collin", + "publication": "The Telegraph", + "text": "Villeneuve's vision is colossal and uncompromising. Dune: Part Two is the rare sequel that deepens every element of the original.", + "fresh": True, + }, + { + "movie_slug": "dune_part_two", + "critic": "Justin Chang", + "publication": "Los Angeles Times", + "text": "Timoth\u00e9e Chalamet delivers a commanding performance as Paul Atreides begins his transformation into a messianic figure.", + "fresh": True, + }, + { + "movie_slug": "dune_part_two", + "critic": "Alissa Wilkinson", + "publication": "Vox", + "text": "Dense, thrilling, and relentlessly watchable, this is space opera filmmaking at its finest.", + "fresh": True, + }, + { + "movie_slug": "dune_part_two", + "critic": "Brian Tallerico", + "publication": "RogerEbert.com", + "text": "A masterclass in world-building and visual storytelling that raises the bar for the sci-fi genre.", + "fresh": True, + }, + { + "movie_slug": "oppenheimer_2023", + "critic": "Peter Bradshaw", + "publication": "The Guardian", + "text": "An extraordinary achievement. Nolan harnesses the power of cinema to tell the story of one of history's most consequential inventions.", + "fresh": True, + }, + { + "movie_slug": "oppenheimer_2023", + "critic": "Stephanie Zacharek", + "publication": "Time", + "text": "Cillian Murphy delivers a career-defining performance as the father of the atomic bomb.", + "fresh": True, + }, + { + "movie_slug": "oppenheimer_2023", + "critic": "Clarisse Loughrey", + "publication": "The Independent", + "text": "Nolan crafts a dense, layered, and deeply human portrait of a man consumed by his own creation.", + "fresh": True, + }, + { + "movie_slug": "oppenheimer_2023", + "critic": "David Ehrlich", + "publication": "IndieWire", + "text": "An ambitious, sprawling epic that uses the birth of the atomic age to explore the intersection of science, politics, and morality.", + "fresh": True, + }, + { + "movie_slug": "oppenheimer_2023", + "critic": "Manohla Dargis", + "publication": "New York Times", + "text": "Oppenheimer is Christopher Nolan's most emotionally devastating film, and his best.", + "fresh": True, + }, + { + "movie_slug": "barbie", + "critic": "Manohla Dargis", + "publication": "New York Times", + "text": "A fizzy, imaginative comedy that uses Barbie's plastic fantastic world as a springboard for something unexpectedly moving and sincere.", + "fresh": True, + }, + { + "movie_slug": "barbie", + "critic": "Robbie Collin", + "publication": "The Telegraph", + "text": "Margot Robbie and Ryan Gosling are perfectly cast in this smart, subversive take on the world's most famous doll.", + "fresh": True, + }, + { + "movie_slug": "barbie", + "critic": "Peter Bradshaw", + "publication": "The Guardian", + "text": "Greta Gerwig has delivered a piece of pop art that is funny, touching, and wonderfully weird.", + "fresh": True, + }, + { + "movie_slug": "barbie", + "critic": "Alissa Wilkinson", + "publication": "Vox", + "text": "An audacious blend of corporate product and genuine artistry that somehow manages to be both things at once.", + "fresh": True, + }, + { + "movie_slug": "barbie", + "critic": "David Fear", + "publication": "Rolling Stone", + "text": "Barbie is the rare blockbuster that dares to be both silly and sincere, and succeeds at both.", + "fresh": True, + }, + { + "movie_slug": "everything_everywhere_all_at_once", + "critic": "David Ehrlich", + "publication": "IndieWire", + "text": "A mind-bending, heart-swelling adventure that uses the multiverse to tell the most human story imaginable.", + "fresh": True, + }, + { + "movie_slug": "everything_everywhere_all_at_once", + "critic": "Peter Bradshaw", + "publication": "The Guardian", + "text": "Michelle Yeoh delivers the performance of a lifetime in this wildly inventive and deeply emotional film.", + "fresh": True, + }, + { + "movie_slug": "everything_everywhere_all_at_once", + "critic": "Justin Chang", + "publication": "Los Angeles Times", + "text": "An audacious, genre-defying masterpiece that somehow makes sense of chaos.", + "fresh": True, + }, + { + "movie_slug": "everything_everywhere_all_at_once", + "critic": "Bilge Ebiri", + "publication": "Vulture", + "text": "The most creative and emotionally resonant film of the year, anchored by extraordinary performances.", + "fresh": True, + }, + { + "movie_slug": "parasite_2019", + "critic": "Peter Bradshaw", + "publication": "The Guardian", + "text": "An extraordinarily entertaining, brilliantly devised thriller-drama about class warfare.", + "fresh": True, + }, + { + "movie_slug": "parasite_2019", + "critic": "A.O. Scott", + "publication": "New York Times", + "text": "Bong Joon Ho has crafted a masterful social satire that is as thrilling as it is thought-provoking.", + "fresh": True, + }, + { + "movie_slug": "parasite_2019", + "critic": "Robbie Collin", + "publication": "The Telegraph", + "text": "A staggering achievement. Every frame crackles with intelligence and dark humor.", + "fresh": True, + }, + { + "movie_slug": "parasite_2019", + "critic": "Stephanie Zacharek", + "publication": "Time", + "text": "Parasite is a wickedly entertaining film about the gap between rich and poor that resonates globally.", + "fresh": True, + }, + { + "movie_slug": "inside_out_2", + "critic": "Brian Tallerico", + "publication": "RogerEbert.com", + "text": "A worthy sequel that captures the emotional turbulence of adolescence with Pixar's signature wit and heart.", + "fresh": True, + }, + { + "movie_slug": "inside_out_2", + "critic": "David Ehrlich", + "publication": "IndieWire", + "text": "Inside Out 2 deepens the original's emotional landscape by introducing the messy complexity of teenage feelings.", + "fresh": True, + }, + { + "movie_slug": "inside_out_2", + "critic": "Alissa Wilkinson", + "publication": "Vox", + "text": "Maya Hawke's Anxiety is a perfect addition to the emotional ensemble, capturing the feeling of growing up with precision.", + "fresh": True, + }, + { + "movie_slug": "inside_out_2", + "critic": "Clarisse Loughrey", + "publication": "The Independent", + "text": "Pixar's best sequel in years \u2014 funny, touching, and remarkably insightful about the inner lives of teenagers.", + "fresh": True, + }, + { + "movie_slug": "the_wild_robot", + "critic": "Brian Tallerico", + "publication": "RogerEbert.com", + "text": "A gorgeous, deeply felt animated film that proves the power of found family in the most unexpected circumstances.", + "fresh": True, + }, + { + "movie_slug": "the_wild_robot", + "critic": "David Ehrlich", + "publication": "IndieWire", + "text": "DreamWorks Animation's best film in years \u2014 a visually stunning, emotionally rich story about what it means to belong.", + "fresh": True, + }, + { + "movie_slug": "the_wild_robot", + "critic": "Robbie Collin", + "publication": "The Telegraph", + "text": "Lupita Nyong'o brings extraordinary warmth to Roz in this beautifully animated tale of nature and nurture.", + "fresh": True, + }, + { + "movie_slug": "the_wild_robot", + "critic": "Peter Bradshaw", + "publication": "The Guardian", + "text": "The Wild Robot is a film of rare beauty and emotional depth, a triumph of animated storytelling.", + "fresh": True, + }, + { + "movie_slug": "deadpool_and_wolverine", + "critic": "Brian Tallerico", + "publication": "RogerEbert.com", + "text": "Reynolds and Jackman have crackling chemistry in this irreverent, fan-service-heavy multiverse romp.", + "fresh": True, + }, + { + "movie_slug": "deadpool_and_wolverine", + "critic": "David Fear", + "publication": "Rolling Stone", + "text": "A love letter to the X-Men franchise wrapped in Deadpool's signature crude humor and fourth-wall breaking.", + "fresh": True, + }, + { + "movie_slug": "deadpool_and_wolverine", + "critic": "Alissa Wilkinson", + "publication": "Vox", + "text": "Shawn Levy delivers a crowd-pleaser that balances crude humor with genuine emotional stakes.", + "fresh": True, + }, + { + "movie_slug": "deadpool_and_wolverine", + "critic": "Clarisse Loughrey", + "publication": "The Independent", + "text": "It's messy and overlong, but Reynolds and Jackman make it impossible not to have fun.", + "fresh": True, + }, + { + "movie_slug": "top_gun_maverick", + "critic": "David Ehrlich", + "publication": "IndieWire", + "text": "Top Gun: Maverick is the rare legacy sequel that not only lives up to the original but surpasses it in every way.", + "fresh": True, + }, + { + "movie_slug": "top_gun_maverick", + "critic": "Peter Bradshaw", + "publication": "The Guardian", + "text": "Tom Cruise delivers a white-knuckle spectacle that reminds us why we go to the movies.", + "fresh": True, + }, + { + "movie_slug": "top_gun_maverick", + "critic": "Manohla Dargis", + "publication": "New York Times", + "text": "A thrilling, old-fashioned blockbuster powered by practical effects and genuine star power.", + "fresh": True, + }, + { + "movie_slug": "top_gun_maverick", + "critic": "Stephanie Zacharek", + "publication": "Time", + "text": "This is what happens when a true movie star commits fully to a role \u2014 the result is pure exhilaration.", + "fresh": True, + }, + { + "movie_slug": "top_gun_maverick", + "critic": "Todd McCarthy", + "publication": "Deadline", + "text": "Maverick soars. Cruise at his very best in a film that respects both its audience and its source material.", + "fresh": True, + }, + { + "movie_slug": "interstellar_2014", + "critic": "A.O. Scott", + "publication": "New York Times", + "text": "Nolan's most ambitious film is also his most emotional \u2014 a mind-bending journey through space anchored by a father's love.", + "fresh": True, + }, + { + "movie_slug": "interstellar_2014", + "critic": "Peter Bradshaw", + "publication": "The Guardian", + "text": "An extraordinary experience. Interstellar combines the cerebral with the deeply personal.", + "fresh": True, + }, + { + "movie_slug": "interstellar_2014", + "critic": "Todd McCarthy", + "publication": "The Hollywood Reporter", + "text": "Visually stunning and emotionally powerful, Nolan's space odyssey is a film to be experienced on the biggest screen possible.", + "fresh": True, + }, + { + "movie_slug": "interstellar_2014", + "critic": "Robbie Collin", + "publication": "The Telegraph", + "text": "McConaughey is superb as a man torn between saving the world and seeing his children again.", + "fresh": True, + }, + { + "movie_slug": "interstellar_2014", + "critic": "David Edelstein", + "publication": "New York Magazine", + "text": "The spectacle is breathtaking, though the emotional core sometimes gets lost in the cosmic grandeur.", + "fresh": False, + }, + { + "movie_slug": "wicked_2024", + "critic": "David Ehrlich", + "publication": "IndieWire", + "text": "Jon M. Chu brings Oz to vivid, spectacular life in this faithful and emotionally rich adaptation of the beloved musical.", + "fresh": True, + }, + { + "movie_slug": "wicked_2024", + "critic": "Brian Tallerico", + "publication": "RogerEbert.com", + "text": "Cynthia Erivo and Ariana Grande are both extraordinary, bringing vocal power and genuine emotion to their iconic roles.", + "fresh": True, + }, + { + "movie_slug": "wicked_2024", + "critic": "Peter Bradshaw", + "publication": "The Guardian", + "text": "A visually spectacular musical that captures the magic and the message of the stage show with flair.", + "fresh": True, + }, + { + "movie_slug": "wicked_2024", + "critic": "Alissa Wilkinson", + "publication": "Vox", + "text": "Wicked defies expectations by being both a faithful adaptation and a genuinely cinematic experience.", + "fresh": True, + }, + { + "movie_slug": "sinners_2025", + "critic": "David Ehrlich", + "publication": "IndieWire", + "text": "Ryan Coogler delivers his most ambitious and deeply personal film \u2014 a genre-bending masterpiece set in the American South.", + "fresh": True, + }, + { + "movie_slug": "sinners_2025", + "critic": "Brian Tallerico", + "publication": "RogerEbert.com", + "text": "Michael B. Jordan gives a dual performance of remarkable range and power. Coogler's best film since Fruitvale Station.", + "fresh": True, + }, + { + "movie_slug": "sinners_2025", + "critic": "Robbie Collin", + "publication": "The Telegraph", + "text": "A stunning, genre-defying film that uses horror and blues music to tell a deeply American story about race, faith, and family.", + "fresh": True, + }, + { + "movie_slug": "sinners_2025", + "critic": "Clarisse Loughrey", + "publication": "The Independent", + "text": "Sinners is electrifying filmmaking \u2014 violent, tender, and absolutely alive with music and meaning.", + "fresh": True, + }, + { + "movie_slug": "nosferatu_2024", + "critic": "Peter Bradshaw", + "publication": "The Guardian", + "text": "Robert Eggers' Nosferatu is a breathtaking exercise in gothic atmosphere and visual storytelling.", + "fresh": True, + }, + { + "movie_slug": "nosferatu_2024", + "critic": "David Ehrlich", + "publication": "IndieWire", + "text": "Bill Skarsg\u00e5rd's Orlok is a creature of terrifying, ancient menace. Eggers crafts a horror film of genuine dread.", + "fresh": True, + }, + { + "movie_slug": "nosferatu_2024", + "critic": "Robbie Collin", + "publication": "The Telegraph", + "text": "Sumptuously designed and deeply unsettling, this is gothic horror filmmaking at its most accomplished.", + "fresh": True, + }, + { + "movie_slug": "nosferatu_2024", + "critic": "Brian Tallerico", + "publication": "RogerEbert.com", + "text": "Eggers brings his trademark visual precision to Nosferatu, creating one of the most atmospheric horror films in years.", + "fresh": True, + }, + { + "movie_slug": "godzilla_minus_one", + "critic": "David Ehrlich", + "publication": "IndieWire", + "text": "The best Godzilla film in decades \u2014 a deeply human story about survivor's guilt set against the backdrop of post-war Japan.", + "fresh": True, + }, + { + "movie_slug": "godzilla_minus_one", + "critic": "Brian Tallerico", + "publication": "RogerEbert.com", + "text": "Takashi Yamazaki strips Godzilla back to its roots and finds something genuinely moving and terrifying.", + "fresh": True, + }, + { + "movie_slug": "godzilla_minus_one", + "critic": "Peter Bradshaw", + "publication": "The Guardian", + "text": "A monster movie with a heart. Godzilla Minus One earns its emotional beats while delivering spectacular kaiju action.", + "fresh": True, + }, + { + "movie_slug": "godzilla_minus_one", + "critic": "Clarisse Loughrey", + "publication": "The Independent", + "text": "This is what happens when you give Godzilla a story worth caring about. A remarkable achievement.", + "fresh": True, + }, + { + "movie_slug": "the_substance", + "critic": "David Ehrlich", + "publication": "IndieWire", + "text": "Coralie Fargeat's body horror satire is a visceral, uncompromising assault on Hollywood's obsession with youth and beauty.", + "fresh": True, + }, + { + "movie_slug": "the_substance", + "critic": "Peter Bradshaw", + "publication": "The Guardian", + "text": "Demi Moore gives a fearless performance in this outrageous, go-for-broke horror film about aging in Hollywood.", + "fresh": True, + }, + { + "movie_slug": "the_substance", + "critic": "Robbie Collin", + "publication": "The Telegraph", + "text": "The Substance is gloriously disgusting and disturbingly smart \u2014 a Cronenbergian nightmare with real bite.", + "fresh": True, + }, + { + "movie_slug": "the_substance", + "critic": "Brian Tallerico", + "publication": "RogerEbert.com", + "text": "Bold, audacious, and utterly fearless filmmaking. Fargeat establishes herself as a major genre voice.", + "fresh": True, + }, + { + "movie_slug": "shrek", + "critic": "Roger Ebert", + "publication": "Chicago Sun-Times", + "text": "Shrek is jolly and wicked, filled with sly in-jokes and pop culture references. It's a delight.", + "fresh": True, + }, + { + "movie_slug": "shrek", + "critic": "A.O. Scott", + "publication": "New York Times", + "text": "An animated fairy tale that has fun poking at fairy tales themselves, with terrific voice work from Mike Myers and Eddie Murphy.", + "fresh": True, + }, + { + "movie_slug": "shrek", + "critic": "Peter Travers", + "publication": "Rolling Stone", + "text": "Shrek is an animated miracle \u2014 funny, hip, and heartwarming in ways that sneak up on you.", + "fresh": True, + }, + { + "movie_slug": "shrek", + "critic": "Todd McCarthy", + "publication": "Variety", + "text": "DreamWorks has found its winning formula: irreverence, humor, and genuine heart.", + "fresh": True, + }, + { + "movie_slug": "superman_2025", + "critic": "Brian Tallerico", + "publication": "RogerEbert.com", + "text": "James Gunn's Superman is a hopeful, earnest, and deeply felt origin story that restores the Man of Steel to his rightful place.", + "fresh": True, + }, + { + "movie_slug": "superman_2025", + "critic": "David Ehrlich", + "publication": "IndieWire", + "text": "David Corenswet IS Superman. Gunn crafts a film that celebrates heroism without irony or cynicism.", + "fresh": True, + }, + { + "movie_slug": "superman_2025", + "critic": "Peter Bradshaw", + "publication": "The Guardian", + "text": "A refreshingly optimistic superhero film that reminds us what Superman is supposed to stand for.", + "fresh": True, + }, + { + "movie_slug": "superman_2025", + "critic": "Clarisse Loughrey", + "publication": "The Independent", + "text": "Superman soars on the strength of its cast and James Gunn's genuine love for the character.", + "fresh": True, + }, + { + "movie_slug": "the_fantastic_four_first_steps", + "critic": "Brian Tallerico", + "publication": "RogerEbert.com", + "text": "Pedro Pascal and Vanessa Kirby bring warmth and gravitas to Marvel's First Family in this retro-styled adventure.", + "fresh": True, + }, + { + "movie_slug": "the_fantastic_four_first_steps", + "critic": "David Ehrlich", + "publication": "IndieWire", + "text": "The retro-futuristic aesthetic is a refreshing departure for the MCU, though the story sometimes feels stretched thin.", + "fresh": True, + }, + { + "movie_slug": "the_fantastic_four_first_steps", + "critic": "Clarisse Loughrey", + "publication": "The Independent", + "text": "A charming, if uneven, introduction to the Fantastic Four that benefits enormously from its stellar cast.", + "fresh": True, + }, + { + "movie_slug": "blackberry", + "critic": "David Ehrlich", + "publication": "IndieWire", + "text": "A crackling, furiously entertaining tech drama powered by Glenn Howerton's ferocious performance.", + "fresh": True, + }, + { + "movie_slug": "blackberry", + "critic": "Brian Tallerico", + "publication": "RogerEbert.com", + "text": "BlackBerry captures the manic energy of tech innovation with wit and precision. A thoroughly entertaining rise-and-fall story.", + "fresh": True, + }, + { + "movie_slug": "blackberry", + "critic": "Peter Bradshaw", + "publication": "The Guardian", + "text": "A wickedly funny portrait of ambition and hubris in the tech world. The ensemble cast is superb.", + "fresh": True, + }, + { + "movie_slug": "blackberry", + "critic": "Robbie Collin", + "publication": "The Telegraph", + "text": "Matt Johnson directs with restless energy and dark humor. BlackBerry is the tech biopic we needed.", + "fresh": True, + }, + { + "movie_slug": "anaconda_2025", + "critic": "Brian Tallerico", + "publication": "RogerEbert.com", + "text": "Paul Rudd and Jack Black have infectious chemistry in this surprisingly funny meta-comedy that knows exactly what it is.", + "fresh": True, + }, + { + "movie_slug": "anaconda_2025", + "critic": "Peter Bradshaw", + "publication": "The Guardian", + "text": "A self-aware creature feature comedy that works precisely because it never takes itself seriously.", + "fresh": True, + }, + { + "movie_slug": "anaconda_2025", + "critic": "Clarisse Loughrey", + "publication": "The Independent", + "text": "Anaconda is exactly the kind of silly, fun movie we need \u2014 a midlife crisis comedy with actual snakes.", + "fresh": True, + }, + { + "movie_slug": "lilo_and_stitch", + "critic": "Roger Ebert", + "publication": "Chicago Sun-Times", + "text": "Lilo & Stitch has a sly sophistication and a wicked charm that puts it in the company of the best Disney films.", + "fresh": True, + }, + { + "movie_slug": "lilo_and_stitch", + "critic": "A.O. Scott", + "publication": "New York Times", + "text": "A bright, witty, and touching animated film that celebrates the Hawaiian concept of ohana.", + "fresh": True, + }, + { + "movie_slug": "lilo_and_stitch", + "critic": "Peter Travers", + "publication": "Rolling Stone", + "text": "Disney animation at its most warm and inventive. Stitch is an instant classic character.", + "fresh": True, + }, + { + "movie_slug": "avatar_fire_and_ash", + "critic": "Brian Tallerico", + "publication": "RogerEbert.com", + "text": "James Cameron continues to push the boundaries of visual filmmaking, even if the story treads familiar ground.", + "fresh": True, + }, + { + "movie_slug": "avatar_fire_and_ash", + "critic": "David Ehrlich", + "publication": "IndieWire", + "text": "Fire and Ash expands Pandora's mythology while delivering the immersive spectacle Cameron is known for.", + "fresh": True, + }, + { + "movie_slug": "avatar_fire_and_ash", + "critic": "Peter Bradshaw", + "publication": "The Guardian", + "text": "Cameron's technical mastery is undeniable. Whether the story matches the visuals is another question.", + "fresh": True, + }, + { + "movie_slug": "avatar_fire_and_ash", + "critic": "Robbie Collin", + "publication": "The Telegraph", + "text": "A visual feast that immerses you completely in Pandora, with action sequences that rival anything Cameron has done before.", + "fresh": True, + }, + { + "movie_slug": "oddity", + "critic": "David Ehrlich", + "publication": "IndieWire", + "text": "A masterfully crafted Irish horror film that builds dread with patience and intelligence.", + "fresh": True, + }, + { + "movie_slug": "oddity", + "critic": "Brian Tallerico", + "publication": "RogerEbert.com", + "text": "Oddity is the kind of slow-burn horror that rewards attention \u2014 creepy, clever, and deeply unsettling.", + "fresh": True, + }, + { + "movie_slug": "oddity", + "critic": "Peter Bradshaw", + "publication": "The Guardian", + "text": "A lean, effective horror film that gets under your skin with its atmosphere of creeping menace.", + "fresh": True, + }, + {"movie_slug": "top_gun", "critic": "David Denby", "publication": "New York Magazine/Vulture", "text": "Cut off from emotion and meaning, this kind of work has a hollow, nervous weightlessness to it -- decadence without the courage of true decadence.", "fresh": False}, + {"movie_slug": "top_gun", "critic": "Michael Healy", "publication": "Denver Post", "text": "Director Tony Scott gives the production a nicely polished sheen, although some of the scenes look and sound too much like a combination of Navy recruiting commercials and MTV videos.", "fresh": False}, + {"movie_slug": "top_gun", "critic": "AP Staff", "publication": "Associated Press", "text": "The Paramount release has everything today's audience might demand, except the spontaneous energy of those air movies of the past.", "fresh": False}, + {"movie_slug": "top_gun", "critic": "Fred Topel", "publication": "United Press International", "text": "Forty years later, its trademark swagger, flight footage and soundtrack inspire nostalgia for movies that delivered such total packages.", "fresh": True}, + {"movie_slug": "top_gun", "critic": "Joe Baltake", "publication": "Knight Ridder News Service", "text": "This is the kind of macho soap opera in which the heroes, as well as the villains, strut around with an attitude problem, forever looking cool and going nose to nose as they challenge and taunt one another.", "fresh": False}, + {"movie_slug": "green_book", "critic": "Ben Sachs", "publication": "Chicago Reader", "text": "Yet Farrelly and his cast deliver the cliches with such sincerity and good cheer that the film won me over anyway.", "fresh": True}, + {"movie_slug": "green_book", "critic": "Matthew Rozsa", "publication": "Salon.com", "text": "An enthusiastic and well-intentioned but ultimately clichéd approach is abundantly evident in the final product.", "fresh": False}, + {"movie_slug": "green_book", "critic": "Claudia Puig", "publication": "The Asahi Shimbun GLOBE (Japan)", "text": "Green Book is a glib, caricatured and insensitive movie that reduces an enduring, dangerous societal problem to a calculated fable with a happy ending.", "fresh": False}, + {"movie_slug": "green_book", "critic": "Ankit Ojha", "publication": "Cinema Elite", "text": "The more you think about it in retrospect, the more chances you have of getting madder.", "fresh": False}, + {"movie_slug": "green_book", "critic": "Ryan McQuade", "publication": "InSession Film", "text": "The score and editing are not memorable at all, with some scenes just feeling out of place, and a soundtrack that feels too on the nose at times.", "fresh": False}, + {"movie_slug": "the_martian", "critic": "Aramide Tinubu", "publication": "Shadow and Act", "text": "The Martian is a film about human error, the will to survive, and the responsibility that we have as human beings, not just to the work that we dedicate our lives to, but to one another as people.", "fresh": True}, + {"movie_slug": "the_martian", "critic": "Dwight Brown", "publication": "National Newspaper Publishers Association", "text": "A half-hour into The Martian any seasoned moviegoer can figure out where the plotline in this feel-good movie has to go. That's a shame and the film's biggest transgression.", "fresh": False}, + {"movie_slug": "the_martian", "critic": "Kristen Yoonsoo Kim", "publication": "Complex", "text": "Despite being marketed under the mainstream bait of a 'space movie,' The Martian is, more than anything, a love letter to science, without ever feeling like a boring textbook.", "fresh": True}, + {"movie_slug": "the_martian", "critic": "Matt Brunson", "publication": "Film Frenzy", "text": "The Martian will disappoint only those who were waiting for Marvin to show up at some point to wreak looney havoc.", "fresh": True}, + {"movie_slug": "the_martian", "critic": "Don Shanahan", "publication": "Every Movie Has a Lesson", "text": "The overall rooting hope to beat death swells in the right places alongside the palpable moments of suspense, awe, and excitement.", "fresh": True}, + {"movie_slug": "star_wars_the_last_jedi", "critic": "Kambole Campbell", "publication": "One Room With A View", "text": "It's the one we've been waiting for.", "fresh": True}, + {"movie_slug": "star_wars_the_last_jedi", "critic": "Matthew Rozsa", "publication": "Salon.com", "text": "'Star Wars' is not 'Breaking Bad,' and the same narrative tricks that worked for the latter feel jarringly out of place in the former.", "fresh": False}, + {"movie_slug": "star_wars_the_last_jedi", "critic": "Matt Brunson", "publication": "Film Frenzy", "text": "The Last Jedi is very much its own entity, exploring new routes as it teases out themes that have always been present in the Skywalker saga.", "fresh": True}, + {"movie_slug": "star_wars_the_last_jedi", "critic": "Don Shanahan", "publication": "Every Movie Has a Lesson", "text": "Star Wars: The Last Jedi takes its mountain of hype and shoves it away to make something nonconformist and wholly compelling in quite possibly the richest and most expressive entry of the storied franchise.", "fresh": True}, + {"movie_slug": "star_wars_the_last_jedi", "critic": "Calum Cooper", "publication": "Movies We Texted About", "text": "The Last Jedi is not just a great Star Wars film – it rivals the daring, innovation and thematic richness of even the original trilogy.", "fresh": True}, + {"movie_slug": "star_wars_the_rise_of_skywalker", "critic": "Christy Lemire", "publication": "Christy Lemire", "text": "It is trying to accomplish a lot, because it has to tie up every plotline. It has to involve every character. It has to take you to every planet... And so, in trying to cram in all of that, it feels very cursory and very rushed.", "fresh": False}, + {"movie_slug": "star_wars_the_rise_of_skywalker", "critic": "Angie Han", "publication": "Mashable", "text": "The real Leia, the one we fell in love with, lives on inside us as she always has. She still inspires us, amuses us, moves us.", "fresh": True}, + {"movie_slug": "star_wars_the_rise_of_skywalker", "critic": "Unknown", "publication": "Chesapeake Family Magazine", "text": "A sizable amount of the narrative of The Rise of Skywalker is spent specifically undoing what happened in The Last Jedi, and the result is a film that lacks forward momentum.", "fresh": False}, + {"movie_slug": "star_wars_the_rise_of_skywalker", "critic": "Matt Brunson", "publication": "Film Frenzy", "text": "The nitpicks are small compared to what the film gets right.", "fresh": True}, + {"movie_slug": "star_wars_the_rise_of_skywalker", "critic": "Joonatan Itkonen", "publication": "Region Free", "text": "THE RISE OF SKYWALKER is a film devoid of progress because progress requires looking ahead. Instead, it gazes longingly into the past, unable to process what to learn from it.", "fresh": False}, + {"movie_slug": "star_wars_episode_iii_revenge_of_the_sith", "critic": "Unknown", "publication": "Filmspotting", "text": "Is it a great Star Wars movie? It's certainly the greatest prequel.", "fresh": True}, + {"movie_slug": "star_wars_episode_iii_revenge_of_the_sith", "critic": "Bilge Ebiri", "publication": "New York Magazine/Vulture", "text": "The saddest and sincerest of all the Star Wars epics, the mad work of a man desperately trying to understand his own creation.", "fresh": True}, + {"movie_slug": "star_wars_episode_iii_revenge_of_the_sith", "critic": "Mark Kermode", "publication": "Kermode and Mayo's Take (YouTube)", "text": "I don't think George Lucas is a great director. I think he's a poor script writer, although he's a good plotter.", "fresh": False}, + {"movie_slug": "star_wars_episode_iii_revenge_of_the_sith", "critic": "Charlotte Simmons", "publication": "The Treatment (Substack)", "text": "What I find so fascinating about Revenge of the Sith is that it offers us a meditation on how these authoritarian regimes well and truly begin — not politically, but on a human level.", "fresh": True}, + {"movie_slug": "star_wars_episode_iii_revenge_of_the_sith", "critic": "Wesley Lovell", "publication": "Cinema Sight", "text": "This film finds its footing, giving the audience what it desires, a picture full of winks and nods and which effectively ties in all the elements of the first Star Wars trilogy.", "fresh": True}, + {"movie_slug": "the_hunger_games_the_ballad_of_songbirds_and_snakes", "critic": "Elizabeth Weitzman", "publication": "Time Out", "text": "The action scenes remain well-shot and tightly edited, and even without the provocative political energy of the Katniss years, the cultural parallels between Panem's world and ours retain their unsettling power.", "fresh": True}, + {"movie_slug": "the_hunger_games_the_ballad_of_songbirds_and_snakes", "critic": "Valerie Complex", "publication": "Valerie Complex", "text": "The Hunger Games: The Ballad of Songbirds & Snakes is a film of contrasts — visually stunning yet narratively uneven.", "fresh": False}, + {"movie_slug": "the_hunger_games_the_ballad_of_songbirds_and_snakes", "critic": "Tim Cogshell", "publication": "FilmWeek (LAist)", "text": "I do not buy it philosophically for one second.", "fresh": False}, + {"movie_slug": "the_hunger_games_the_ballad_of_songbirds_and_snakes", "critic": "Kyle Amato", "publication": "Boston Hassle", "text": "Songbirds & Snakes deserves to do well, a brutal surprise for a complacent audience.", "fresh": True}, + {"movie_slug": "the_hunger_games_the_ballad_of_songbirds_and_snakes", "critic": "Shade Studios", "publication": "Shade Studios", "text": "The film is broken out into three chapters, even if the first chapter feels like there were three crammed into it. There's a bit too much going on.", "fresh": False}, + {"movie_slug": "1071806-independence_day", "critic": "Unknown", "publication": "Unknown", "text": "A sci-fi story constellation of the brightest star elements. With German director Emmerich at the helm, Independence Day soars as filmic uber-craft.", "fresh": True}, + {"movie_slug": "1071806-independence_day", "critic": "Jami Bernard", "publication": "Unknown", "text": "'ID4' presses all the current hot buttons with great efficiency which will make it hard to keep in mind that just because a movie kicks major butt doesn't mean it's good.", "fresh": False}, + {"movie_slug": "1071806-independence_day", "critic": "Matt Brunson", "publication": "Film Frenzy", "text": "Borrowing from seemingly every sci-fi film this side of Santa Claus Conquers the Martians, the picture somehow manages to recycle these reference points and come up with something that works on its own terms.", "fresh": True}, + {"movie_slug": "1071806-independence_day", "critic": "Patrick Cavanaugh", "publication": "The Wolfman Cometh", "text": "A defining experience for the '90s and set the formula for summer blockbusters, blending together bombastical action, heart, and humor.", "fresh": True}, + {"movie_slug": "1071806-independence_day", "critic": "Alison Gillmor", "publication": "Winnipeg Free Press", "text": "Disaster master Roland Emmerich prefers his aliens hostile, hideous and prone to blowing up recognizable national landmarks.", "fresh": False}, + {"movie_slug": "godzilla_x_kong_the_new_empire", "critic": "Kim Newman", "publication": "Sight & Sound", "text": "This spectacle fully embraces the toddler-tantrum-on-a-colossal-scale aesthetic and is winning because of rather than despite its essential goofiness.", "fresh": True}, + {"movie_slug": "godzilla_x_kong_the_new_empire", "critic": "Mark Kermode", "publication": "Kermode and Mayo's Take (YouTube)", "text": "The script, there is a plot but it's preposterous tosh and it makes no sense, and it doesn't even try to make sense... Stuff. ROAR.", "fresh": False}, + {"movie_slug": "godzilla_x_kong_the_new_empire", "critic": "Sara Michelle Fetters", "publication": "MovieFreak.com", "text": "While Godzilla x Kong: The New Empire did on occasion test my patience, the overall ride does remain a fun one.", "fresh": True}, + {"movie_slug": "godzilla_x_kong_the_new_empire", "critic": "Stephen Garrett", "publication": "Book & Film Globe", "text": "This direct sequel is too unfocused, too busy, too preoccupied with justifying the silly work of getting Godzilla and Kong to team up together like a klugey classic-rock supergroup.", "fresh": False}, + {"movie_slug": "godzilla_x_kong_the_new_empire", "critic": "Gavin Spoors", "publication": "FILMHOUNDS Magazine", "text": "Godzilla x Kong is a MonsterVerse film through and through; pairing brilliantly silly Titan fights with subpar human narratives.", "fresh": True}, + {"movie_slug": "the_housemaid_2025", "critic": "Keith Uhlich", "publication": "Unknown", "text": "It's Feig attempting Park Chan-wook's Gone Girl and…yeah, I'm good, m'guy.", "fresh": False}, + {"movie_slug": "the_housemaid_2025", "critic": "Stephen Romei", "publication": "The Australian", "text": "It goes to places that might make Hannibal Lecter blink. The darker it becomes, the more implausible it is, but it's held together by impressive performances.", "fresh": True}, + {"movie_slug": "the_housemaid_2025", "critic": "Sara Michelle Fetters", "publication": "MovieFreak.com", "text": "It's a goofily inspired romp through sex, violence, gaslighting, female empowerment, and bloody revenge, its core events centered around two titanically exuberant performances.", "fresh": True}, + {"movie_slug": "the_housemaid_2025", "critic": "Tim Miller", "publication": "Cape Cod Wave Magazine", "text": "You watch it in a kind of bafflement -- Is this some devilish spoof of steamy thrillers or just another awful example of one? -- and at some point realize that, whatever it is, it's amusing.", "fresh": True}, + {"movie_slug": "the_housemaid_2025", "critic": "Graeme Tuckett", "publication": "The Post NZ", "text": "Even though it ticks a few boxes and Seyfried is trying her damndest, this is too long-winded and flabbily assembled to ever join the classics of the genre.", "fresh": False}, + {"movie_slug": "ready_or_not_2019", "critic": "Cody Corrall", "publication": "Chicago Reader", "text": "Weaving comes alive as a hilarious and deeply macabre play on the 'final girl' archetype, and it's nothing short of cathartic to cheer her on.", "fresh": True}, + {"movie_slug": "ready_or_not_2019", "critic": "Wenlei Ma", "publication": "News.com.au", "text": "It's wildly entertaining and at a tight 90 minutes, it crackles with energy, never letting your attention waver.", "fresh": True}, + {"movie_slug": "ready_or_not_2019", "critic": "Unknown", "publication": "The Australian", "text": "Even by its own humble standards the plot is poorly worked out and the dialogue is wretched.", "fresh": False}, + {"movie_slug": "ready_or_not_2019", "critic": "Walter Chaw", "publication": "Film Freak Central", "text": "The pleasures of Ready or Not include Weaving's performance, the wittiness of the script, and the clockwork pacing.", "fresh": True}, + {"movie_slug": "ready_or_not_2019", "critic": "Julian Singleton", "publication": "Cinapse", "text": "By the end of Ready or Not, each character feels fleshed out, the rituals feel both insane and logical, and the whole experience feels like a blood-soaked roller coaster ride.", "fresh": True}, + {"movie_slug": "companion_2025", "critic": "Tara Brady", "publication": "Irish Times", "text": "Entertainingly punctuated by horror pyrotechnics and quick reprogrammings.", "fresh": True}, + {"movie_slug": "companion_2025", "critic": "Tim Cogshell", "publication": "FilmWeek (LAist)", "text": "Funny, effective, and very well executed by these actors.", "fresh": True}, + {"movie_slug": "companion_2025", "critic": "Stephanie Bunbury", "publication": "Financial Times", "text": "The colours are Barbie-bright; writer-director Drew Hancock is similarly aiming to give us sexual politics in a popcorn box, but with added stage blood.", "fresh": True}, + {"movie_slug": "companion_2025", "critic": "Jon Winkler", "publication": "InBetweenDrafts", "text": "The good news is that Companion hits more than it misses, and even its 'misses' are just missed opportunities rather than eye-rolling miscalculations.", "fresh": True}, + {"movie_slug": "companion_2025", "critic": "Vera Wylde", "publication": "Council of Geeks", "text": "It's a smart script in a very non-show-off-ish way.", "fresh": True}, + {"movie_slug": "the_life_of_chuck", "critic": "Roger Luckhurst", "publication": "Sight & Sound", "text": "It is more a redemptive fantasy, straining to find rueful acceptance of life's losses in the language of the cosmic sublime.", "fresh": True}, + {"movie_slug": "the_life_of_chuck", "critic": "Wendy Ide", "publication": "Observer (UK)", "text": "Clever conceits all too easily tip over into synthetic contrivance. If The Life Of Chuck just about manages to stay on the right side of that tricky balance, it's largely thanks to solid work from the cast.", "fresh": True}, + {"movie_slug": "the_life_of_chuck", "critic": "Mark Kermode", "publication": "Kermode and Mayo's Take (YouTube)", "text": "It's a musing film and an amusing film, but it's also beautifully poignant and profound.", "fresh": True}, + {"movie_slug": "the_life_of_chuck", "critic": "Sharai Bohannon", "publication": "A Nightmare On Fierce Street Podcast", "text": "This is Mike Flanagan at his best.", "fresh": True}, + {"movie_slug": "the_life_of_chuck", "critic": "Jared Mobarak", "publication": "Hey, Have You Seen ...?", "text": "The Life of Chuck truly is a balm for the soul that becomes a little game to catch the references amidst Nick Offerman's fun narration and Flanagan's brightly surreal imagery.", "fresh": True}, + {"movie_slug": "frankenstein_2025", "critic": "Ty Burr", "publication": "Ty Burr's Watch List (Substack)", "text": "I haven't been truly sold on Elordi until now, but underneath the heavy prosthetics beams a battered nobility that's unique in the many film iterations of this property.", "fresh": True}, + {"movie_slug": "frankenstein_2025", "critic": "Dwight Brown", "publication": "DwightBrownInk.com", "text": "In the end, why is such an overwhelming production an underwhelming experience?", "fresh": False}, + {"movie_slug": "frankenstein_2025", "critic": "Unknown", "publication": "The Atlantic", "text": "What could have been the kind of bittersweet monster movie del Toro has excelled at instead feels shackled by its opulence, trudging through a two-and-a-half-hour run time.", "fresh": False}, + {"movie_slug": "frankenstein_2025", "critic": "A.S. Hamrah", "publication": "n+1", "text": "The film looks stagey and snow-globey and its green color palette unfortunately called to mind Wicked.", "fresh": False}, + {"movie_slug": "frankenstein_2025", "critic": "Carla Hay", "publication": "Culture Mix", "text": "This version of Frankenstein is a bit too long, and Oscar Isaac's performance is a little too hammy. However, the movie's technical mastery is stunning, and Jacob Elordi's noteworthy performance is the film's soul.", "fresh": True}, + {"movie_slug": "wake_up_dead_man_a_knives_out_mystery", "critic": "Nell Minow", "publication": "Movie Mom", "text": "A twisty plot, a knock-out cast, a dash of commentary about contemporary life and searching for meaning. Josh O'Conner continues to impress with his exceptional range.", "fresh": True}, + {"movie_slug": "wake_up_dead_man_a_knives_out_mystery", "critic": "Tim Cogshell", "publication": "FilmWeek (LAist)", "text": "This is funnier than the first two put together.", "fresh": True}, + {"movie_slug": "wake_up_dead_man_a_knives_out_mystery", "critic": "Donald Clarke", "publication": "Irish Times", "text": "A huge-budget variation on Sunday-evening mystery telly. Though one or two might wonder if the streamer could have got three or four Poirots and a Marple for the same money.", "fresh": True}, + {"movie_slug": "wake_up_dead_man_a_knives_out_mystery", "critic": "James Croot", "publication": "The Post NZ", "text": "The ensemble is superb, with Close and O'Connor the standouts, and although Blanc is late to the party, he's probably at his best and most thought-provoking here.", "fresh": True}, + {"movie_slug": "wake_up_dead_man_a_knives_out_mystery", "critic": "Lee Zumpe", "publication": "Tampa Bay Newspapers", "text": "Johnson has mastered this formula without falling victim to repetition and routine.", "fresh": True}, + {"movie_slug": "project_hail_mary", "critic": "Tim Cogshell", "publication": "FilmWeek (LAist)", "text": "Everybody's going to love this movie.", "fresh": True}, + {"movie_slug": "project_hail_mary", "critic": "Sandra Hall", "publication": "Sydney Morning Herald", "text": "At 2½ hours plus, it also has its longueurs but there are some spectacularly beautiful moments and Gosling makes an engaging companion.", "fresh": True}, + {"movie_slug": "project_hail_mary", "critic": "Dwight Brown", "publication": "DwightBrownInk.com", "text": "Praise Gosling for carrying the film and taking inquisitive folks along with him.", "fresh": True}, + {"movie_slug": "project_hail_mary", "critic": "Laura Hiros", "publication": "Rincón de cine", "text": "Despite its nearly two-and-a-half-hour runtime, this story of friendship and science fiction is truly a unique adventure.", "fresh": True}, + {"movie_slug": "project_hail_mary", "critic": "Unknown", "publication": "The Pitch", "text": "The film feels like a delightful throwback. From writing to directing to casting, Project Hail Mary hits the right nail squarely on the head.", "fresh": True}, + {"movie_slug": "the_running_man_2025", "critic": "Stephen Romei", "publication": "The Australian", "text": "It's entertaining enough but a bit empty.", "fresh": False}, + {"movie_slug": "the_running_man_2025", "critic": "Dwight Brown", "publication": "DwightBrownInk.com", "text": "The filmmakers should be grateful that Powell is running as fast as he can while carrying their dead weight.", "fresh": False}, + {"movie_slug": "the_running_man_2025", "critic": "Unknown", "publication": "Filmspotting", "text": "Wright juggles dystopian thrills, satire, sentiment, and slapstick, but never nails any of them. The result is a genre mashup that feels more muddled than masterful.", "fresh": False}, + {"movie_slug": "the_running_man_2025", "critic": "Matt Brunson", "publication": "Film Frenzy", "text": "This new version is better paced and better plotted but not necessarily a better movie.", "fresh": True}, + {"movie_slug": "the_running_man_2025", "critic": "Graeme Tuckett", "publication": "The Post NZ", "text": "This is an ambitious spectacle, with a top-drawer cast and a budget that could have kept most countries' film industries afloat for a year. And yet it stumbles and falls flat.", "fresh": False}, + {"movie_slug": "train_dreams", "critic": "John Nugent", "publication": "Empire Magazine", "text": "Haunting, serenely composed and beautiful, this is an elegy for a life and a country that America used to be.", "fresh": True}, + {"movie_slug": "train_dreams", "critic": "Unknown", "publication": "Filmspotting", "text": "Bentley renders Idaho and this way of life around the turn of the 20th century in such a mystical and mysterious way, it almost seems like science fiction.", "fresh": True}, + {"movie_slug": "train_dreams", "critic": "Rebecca Onion", "publication": "Slate", "text": "Beautiful, moving, and thoughtful.", "fresh": True}, + {"movie_slug": "train_dreams", "critic": "Rebecca Harrison", "publication": "Writing on Reels", "text": "Through the tale of one quietly lived life, it asks questions about nature, conflict, history, work, wisdom, aging, change – and what it all means.", "fresh": True}, + {"movie_slug": "train_dreams", "critic": "James Croot", "publication": "The Post NZ", "text": "The subject of an eight-figure deal after its debut at Sundance, it's easy to see what attracted Netflix to Train Dreams – this is cinematic storytelling at its finest.", "fresh": True}, + {"movie_slug": "peaky_blinders_the_immortal_man", "critic": "Jack Hamilton", "publication": "Slate", "text": "Ultimately The Immortal Man made me acutely aware of everything I loved and miss about the original series; that may sound like a backhanded compliment, but there are far worse things a movie can do.", "fresh": True}, + {"movie_slug": "peaky_blinders_the_immortal_man", "critic": "Craig Mathieson", "publication": "The Age (Australia)", "text": "This feature-length continuation looks marvellous...But the storytelling from creator Steven Knight is inconsistent, and it adds little to where the show finished in 2022.", "fresh": False}, + {"movie_slug": "peaky_blinders_the_immortal_man", "critic": "Lacy Baugher", "publication": "RogerEbert.com", "text": "Somehow, Murphy's still managing to find new depth and emotional layers in a character that, by all rights, should have become a caricature a long time ago.", "fresh": True}, + {"movie_slug": "peaky_blinders_the_immortal_man", "critic": "Shaurya Chawla", "publication": "InSession Film", "text": "By the time the credits roll, the final movie is a very satisfying and emotionally powerful conclusion to Tommy Shelby and Cillian Murphy's extraordinary run.", "fresh": True}, + {"movie_slug": "peaky_blinders_the_immortal_man", "critic": "Kristen Maldonado", "publication": "Pop Culture Planet", "text": "There's stunning cinematography, jaw-dropping moments, and the booming rock soundtrack the Peaky Blinders franchise is known for.", "fresh": True}, + {"movie_slug": "mortal_kombat_2021", "critic": "Stephen A. Russell", "publication": "Time Out", "text": "Leaning all into a foul-mouthed Aussie stereotype, Josh Lawson makes Hugh Jackman's Wolverine seem terribly polite.", "fresh": True}, + {"movie_slug": "mortal_kombat_2021", "critic": "Mark Kermode", "publication": "Kermode & Mayo's Film Review", "text": "It could have been much worse. I went in with particularly low expectations but kind of enjoyed it. The thing I did enjoy most was the gratuitous gore.", "fresh": True}, + {"movie_slug": "mortal_kombat_2021", "critic": "Charlotte O'Sullivan", "publication": "Unknown", "text": "It's ultimately a disappointment because Cole's emotional journey is uninvolving.", "fresh": False}, + {"movie_slug": "mortal_kombat_2021", "critic": "Pramit Chatterjee", "publication": "Mashable (India)", "text": "A lot of people have put in a lot of good effort into this movie. But as a whole, Mortal Kombat is bleh!", "fresh": False}, + {"movie_slug": "mortal_kombat_2021", "critic": "Sarah Vincent", "publication": "Unknown", "text": "Mortal Kombat (2021) is the equivalent of making a film called The Olympics and only showed the qualifying rounds before actual Olympians are appointed.", "fresh": False}, + {"movie_slug": "jurassic_world_rebirth", "critic": "Leigh Singer", "publication": "Sight & Sound", "text": "Connective tissue between CGI-heavy set-pieces is perfunctory at best... David Koepp's script bogged down with flat humour, paper-thin characters and plot holes so vast a T-Rex could amble through them.", "fresh": False}, + {"movie_slug": "jurassic_world_rebirth", "critic": "Peter Travers", "publication": "The Travers Take", "text": "It's sloppy, sappy, frenetic, charmless, plotless, derivative and devoid of surprise and characters to give a damn about, but oh those dinosaurs!", "fresh": False}, + {"movie_slug": "jurassic_world_rebirth", "critic": "Wendy Ide", "publication": "Observer (UK)", "text": "The result is not quite an extinction event-level disaster for the franchise, but neither is it a strong argument for its continuation.", "fresh": False}, + {"movie_slug": "jurassic_world_rebirth", "critic": "Jared Mobarak", "publication": "Hey, Have You Seen ...?", "text": "Less a Jurassic Park film than a straight survival film wearing Jurassic Park skin, Rebirth leans into the suspense and hopes its verbosely generic plot doesn't bore audiences to death.", "fresh": False}, + {"movie_slug": "jurassic_world_rebirth", "critic": "Víctor López G.", "publication": "Espinof", "text": "It makes clear that experiments aimed at appealing to what executives consider 'the audience' are usually treacherous ground, at least from a strictly creative standpoint.", "fresh": False}, + {"movie_slug": "predator_badlands", "critic": "Kyle Logan", "publication": "Chicago Reader", "text": "Bursting with astonishing blends of practical and digital effects, thrilling action, beautifully shot vistas, and equally heartfelt and humorous character dynamics.", "fresh": True}, + {"movie_slug": "predator_badlands", "critic": "Peter Travers", "publication": "The Travers Take", "text": "Elle Fanning does the monster mash and brings audiences back to theaters in droves by lacing the action with laughs.", "fresh": True}, + {"movie_slug": "predator_badlands", "critic": "Rebecca Onion", "publication": "Slate", "text": "Every franchise needs to find a way to mix things up, and Trachtenberg has done it.", "fresh": True}, + {"movie_slug": "predator_badlands", "critic": "Rachel Shatto", "publication": "Bloody Good Horror (Podcast)", "text": "Dan Trachtenberg again proves he knows how to balance reverence for the lore with not being afraid to take a big swing and give us something new.", "fresh": True}, + {"movie_slug": "predator_badlands", "critic": "Lee Zumpe", "publication": "Tampa Bay Newspapers", "text": "Predator: Badlands is a relentless high-energy, action-packed sci-fi thriller that expands franchise mythology and isn't afraid to take narrative risks.", "fresh": True}, + {"movie_slug": "scream_7", "critic": "Larushka Ivan-Zadeh", "publication": "metro.co.uk", "text": "It's a tough call to reinvent yourself afresh after 30 years, but this is a definite case of Could Try Harder. Not a totally horror show – just a bit of a snore.", "fresh": False}, + {"movie_slug": "scream_7", "critic": "Kimber Myers", "publication": "Crooked Marquee", "text": "Scream 7 lacks any semblance of its energy on either the horror or the comedy side of things. It's not scary, and it's not that funny.", "fresh": False}, + {"movie_slug": "scream_7", "critic": "Kyle Smith", "publication": "Wall Street Journal", "text": "If there's a single witty idea in the entire two-hour slog, I missed it.", "fresh": False}, + {"movie_slug": "scream_7", "critic": "Jeffrey Lyles", "publication": "Lyles' Movie Files", "text": "Scream 7 holds the dubious distinction of being the first bad installment of the franchise. The main culprit is a disappointing lack of innovation.", "fresh": False}, + {"movie_slug": "scream_7", "critic": "Jason Shawhan", "publication": "Nashville Scene", "text": "Is this a good Scream sequel? Yeah, it's better than it has any right to be.", "fresh": True}, + {"movie_slug": "merrily_we_roll_along", "critic": "Robert Abele", "publication": "Los Angeles Times", "text": "There are lessons to be learned from the modest goals of this Merrily We Roll Along: to bring a movie audience to the life of the stage.", "fresh": True}, + {"movie_slug": "merrily_we_roll_along", "critic": "Bob Mondello", "publication": "NPR", "text": "Yes, it feels stagey -- you were expecting realism from a musical? -- but the score is breathtaking, the lyrics scintillating, the emotions true.", "fresh": True}, + {"movie_slug": "merrily_we_roll_along", "critic": "William Bibbiani", "publication": "TheWrap", "text": "Despite one wonky misstep, it captures some real magic.", "fresh": True}, + {"movie_slug": "merrily_we_roll_along", "critic": "John Paul King", "publication": "Washington Blade", "text": "Can't think of another Sondheim screen adaptation that comes close to this one for embracing the raw truth that was always lurking just under the clever lyrics.", "fresh": True}, + {"movie_slug": "merrily_we_roll_along", "critic": "Sean P. Means", "publication": "The Movie Cricket", "text": "All of it is delivered through some of Sondheim's best compositions, with complex rhyme schemes and intelligent wordplay.", "fresh": True}, + {"movie_slug": "weapons", "critic": "Kim Newman", "publication": "Sight & Sound", "text": "Weapons is nearly an hour longer than the average creepy movie, but Cregger's mosaic approach justifies extra running time as he asks us to put pieces together for ourselves while delivering jolts.", "fresh": True}, + {"movie_slug": "weapons", "critic": "Peter Travers", "publication": "The Travers Take", "text": "Zach Cregger's frightfest is a movie with pain at its core that uses the supernatural to examine the very real reasons why humans turn against each other.", "fresh": True}, + {"movie_slug": "weapons", "critic": "Guy Lodge", "publication": "Observer (UK)", "text": "Cregger scatters breadcrumbs generously along his darkly wooded, nettled narrative path, but even as we gradually latch on to what Weapons is doing, there's nothing to prepare us for how wickedly it does it.", "fresh": True}, + {"movie_slug": "weapons", "critic": "Víctor López G.", "publication": "Espinof", "text": "A roller coaster disguised as a haunted house ride whose main weapon is, at the same time, the major stumbling block many viewers will encounter.", "fresh": True}, + {"movie_slug": "weapons", "critic": "Charlotte Simmons", "publication": "The Treatment (Substack)", "text": "A text that's so acutely provocative that it can only read as utterly queer.", "fresh": True}, + {"movie_slug": "together_2025", "critic": "Nicolas Rapold", "publication": "Sight & Sound", "text": "The metaphor of attachment finally isn't just about visualising co-dependence; what gets under your skin is Tim and Millie's fear that they're forgetting how to be close at all.", "fresh": True}, + {"movie_slug": "together_2025", "critic": "Kristy Puchko", "publication": "Mashable", "text": "Because of all the Sundance buzz, even as I watched Together's supremely gruesome climax, I was a bit bereft, hungering for something more.", "fresh": False}, + {"movie_slug": "together_2025", "critic": "Kevin Maher", "publication": "The Times (UK)", "text": "The beauty of the film is that it's an unforgiving dissection of co-dependent romantic relationships as well as a giddy and frequently stomach-churning body horror.", "fresh": True}, + {"movie_slug": "together_2025", "critic": "Víctor López G.", "publication": "Espinof", "text": "Beyond its lack of significance, the film stands as a commendable piece of entertainment that manages to surprise.", "fresh": True}, + {"movie_slug": "together_2025", "critic": "Keri O'Shea", "publication": "Warped Perspective", "text": "If things feel gallingly defeatist in key aspects, Together's detail-heavy body horror does its best work when it focuses on the minutiae.", "fresh": True}, + {"movie_slug": "marty_supreme", "critic": "John Anderson", "publication": "America Magazine", "text": "What's predictable enough is how effortlessly Chalamet generates sympathy for Marty Mauser, who in the cold light of the final credits deserves very little of it.", "fresh": True}, + {"movie_slug": "marty_supreme", "critic": "Unknown", "publication": "Filmspotting", "text": "Safdie transforms a sports saga into a biting portrait of ambition, class, and identity. A relentless odyssey of purpose and survival.", "fresh": True}, + {"movie_slug": "marty_supreme", "critic": "Jake Wilson", "publication": "Sydney Morning Herald", "text": "The movie is basically a picaresque dark comedy juiced up with violent slapstick and audacious stunt casting, with Chalamet stunting the hardest of all.", "fresh": True}, + {"movie_slug": "marty_supreme", "critic": "Kip Mooney", "publication": "College Movie Review", "text": "Exhilarating from start to finish.", "fresh": True}, + {"movie_slug": "marty_supreme", "critic": "Graeme Tuckett", "publication": "The Post NZ", "text": "Marty Supreme is just a hell of a ride. It is breathlessly paced, sometimes frightening, blackly hilarious and probably destined to be remembered as an early classic of the 21st century.", "fresh": True}, + {"movie_slug": "suburban_fury", "critic": "G. Allen Johnson", "publication": "San Francisco Chronicle", "text": "It's not often that we get an assassin or would-be assassin's side of the story. Suburban Fury therefore is not just a cracking good tale, it's a historical document as well.", "fresh": True}, + {"movie_slug": "suburban_fury", "critic": "Richard Brody", "publication": "The New Yorker", "text": "The context is filled out with a tangy gathering of archival clips; the effect is a refraction of history through a uniquely warped prism, to nonetheless revelatory effect.", "fresh": True}, + {"movie_slug": "suburban_fury", "critic": "Owen Gleiberman", "publication": "Variety", "text": "Suburban Fury does that rare thing and offers a highly specific motivation for Moore's infamous crime.", "fresh": True}, + {"movie_slug": "suburban_fury", "critic": "Nathalie Graham", "publication": "The Stranger (Seattle, WA)", "text": "Devor gains historic access to Moore, who sheds light in an unpolished, often unreliable interview on how she went from a conservative suburban housewife to an almost assassin.", "fresh": True}, + {"movie_slug": "suburban_fury", "critic": "Dennis Harvey", "publication": "48 Hills", "text": "It's an absorbing if slow-moving inquiry whose ultimate fascination lies precisely in being about someone who gets less and less cooperative with the filmmaking process.", "fresh": True}, + {"movie_slug": "greenland", "critic": "Mark Kermode", "publication": "Observer (UK)", "text": "The result is a first-rate B-picture, and a timely reminder of the delights of well-crafted popcorn thrills.", "fresh": True}, + {"movie_slug": "greenland", "critic": "Barry Hertz", "publication": "Globe and Mail", "text": "The new movie Greenland will make you sick. And I cannot recommend it highly enough.", "fresh": True}, + {"movie_slug": "greenland", "critic": "Chris Hewitt", "publication": "Empire Magazine", "text": "Butler's best star vehicle in years, what could have been a bombastic bunch of boulders is, instead, a refreshingly clear-eyed and compelling affair.", "fresh": True}, + {"movie_slug": "greenland", "critic": "Geoffrey Macnab", "publication": "iNews.co.uk", "text": "This disaster film is contrived and nonsensical with very few redeeming features.", "fresh": False}, + {"movie_slug": "greenland", "critic": "Sebastian Zavala Kahn", "publication": "Unknown", "text": "If it separates itself from more generic fare, it's because it focuses on a particular family and not on ten thousand different characters.", "fresh": True}, + {"movie_slug": "the_hunt_2019", "critic": "Nick Schager", "publication": "Unknown", "text": "This gleefully trashy, superficial satire takes shotgun aim at both Democrats and Republicans for their stereotypical assumptions about each other.", "fresh": True}, + {"movie_slug": "the_hunt_2019", "critic": "Robbie Collin", "publication": "Unknown", "text": "If Hollywood really is an elite liberal bubble, Damon Lindelof might just be the prick it needs.", "fresh": True}, + {"movie_slug": "the_hunt_2019", "critic": "Stephen Romei", "publication": "The Australian", "text": "What I think this intelligent, violent movie is saying is that both stories are wrong because in races where it's us versus them there can be no winner.", "fresh": True}, + {"movie_slug": "the_hunt_2019", "critic": "Manuel São Bento", "publication": "Unknown", "text": "The Hunt is a brilliantly dark satire on today's political views of the world. It's meant to be one of the most divisive films of the last few years.", "fresh": True}, + {"movie_slug": "the_hunt_2019", "critic": "Paul Lê", "publication": "Nightmare on Film Street", "text": "The Hunt is a movie at odds with itself. It wants to shed light on urgent social matters yet the political slant doesn't go the way anyone was expecting.", "fresh": False}, + {"movie_slug": "relay", "critic": "Mark Kermode", "publication": "Kermode and Mayo's Take (YouTube)", "text": "It is pretty gripping stuff.", "fresh": True}, + {"movie_slug": "relay", "critic": "Ed Potton", "publication": "The Times (UK)", "text": "Away from the relay scenes, the film is rather conventional, but when Sarah and Ash are on the blower, it's enthralling stuff.", "fresh": True}, + {"movie_slug": "relay", "critic": "Unknown", "publication": "Little White Lies", "text": "Even if it does eventually crumble to pieces, it's a really strong thriller for the large majority of its runtime.", "fresh": True}, + {"movie_slug": "relay", "critic": "James Croot", "publication": "The Post NZ", "text": "Screenwriter Justin Piasecki's debut is a brilliantly wrought story of subterfuge and misdirection that both Alfred Hitchcock and David Mamet would be proud of.", "fresh": True}, + {"movie_slug": "relay", "critic": "John Serba", "publication": "Decider", "text": "The film's first 90 minutes are intricate and engrossing, with enjoyable dramatic developments and payoffs nestled in the psychology of surveillance, paranoia and human connection.", "fresh": True}, +] + +AUDIENCE_REVIEWS = [ + { + "movie_slug": "avengers_endgame", + "user": "Ryan", + "text": "Potentially my favorite experience ever. This movie felt like the ultimate finale. The emotional weight, the action, and the opportunity costs are HIGH. MUST SEE MOVIE", + "rating": 5, + }, + { + "movie_slug": "avengers_endgame", + "user": "Angel G", + "text": "Absolute cinema! 🙏🏼", + "rating": 5, + }, + { + "movie_slug": "godzilla_minus_one", + "user": "Patrick V", + "text": "Best Godzilla movie ever made. Earned the special effects Oscar, and also has an excellent human story.", + "rating": 5, + }, + { + "movie_slug": "top_gun_maverick", + "user": "Michael", + "text": "Just a perfect American movie. So watchable and re-watchable.", + "rating": 5, + }, + { + "movie_slug": "top_gun_maverick", + "user": "Patricia P", + "text": "Probably the best sequel ever made or a close second. Everything about this movie is amazing.", + "rating": 5, + }, + { + "movie_slug": "the_dark_knight", + "user": "BISHOP", + "text": "One of the most legendary pieces of Cinema in history.", + "rating": 5, + }, + { + "movie_slug": "the_dark_knight", + "user": "Ricardo", + "text": "Absolute cinema, Heath Ledger is the best joker and Christian Bale is the best Batman there is.", + "rating": 5, + }, + { + "movie_slug": "oppenheimer_2023", + "user": "ROMEO", + "text": "One of the Greatest Movies I've Ever Seen.", + "rating": 5, + }, + { + "movie_slug": "oppenheimer_2023", + "user": "Jesus", + "text": "Watched it for the 5th time. Will watch it more as long as it's re-released in theaters.", + "rating": 5, + }, + { + "movie_slug": "barbie", + "user": "Luie", + "text": "Such a beautiful representation of what it is to be a woman!!!", + "rating": 5, + }, + { + "movie_slug": "parasite_2019", + "user": "Zion", + "text": "Filmmaking at its peak", + "rating": 5, + }, + { + "movie_slug": "parasite_2019", + "user": "Brandon", + "text": "Perfect Film!!! Simply a Masterpiece!!!!", + "rating": 5, + }, + { + "movie_slug": "sinners_2025", + "user": "Lysah", + "text": "life changing omg. saw it 4 times", + "rating": 5, + }, + { + "movie_slug": "dune_part_two", + "user": "Joseph", + "text": "Epic!! Visually stunning", + "rating": 5, + }, + { + "movie_slug": "inside_out_2", + "user": "Sergio Z", + "text": "Not as great as the first but definitely good.", + "rating": 4, + }, + { + "movie_slug": "everything_everywhere_all_at_once", + "user": "Carlos", + "text": "I cried my eyes out, love it!", + "rating": 5, + }, + { + "movie_slug": "the_substance", + "user": "Ryan M", + "text": "I don't know what I thought this movie would be like, but it exceeded my expectations. That last act is gonzo!", + "rating": 5, + }, + { + "movie_slug": "nosferatu_2024", + "user": "Lexie B", + "text": "Peak immersive, cinematic storytelling. Monsters girlies win", + "rating": 4, + }, + { + "movie_slug": "deadpool_and_wolverine", + "user": "Morgan P", + "text": "Best Marvel movie hands down. The only one I revisit semi-annually because of how great and entertaining it is.", + "rating": 5, + }, + { + "movie_slug": "wicked_2024", + "user": "kassandra", + "text": "This movie is my life 🤩", + "rating": 5, + }, + { + "movie_slug": "interstellar_2014", + "user": "Tyler", + "text": "Interstellar is not just a movie, it's an odyssey. From action to tension, the story shows the resilience of humanity across time and space.", + "rating": 5, + }, + { + "movie_slug": "anaconda_2025", + "user": "Alanna T", + "text": "Jack Black and Paul Rudd match made in heaven.", + "rating": 4, + }, + { + "movie_slug": "the_wild_robot", + "user": "Chad W", + "text": "An instant classic animated/digital or otherwise. The uniquely refreshing visuals complement the story's source material.", + "rating": 5, + }, + { + "movie_slug": "shrek", + "user": "Timothy W", + "text": "I typically don't care for Dreamworks snarky animation, but this one is snarky with heart, and it was done well!", + "rating": 4, + }, + { + "movie_slug": "lilo_and_stitch", + "user": "Chris P", + "text": "Lilo & Stitch might not always be the first title people name when listing Disney's greats, but it absolutely deserves a spot among them.", + "rating": 5, + }, + { + "movie_slug": "blackberry", + "user": "Del", + "text": "Really enlightening film about the rise and fall of the BlackBerry company. Surprisingly funny as well.", + "rating": 5, + }, + { + "movie_slug": "superman_2025", + "user": "Marie", + "text": "I don't care what anyone says about this movie it made me cry because I felt like Superman was finally back!!", + "rating": 5, + }, + { + "movie_slug": "the_fantastic_four_first_steps", + "user": "Hunter", + "text": "Awesome movie, finally one worthy of the Fantastic Four's storied history", + "rating": 5, + }, +] + +# Cast assignments: map movies to persons (actor, character) +MOVIE_CAST = [ + {"movie_slug": "avengers_endgame", "person_slug": "robert_downey_jr", "character": "Tony Stark / Iron Man", "order": 1}, + {"movie_slug": "avengers_endgame", "person_slug": "chris_evans", "character": "Steve Rogers / Captain America", "order": 2}, + {"movie_slug": "avengers_endgame", "person_slug": "mark_ruffalo", "character": "Bruce Banner / Hulk", "order": 3}, + {"movie_slug": "avengers_endgame", "person_slug": "chris_hemsworth", "character": "Thor", "order": 4}, + {"movie_slug": "avengers_endgame", "person_slug": "scarlett_johansson", "character": "Natasha Romanoff / Black Widow", "order": 5}, + {"movie_slug": "avengers_endgame", "person_slug": "jeremy_renner", "character": "Clint Barton / Hawkeye", "order": 6}, + {"movie_slug": "avengers_endgame", "person_slug": "brie_larson", "character": "Carol Danvers / Captain Marvel", "order": 7}, + {"movie_slug": "avengers_endgame", "person_slug": "paul_rudd", "character": "Scott Lang / Ant-Man", "order": 8}, + {"movie_slug": "avengers_endgame", "person_slug": "don_cheadle", "character": "James Rhodes / War Machine", "order": 9}, + {"movie_slug": "avengers_endgame", "person_slug": "karen_gillan", "character": "Nebula", "order": 10}, + {"movie_slug": "avengers_endgame", "person_slug": "bradley_cooper", "character": "Rocket", "order": 11}, + {"movie_slug": "avengers_endgame", "person_slug": "gwyneth_paltrow", "character": "Pepper Potts", "order": 12}, + {"movie_slug": "avengers_endgame", "person_slug": "josh_brolin", "character": "Thanos", "order": 13}, + {"movie_slug": "avengers_endgame", "person_slug": "chadwick_boseman", "character": "T'Challa / Black Panther", "order": 14}, + {"movie_slug": "avengers_endgame", "person_slug": "benedict_cumberbatch", "character": "Stephen Strange / Doctor Strange", "order": 15}, + {"movie_slug": "avengers_endgame", "person_slug": "tom_holland", "character": "Peter Parker / Spider-Man", "order": 16}, + {"movie_slug": "the_dark_knight", "person_slug": "christian_bale", "character": "Bruce Wayne / Batman", "order": 1}, + {"movie_slug": "the_dark_knight", "person_slug": "heath_ledger", "character": "The Joker", "order": 2}, + {"movie_slug": "the_dark_knight", "person_slug": "aaron_eckhart", "character": "Harvey Dent", "order": 3}, + {"movie_slug": "the_dark_knight", "person_slug": "michael_caine", "character": "Alfred", "order": 4}, + {"movie_slug": "the_dark_knight", "person_slug": "maggie_gyllenhaal", "character": "Rachel Dawes", "order": 5}, + {"movie_slug": "the_dark_knight", "person_slug": "gary_oldman", "character": "Gordon", "order": 6}, + {"movie_slug": "the_dark_knight", "person_slug": "morgan_freeman", "character": "Lucius Fox", "order": 7}, + {"movie_slug": "the_dark_knight", "person_slug": "cillian_murphy", "character": "Scarecrow", "order": 8}, + {"movie_slug": "the_dark_knight", "person_slug": "eric_roberts", "character": "Maroni", "order": 9}, + {"movie_slug": "dune_part_two", "person_slug": "timothee_chalamet", "character": "Paul Atreides", "order": 1}, + {"movie_slug": "dune_part_two", "person_slug": "zendaya", "character": "Chani", "order": 2}, + {"movie_slug": "dune_part_two", "person_slug": "rebecca_ferguson", "character": "Jessica", "order": 3}, + {"movie_slug": "dune_part_two", "person_slug": "javier_bardem", "character": "Stilgar", "order": 4}, + {"movie_slug": "dune_part_two", "person_slug": "josh_brolin", "character": "Gurney Halleck", "order": 5}, + {"movie_slug": "dune_part_two", "person_slug": "austin_butler", "character": "Feyd-Rautha", "order": 6}, + {"movie_slug": "dune_part_two", "person_slug": "florence_pugh", "character": "Princess Irulan", "order": 7}, + {"movie_slug": "dune_part_two", "person_slug": "christopher_walken", "character": "Emperor", "order": 8}, + {"movie_slug": "dune_part_two", "person_slug": "lea_seydoux", "character": "Lady Margot", "order": 9}, + {"movie_slug": "dune_part_two", "person_slug": "stellan_skarsg\u00e5rd", "character": "Baron Harkonnen", "order": 10}, + {"movie_slug": "oppenheimer_2023", "person_slug": "cillian_murphy", "character": "J. Robert Oppenheimer", "order": 1}, + {"movie_slug": "oppenheimer_2023", "person_slug": "emily_blunt", "character": "Kitty Oppenheimer", "order": 2}, + {"movie_slug": "oppenheimer_2023", "person_slug": "robert_downey_jr", "character": "Lewis Strauss", "order": 3}, + {"movie_slug": "oppenheimer_2023", "person_slug": "matt_damon", "character": "Leslie Groves Jr.", "order": 4}, + {"movie_slug": "oppenheimer_2023", "person_slug": "rami_malek", "character": "David Hill", "order": 5}, + {"movie_slug": "oppenheimer_2023", "person_slug": "florence_pugh", "character": "Jean Tatlock", "order": 6}, + {"movie_slug": "oppenheimer_2023", "person_slug": "josh_hartnett", "character": "Ernest Lawrence", "order": 7}, + {"movie_slug": "oppenheimer_2023", "person_slug": "kenneth_branagh", "character": "Niels Bohr", "order": 8}, + {"movie_slug": "oppenheimer_2023", "person_slug": "casey_affleck", "character": "Boris Pash", "order": 9}, + {"movie_slug": "oppenheimer_2023", "person_slug": "gary_oldman", "character": "Harry Truman", "order": 10}, + {"movie_slug": "barbie", "person_slug": "margot_robbie", "character": "Barbie", "order": 1}, + {"movie_slug": "barbie", "person_slug": "ryan_gosling", "character": "Ken", "order": 2}, + {"movie_slug": "barbie", "person_slug": "america_ferrera", "character": "Gloria", "order": 3}, + {"movie_slug": "barbie", "person_slug": "kate_mckinnon", "character": "Weird Barbie", "order": 4}, + {"movie_slug": "barbie", "person_slug": "issa_rae", "character": "President Barbie", "order": 5}, + {"movie_slug": "barbie", "person_slug": "will_ferrell", "character": "Mattel CEO", "order": 6}, + {"movie_slug": "barbie", "person_slug": "michael_cera", "character": "Allan", "order": 7}, + {"movie_slug": "barbie", "person_slug": "simu_liu", "character": "Ken", "order": 8}, + {"movie_slug": "barbie", "person_slug": "ariana_greenblatt", "character": "Sasha", "order": 9}, + {"movie_slug": "barbie", "person_slug": "helen_mirren", "character": "Narrator", "order": 10}, + {"movie_slug": "barbie", "person_slug": "dua_lipa", "character": "Mermaid Barbie", "order": 11}, + {"movie_slug": "everything_everywhere_all_at_once", "person_slug": "michelle_yeoh", "character": "Evelyn Wang", "order": 1}, + {"movie_slug": "everything_everywhere_all_at_once", "person_slug": "stephanie_hsu", "character": "Joy Wang / Jobu Tupaki", "order": 2}, + {"movie_slug": "everything_everywhere_all_at_once", "person_slug": "ke_huy_quan", "character": "Waymond Wang", "order": 3}, + {"movie_slug": "everything_everywhere_all_at_once", "person_slug": "james_hong", "character": "Gong Gong", "order": 4}, + {"movie_slug": "everything_everywhere_all_at_once", "person_slug": "jamie_lee_curtis", "character": "Deirdre Beaubeirdra", "order": 5}, + {"movie_slug": "everything_everywhere_all_at_once", "person_slug": "jenny_slate", "character": "Debbie the Dog Mom", "order": 6}, + {"movie_slug": "everything_everywhere_all_at_once", "person_slug": "harry_shum_jr", "character": "Chad", "order": 7}, + {"movie_slug": "parasite_2019", "person_slug": "song_kang_ho", "character": "Kim Ki-taek", "order": 1}, + {"movie_slug": "parasite_2019", "person_slug": "lee_sun_kyun", "character": "Park Dong-ik", "order": 2}, + {"movie_slug": "parasite_2019", "person_slug": "jo_yeo_jeong", "character": "Choi Yeon-gyo", "order": 3}, + {"movie_slug": "parasite_2019", "person_slug": "choi_woo_sik", "character": "Kim Ki-woo", "order": 4}, + {"movie_slug": "parasite_2019", "person_slug": "park_so_dam", "character": "Kim Ki-jung", "order": 5}, + {"movie_slug": "parasite_2019", "person_slug": "lee_jeong_eun", "character": "Gook Moon-gwang", "order": 6}, + {"movie_slug": "parasite_2019", "person_slug": "jang_hye_jin", "character": "Chung-sook", "order": 7}, + {"movie_slug": "inside_out_2", "person_slug": "amy_poehler", "character": "Joy", "order": 1}, + {"movie_slug": "inside_out_2", "person_slug": "maya_hawke", "character": "Anxiety", "order": 2}, + {"movie_slug": "inside_out_2", "person_slug": "kensington_tallman", "character": "Riley", "order": 3}, + {"movie_slug": "inside_out_2", "person_slug": "phyllis_smith", "character": "Sadness", "order": 4}, + {"movie_slug": "inside_out_2", "person_slug": "lewis_black", "character": "Anger", "order": 5}, + {"movie_slug": "inside_out_2", "person_slug": "tony_hale", "character": "Fear", "order": 6}, + {"movie_slug": "inside_out_2", "person_slug": "liza_lapira", "character": "Disgust", "order": 7}, + {"movie_slug": "inside_out_2", "person_slug": "ayo_edebiri", "character": "Envy", "order": 8}, + {"movie_slug": "inside_out_2", "person_slug": "paul_walter_hauser", "character": "Embarrassment", "order": 9}, + {"movie_slug": "the_wild_robot", "person_slug": "lupita_nyongo", "character": "Roz", "order": 1}, + {"movie_slug": "the_wild_robot", "person_slug": "pedro_pascal", "character": "Fink", "order": 2}, + {"movie_slug": "the_wild_robot", "person_slug": "kit_connor", "character": "Brightbill", "order": 3}, + {"movie_slug": "the_wild_robot", "person_slug": "bill_nighy", "character": "Longneck", "order": 4}, + {"movie_slug": "the_wild_robot", "person_slug": "stephanie_hsu", "character": "Vontra", "order": 5}, + {"movie_slug": "the_wild_robot", "person_slug": "matt_berry", "character": "Paddler", "order": 6}, + {"movie_slug": "the_wild_robot", "person_slug": "catherine_ohara", "character": "Pinktail", "order": 7}, + {"movie_slug": "the_wild_robot", "person_slug": "mark_hamill", "character": "Thorn", "order": 8}, + {"movie_slug": "deadpool_and_wolverine", "person_slug": "ryan_reynolds", "character": "Wade Wilson / Deadpool", "order": 1}, + {"movie_slug": "deadpool_and_wolverine", "person_slug": "hugh_jackman", "character": "Logan / Wolverine", "order": 2}, + {"movie_slug": "deadpool_and_wolverine", "person_slug": "emma_corrin", "character": "Cassandra Nova", "order": 3}, + {"movie_slug": "deadpool_and_wolverine", "person_slug": "morena_baccarin", "character": "Vanessa", "order": 4}, + {"movie_slug": "deadpool_and_wolverine", "person_slug": "rob_delaney", "character": "Peter", "order": 5}, + {"movie_slug": "deadpool_and_wolverine", "person_slug": "leslie_uggams", "character": "Blind Al", "order": 6}, + {"movie_slug": "deadpool_and_wolverine", "person_slug": "aaron_stanford", "character": "Pyro", "order": 7}, + {"movie_slug": "top_gun_maverick", "person_slug": "tom_cruise", "character": "Capt. Pete \"Maverick\" Mitchell", "order": 1}, + {"movie_slug": "top_gun_maverick", "person_slug": "miles_teller", "character": "Lt. Bradley \"Rooster\" Bradshaw", "order": 2}, + {"movie_slug": "top_gun_maverick", "person_slug": "jennifer_connelly", "character": "Penny Benjamin", "order": 3}, + {"movie_slug": "top_gun_maverick", "person_slug": "jon_hamm", "character": "Adm. Beau \"Cyclone\" Simpson", "order": 4}, + {"movie_slug": "top_gun_maverick", "person_slug": "glen_powell", "character": "Lt. Jake \"Hangman\" Seresin", "order": 5}, + {"movie_slug": "top_gun_maverick", "person_slug": "ed_harris", "character": "Radm. Chester \"Hammer\" Cain", "order": 6}, + {"movie_slug": "top_gun_maverick", "person_slug": "val_kilmer", "character": "Adm. Tom \"Iceman\" Kazansky", "order": 7}, + {"movie_slug": "top_gun_maverick", "person_slug": "lewis_pullman", "character": "Lt. Robert \"Bob\" Floyd", "order": 8}, + {"movie_slug": "top_gun_maverick", "person_slug": "monica_barbaro", "character": "Lt. Natasha \"Phoenix\" Trace", "order": 9}, + {"movie_slug": "interstellar_2014", "person_slug": "matthew_mcconaughey", "character": "Cooper", "order": 1}, + {"movie_slug": "interstellar_2014", "person_slug": "anne_hathaway", "character": "Amelia Brand", "order": 2}, + {"movie_slug": "interstellar_2014", "person_slug": "jessica_chastain", "character": "Murph", "order": 3}, + {"movie_slug": "interstellar_2014", "person_slug": "michael_caine", "character": "Professor Brand", "order": 4}, + {"movie_slug": "interstellar_2014", "person_slug": "matt_damon", "character": "Dr. Mann", "order": 5}, + {"movie_slug": "interstellar_2014", "person_slug": "casey_affleck", "character": "Tom", "order": 6}, + {"movie_slug": "interstellar_2014", "person_slug": "timothee_chalamet", "character": "Young Tom", "order": 7}, + {"movie_slug": "interstellar_2014", "person_slug": "mackenzie_foy", "character": "Young Murph", "order": 8}, + {"movie_slug": "interstellar_2014", "person_slug": "john_lithgow", "character": "Donald", "order": 9}, + {"movie_slug": "wicked_2024", "person_slug": "cynthia_erivo", "character": "Elphaba", "order": 1}, + {"movie_slug": "wicked_2024", "person_slug": "ariana_grande", "character": "Glinda", "order": 2}, + {"movie_slug": "wicked_2024", "person_slug": "jonathan_bailey", "character": "Fiyero", "order": 3}, + {"movie_slug": "wicked_2024", "person_slug": "ethan_slater", "character": "Boq", "order": 4}, + {"movie_slug": "wicked_2024", "person_slug": "michelle_yeoh", "character": "Madame Morrible", "order": 5}, + {"movie_slug": "wicked_2024", "person_slug": "jeff_goldblum", "character": "The Wonderful Wizard of Oz", "order": 6}, + {"movie_slug": "wicked_2024", "person_slug": "peter_dinklage", "character": "Dr. Dillamond", "order": 7}, + {"movie_slug": "wicked_2024", "person_slug": "marissa_bode", "character": "Nessarose", "order": 8}, + {"movie_slug": "sinners_2025", "person_slug": "michael_b_jordan", "character": "Smoke / Stack", "order": 1}, + {"movie_slug": "sinners_2025", "person_slug": "hailee_steinfeld", "character": "Mary", "order": 2}, + {"movie_slug": "sinners_2025", "person_slug": "miles_caton", "character": "Sammie Moore", "order": 3}, + {"movie_slug": "sinners_2025", "person_slug": "jack_oconnell", "character": "Remmick", "order": 4}, + {"movie_slug": "sinners_2025", "person_slug": "wunmi_mosaku", "character": "Annie", "order": 5}, + {"movie_slug": "sinners_2025", "person_slug": "jayme_lawson", "character": "Pearline", "order": 6}, + {"movie_slug": "sinners_2025", "person_slug": "delroy_lindo", "character": "Delta Slim", "order": 7}, + {"movie_slug": "sinners_2025", "person_slug": "li_jun_li", "character": "Grace Chow", "order": 8}, + {"movie_slug": "nosferatu_2024", "person_slug": "bill_skarsg\u00e5rd", "character": "Count Orlok", "order": 1}, + {"movie_slug": "nosferatu_2024", "person_slug": "nicholas_hoult", "character": "Thomas Hutter", "order": 2}, + {"movie_slug": "nosferatu_2024", "person_slug": "lily_rose_depp", "character": "Ellen Hutter", "order": 3}, + {"movie_slug": "nosferatu_2024", "person_slug": "aaron_taylor_johnson", "character": "Friedrich Harding", "order": 4}, + {"movie_slug": "nosferatu_2024", "person_slug": "emma_corrin", "character": "Anna Harding", "order": 5}, + {"movie_slug": "nosferatu_2024", "person_slug": "ralph_ineson", "character": "Dr. Wilhelm Sievers", "order": 6}, + {"movie_slug": "nosferatu_2024", "person_slug": "simon_mcburney", "character": "Herr Knock", "order": 7}, + {"movie_slug": "godzilla_minus_one", "person_slug": "ryunosuke_kamiki", "character": "K\u00f4ichi Shikishima", "order": 1}, + {"movie_slug": "godzilla_minus_one", "person_slug": "minami_hamabe", "character": "Noriko \u00d4ishi", "order": 2}, + {"movie_slug": "godzilla_minus_one", "person_slug": "munetaka_aoki", "character": "S\u00f4saku Tachibana", "order": 3}, + {"movie_slug": "godzilla_minus_one", "person_slug": "hidetaka_yoshioka", "character": "Kenji Noda", "order": 4}, + {"movie_slug": "godzilla_minus_one", "person_slug": "sakura_ando", "character": "Sumiko \u00d4ta", "order": 5}, + {"movie_slug": "godzilla_minus_one", "person_slug": "kuranosuke_sasaki", "character": "Seiji Akitsu", "order": 6}, + {"movie_slug": "the_substance", "person_slug": "demi_moore", "character": "Elisabeth Sparkle", "order": 1}, + {"movie_slug": "the_substance", "person_slug": "margaret_qualley", "character": "Sue", "order": 2}, + {"movie_slug": "the_substance", "person_slug": "dennis_quaid", "character": "Harvey", "order": 3}, + {"movie_slug": "the_substance", "person_slug": "hugo_diego_garcia", "character": "Diego", "order": 4}, + {"movie_slug": "shrek", "person_slug": "mike_myers", "character": "Shrek", "order": 1}, + {"movie_slug": "shrek", "person_slug": "eddie_murphy", "character": "Donkey", "order": 2}, + {"movie_slug": "shrek", "person_slug": "cameron_diaz", "character": "Princess Fiona", "order": 3}, + {"movie_slug": "shrek", "person_slug": "john_lithgow", "character": "Lord Farquaad", "order": 4}, + {"movie_slug": "superman_2025", "person_slug": "david_corenswet", "character": "Superman", "order": 1}, + {"movie_slug": "superman_2025", "person_slug": "rachel_brosnahan", "character": "Lois Lane", "order": 2}, + {"movie_slug": "superman_2025", "person_slug": "nicholas_hoult", "character": "Lex Luthor", "order": 3}, + {"movie_slug": "superman_2025", "person_slug": "edi_gathegi", "character": "Mr. Terrific", "order": 4}, + {"movie_slug": "superman_2025", "person_slug": "nathan_fillion", "character": "Guy Gardner", "order": 5}, + {"movie_slug": "superman_2025", "person_slug": "isabela_merced", "character": "Hawkgirl", "order": 6}, + {"movie_slug": "superman_2025", "person_slug": "skyler_gisondo", "character": "Jimmy Olsen", "order": 7}, + {"movie_slug": "superman_2025", "person_slug": "wendell_pierce", "character": "Perry White", "order": 8}, + {"movie_slug": "the_fantastic_four_first_steps", "person_slug": "pedro_pascal", "character": "Reed Richards / Mister Fantastic", "order": 1}, + {"movie_slug": "the_fantastic_four_first_steps", "person_slug": "vanessa_kirby", "character": "Sue Storm / Invisible Woman", "order": 2}, + {"movie_slug": "the_fantastic_four_first_steps", "person_slug": "ebon_moss_bachrach", "character": "Ben Grimm / Thing", "order": 3}, + {"movie_slug": "the_fantastic_four_first_steps", "person_slug": "joseph_quinn", "character": "Johnny Storm / Human Torch", "order": 4}, + {"movie_slug": "the_fantastic_four_first_steps", "person_slug": "ralph_ineson", "character": "Galactus", "order": 5}, + {"movie_slug": "the_fantastic_four_first_steps", "person_slug": "julia_garner", "character": "Silver Surfer", "order": 6}, + {"movie_slug": "the_fantastic_four_first_steps", "person_slug": "john_malkovich", "character": "Ivan Kragoff", "order": 7}, + {"movie_slug": "the_fantastic_four_first_steps", "person_slug": "natasha_lyonne", "character": "Alicia Masters", "order": 8}, + {"movie_slug": "blackberry", "person_slug": "jay_baruchel", "character": "Mike Lazaridis", "order": 1}, + {"movie_slug": "blackberry", "person_slug": "glenn_howerton", "character": "Jim Balsillie", "order": 2}, + {"movie_slug": "blackberry", "person_slug": "matt_johnson", "character": "Doug Chicken", "order": 3}, + {"movie_slug": "blackberry", "person_slug": "rich_sommer", "character": "Larry Conlee", "order": 4}, + {"movie_slug": "blackberry", "person_slug": "michael_ironside", "character": "Charles Falkner", "order": 5}, + {"movie_slug": "blackberry", "person_slug": "cary_elwes", "character": "David Neale", "order": 6}, + {"movie_slug": "blackberry", "person_slug": "saul_rubinek", "character": "Larry Conlee", "order": 7}, + {"movie_slug": "anaconda_2025", "person_slug": "paul_rudd", "character": "Ronald Griffin Jr.", "order": 1}, + {"movie_slug": "anaconda_2025", "person_slug": "jack_black", "character": "Doug McCallister", "order": 2}, + {"movie_slug": "anaconda_2025", "person_slug": "thandiwe_newton", "character": "Claire Simons", "order": 3}, + {"movie_slug": "anaconda_2025", "person_slug": "steve_zahn", "character": "Kenny Trent", "order": 4}, + {"movie_slug": "anaconda_2025", "person_slug": "ice_cube", "character": "Self", "order": 5}, + {"movie_slug": "lilo_and_stitch", "person_slug": "daveigh_chase", "character": "Lilo", "order": 1}, + {"movie_slug": "lilo_and_stitch", "person_slug": "chris_sanders", "character": "Stitch", "order": 2}, + {"movie_slug": "lilo_and_stitch", "person_slug": "tia_carrere", "character": "Nani", "order": 3}, + {"movie_slug": "lilo_and_stitch", "person_slug": "david_ogden_stiers", "character": "Jumba", "order": 4}, + {"movie_slug": "lilo_and_stitch", "person_slug": "kevin_mcdonald", "character": "Pleakley", "order": 5}, + {"movie_slug": "lilo_and_stitch", "person_slug": "ving_rhames", "character": "Cobra Bubbles", "order": 6}, + {"movie_slug": "avatar_fire_and_ash", "person_slug": "sam_worthington", "character": "Jake", "order": 1}, + {"movie_slug": "avatar_fire_and_ash", "person_slug": "zoe_saldana", "character": "Neytiri", "order": 2}, + {"movie_slug": "avatar_fire_and_ash", "person_slug": "sigourney_weaver", "character": "Kiri", "order": 3}, + {"movie_slug": "avatar_fire_and_ash", "person_slug": "stephen_lang", "character": "Quaritch", "order": 4}, + {"movie_slug": "avatar_fire_and_ash", "person_slug": "kate_winslet", "character": "Ronal", "order": 5}, + {"movie_slug": "avatar_fire_and_ash", "person_slug": "oona_chaplin", "character": "Varang", "order": 6}, + {"movie_slug": "avatar_fire_and_ash", "person_slug": "cliff_curtis", "character": "Tonowari", "order": 7}, + {"movie_slug": "avatar_fire_and_ash", "person_slug": "jemaine_clement", "character": "Dr. Garvin", "order": 8}, + {"movie_slug": "avatar_fire_and_ash", "person_slug": "giovanni_ribisi", "character": "Selfridge", "order": 9}, + {"movie_slug": "oddity", "person_slug": "gwilym_lee", "character": "Ted Timmis", "order": 1}, + {"movie_slug": "oddity", "person_slug": "carolyn_bracken", "character": "Darcy / Dani", "order": 2}, + {"movie_slug": "oddity", "person_slug": "tadhg_murphy", "character": "Olin Boole", "order": 3}, + {"movie_slug": "oddity", "person_slug": "caroline_menton", "character": "Yana", "order": 4}, + {"movie_slug": "oddity", "person_slug": "steve_wall", "character": "Ivan", "order": 5}, + {"movie_slug": "28_years_later_the_bone_temple", "person_slug": "aaron_taylor_johnson", "character": "Jimmy", "order": 1}, + {"movie_slug": "28_years_later_the_bone_temple", "person_slug": "jodie_comer", "character": "Isla", "order": 2}, + {"movie_slug": "28_years_later_the_bone_temple", "person_slug": "ralph_fiennes", "character": "The Doctor", "order": 3}, + {"movie_slug": "28_years_later_the_bone_temple", "person_slug": "cillian_murphy", "character": "Jim", "order": 4}, + {"movie_slug": "28_years_later_the_bone_temple", "person_slug": "erin_kellyman", "character": "Blue", "order": 5}, + {"movie_slug": "top_gun", "person_slug": "tom_cruise", "character": "Maverick", "order": 1}, + {"movie_slug": "top_gun", "person_slug": "kelly_mcgillis", "character": "Charlie", "order": 2}, + {"movie_slug": "top_gun", "person_slug": "val_kilmer", "character": "Iceman", "order": 3}, + {"movie_slug": "top_gun", "person_slug": "anthony_edwards", "character": "Goose", "order": 4}, + {"movie_slug": "top_gun", "person_slug": "tom_skerritt", "character": "Viper", "order": 5}, + {"movie_slug": "top_gun", "person_slug": "meg_ryan", "character": "Carole", "order": 6}, + {"movie_slug": "the_devil_wears_prada", "person_slug": "meryl_streep", "character": "Miranda Priestly", "order": 1}, + {"movie_slug": "the_devil_wears_prada", "person_slug": "anne_hathaway", "character": "Andy Sachs", "order": 2}, + {"movie_slug": "the_devil_wears_prada", "person_slug": "emily_blunt", "character": "Emily", "order": 3}, + {"movie_slug": "the_devil_wears_prada", "person_slug": "stanley_tucci", "character": "Nigel", "order": 4}, + {"movie_slug": "the_devil_wears_prada", "person_slug": "adrian_grenier", "character": "Nate", "order": 5}, + {"movie_slug": "the_devil_wears_prada", "person_slug": "simon_baker", "character": "Christian Thompson", "order": 6}, + {"movie_slug": "green_book", "person_slug": "viggo_mortensen", "character": "Tony Lip", "order": 1}, + {"movie_slug": "green_book", "person_slug": "mahershala_ali", "character": "Don Shirley", "order": 2}, + {"movie_slug": "green_book", "person_slug": "linda_cardellini", "character": "Dolores", "order": 3}, + {"movie_slug": "green_book", "person_slug": "sebastian_maniscalco", "character": "Johnny Venere", "order": 4}, + {"movie_slug": "mortal_kombat_2021", "person_slug": "lewis_tan", "character": "Cole Young", "order": 1}, + {"movie_slug": "mortal_kombat_2021", "person_slug": "jessica_mcnamee", "character": "Sonya Blade", "order": 2}, + {"movie_slug": "mortal_kombat_2021", "person_slug": "josh_lawson", "character": "Kano", "order": 3}, + {"movie_slug": "mortal_kombat_2021", "person_slug": "joe_taslim", "character": "Sub-Zero", "order": 4}, + {"movie_slug": "mortal_kombat_2021", "person_slug": "mehcad_brooks", "character": "Jax", "order": 5}, + {"movie_slug": "mortal_kombat_2021", "person_slug": "hiroyuki_sanada", "character": "Scorpion", "order": 6}, + {"movie_slug": "mortal_kombat", "person_slug": "karl_urban", "character": "Johnny Cage", "order": 1}, + {"movie_slug": "mortal_kombat", "person_slug": "tati_gabrielle", "character": "Jade", "order": 2}, + {"movie_slug": "mortal_kombat", "person_slug": "adeline_rudolph", "character": "Kitana", "order": 3}, + {"movie_slug": "mortal_kombat", "person_slug": "lewis_tan", "character": "Cole Young", "order": 4}, + {"movie_slug": "mortal_kombat", "person_slug": "jessica_mcnamee", "character": "Sonya Blade", "order": 5}, + {"movie_slug": "scream_7", "person_slug": "neve_campbell", "character": "Sidney Prescott", "order": 1}, + {"movie_slug": "scream_7", "person_slug": "courteney_cox", "character": "Gale Weathers", "order": 2}, + {"movie_slug": "scream_7", "person_slug": "jenna_ortega", "character": "Tara Carpenter", "order": 3}, + {"movie_slug": "scream_7", "person_slug": "mason_gooding", "character": "Chad Meeks-Martin", "order": 4}, + {"movie_slug": "scream_7", "person_slug": "isabel_may", "character": "", "order": 5}, + {"movie_slug": "predator_badlands", "person_slug": "elle_fanning", "character": "", "order": 1}, + {"movie_slug": "predator_badlands", "person_slug": "amber_midthunder", "character": "Naru", "order": 2}, + {"movie_slug": "predator_badlands", "person_slug": "dan_stevens", "character": "", "order": 3}, + {"movie_slug": "predator_badlands", "person_slug": "boyd_holbrook", "character": "Quinn McKenna", "order": 4}, + {"movie_slug": "jurassic_world_rebirth", "person_slug": "scarlett_johansson", "character": "", "order": 1}, + {"movie_slug": "jurassic_world_rebirth", "person_slug": "jonathan_bailey", "character": "", "order": 2}, + {"movie_slug": "jurassic_world_rebirth", "person_slug": "mahershala_ali", "character": "", "order": 3}, + {"movie_slug": "jurassic_world_rebirth", "person_slug": "rupert_friend", "character": "", "order": 4}, + {"movie_slug": "jurassic_world_rebirth", "person_slug": "manuel_garcia_rulfo", "character": "", "order": 5}, + {"movie_slug": "jurassic_world_rebirth", "person_slug": "luna_blaise", "character": "", "order": 6}, + {"movie_slug": "star_wars_the_last_jedi", "person_slug": "mark_hamill", "character": "Luke Skywalker", "order": 1}, + {"movie_slug": "star_wars_the_last_jedi", "person_slug": "carrie_fisher", "character": "Leia Organa", "order": 2}, + {"movie_slug": "star_wars_the_last_jedi", "person_slug": "adam_driver", "character": "Kylo Ren", "order": 3}, + {"movie_slug": "star_wars_the_last_jedi", "person_slug": "daisy_ridley", "character": "Rey", "order": 4}, + {"movie_slug": "star_wars_the_last_jedi", "person_slug": "john_boyega", "character": "Finn", "order": 5}, + {"movie_slug": "star_wars_the_last_jedi", "person_slug": "oscar_isaac", "character": "Poe Dameron", "order": 6}, + {"movie_slug": "star_wars_the_last_jedi", "person_slug": "laura_dern", "character": "Holdo", "order": 7}, + {"movie_slug": "star_wars_the_last_jedi", "person_slug": "kelly_marie_tran", "character": "Rose Tico", "order": 8}, + {"movie_slug": "star_wars_the_rise_of_skywalker", "person_slug": "daisy_ridley", "character": "Rey", "order": 1}, + {"movie_slug": "star_wars_the_rise_of_skywalker", "person_slug": "adam_driver", "character": "Kylo Ren", "order": 2}, + {"movie_slug": "star_wars_the_rise_of_skywalker", "person_slug": "john_boyega", "character": "Finn", "order": 3}, + {"movie_slug": "star_wars_the_rise_of_skywalker", "person_slug": "oscar_isaac", "character": "Poe Dameron", "order": 4}, + {"movie_slug": "star_wars_the_rise_of_skywalker", "person_slug": "mark_hamill", "character": "Luke Skywalker", "order": 5}, + {"movie_slug": "star_wars_the_rise_of_skywalker", "person_slug": "ian_mcdiarmid", "character": "Palpatine", "order": 6}, + {"movie_slug": "star_wars_the_rise_of_skywalker", "person_slug": "billy_dee_williams", "character": "Lando Calrissian", "order": 7}, + {"movie_slug": "star_wars_episode_iii_revenge_of_the_sith", "person_slug": "ewan_mcgregor", "character": "Obi-Wan Kenobi", "order": 1}, + {"movie_slug": "star_wars_episode_iii_revenge_of_the_sith", "person_slug": "natalie_portman", "character": "Padme Amidala", "order": 2}, + {"movie_slug": "star_wars_episode_iii_revenge_of_the_sith", "person_slug": "hayden_christensen", "character": "Anakin Skywalker", "order": 3}, + {"movie_slug": "star_wars_episode_iii_revenge_of_the_sith", "person_slug": "ian_mcdiarmid", "character": "Palpatine", "order": 4}, + {"movie_slug": "star_wars_episode_iii_revenge_of_the_sith", "person_slug": "samuel_l_jackson", "character": "Mace Windu", "order": 5}, + {"movie_slug": "star_wars_episode_iii_revenge_of_the_sith", "person_slug": "frank_oz", "character": "Yoda", "order": 6}, + {"movie_slug": "the_hunger_games_the_ballad_of_songbirds_and_snakes", "person_slug": "tom_blyth", "character": "Coriolanus Snow", "order": 1}, + {"movie_slug": "the_hunger_games_the_ballad_of_songbirds_and_snakes", "person_slug": "rachel_zegler", "character": "Lucy Gray Baird", "order": 2}, + {"movie_slug": "the_hunger_games_the_ballad_of_songbirds_and_snakes", "person_slug": "peter_dinklage", "character": "Casca Highbottom", "order": 3}, + {"movie_slug": "the_hunger_games_the_ballad_of_songbirds_and_snakes", "person_slug": "jason_schwartzman", "character": "Lucky Flickerman", "order": 4}, + {"movie_slug": "the_hunger_games_the_ballad_of_songbirds_and_snakes", "person_slug": "hunter_schafer", "character": "Tigris Snow", "order": 5}, + {"movie_slug": "the_hunger_games_the_ballad_of_songbirds_and_snakes", "person_slug": "viola_davis", "character": "Dr. Volumnia Gaul", "order": 6}, + {"movie_slug": "1071806-independence_day", "person_slug": "will_smith", "character": "Captain Steven Hiller", "order": 1}, + {"movie_slug": "1071806-independence_day", "person_slug": "jeff_goldblum", "character": "David Levinson", "order": 2}, + {"movie_slug": "1071806-independence_day", "person_slug": "bill_pullman", "character": "President Whitmore", "order": 3}, + {"movie_slug": "1071806-independence_day", "person_slug": "mary_mcdonnell", "character": "Marilyn Whitmore", "order": 4}, + {"movie_slug": "1071806-independence_day", "person_slug": "judd_hirsch", "character": "Julius Levinson", "order": 5}, + {"movie_slug": "1071806-independence_day", "person_slug": "vivica_a_fox", "character": "Jasmine Dubrow", "order": 6}, + {"movie_slug": "the_martian", "person_slug": "matt_damon", "character": "Mark Watney", "order": 1}, + {"movie_slug": "the_martian", "person_slug": "jessica_chastain", "character": "Melissa Lewis", "order": 2}, + {"movie_slug": "the_martian", "person_slug": "kristen_wiig", "character": "Annie Montrose", "order": 3}, + {"movie_slug": "the_martian", "person_slug": "jeff_daniels", "character": "Teddy Sanders", "order": 4}, + {"movie_slug": "the_martian", "person_slug": "michael_pena", "character": "Rick Martinez", "order": 5}, + {"movie_slug": "the_martian", "person_slug": "sean_bean", "character": "Mitch Henderson", "order": 6}, + {"movie_slug": "the_martian", "person_slug": "chiwetel_ejiofor", "character": "Vincent Kapoor", "order": 7}, + {"movie_slug": "godzilla_x_kong_the_new_empire", "person_slug": "rebecca_hall", "character": "Dr. Ilene Andrews", "order": 1}, + {"movie_slug": "godzilla_x_kong_the_new_empire", "person_slug": "brian_tyree_henry", "character": "Bernie Hayes", "order": 2}, + {"movie_slug": "godzilla_x_kong_the_new_empire", "person_slug": "dan_stevens", "character": "Trapper", "order": 3}, + {"movie_slug": "godzilla_x_kong_the_new_empire", "person_slug": "kaylee_hottle", "character": "Jia", "order": 4}, + {"movie_slug": "the_housemaid_2025", "person_slug": "sydney_sweeney", "character": "Millie", "order": 1}, + {"movie_slug": "the_housemaid_2025", "person_slug": "amanda_seyfried", "character": "Nina", "order": 2}, + {"movie_slug": "the_housemaid_2025", "person_slug": "brandon_sklenar", "character": "Andrew", "order": 3}, + {"movie_slug": "the_housemaid_2025", "person_slug": "michele_morrone", "character": "", "order": 4}, + {"movie_slug": "ready_or_not_2019", "person_slug": "samara_weaving", "character": "Grace", "order": 1}, + {"movie_slug": "ready_or_not_2019", "person_slug": "adam_brody", "character": "Daniel", "order": 2}, + {"movie_slug": "ready_or_not_2019", "person_slug": "mark_obrien", "character": "Alex", "order": 3}, + {"movie_slug": "ready_or_not_2019", "person_slug": "henry_czerny", "character": "Tony", "order": 4}, + {"movie_slug": "ready_or_not_2019", "person_slug": "andie_macdowell", "character": "Becky", "order": 5}, + {"movie_slug": "ready_or_not_2_here_i_come", "person_slug": "samara_weaving", "character": "Grace", "order": 1}, + {"movie_slug": "ready_or_not_2_here_i_come", "person_slug": "adam_brody", "character": "Daniel", "order": 2}, + {"movie_slug": "ready_or_not_2_here_i_come", "person_slug": "henry_czerny", "character": "Tony", "order": 3}, + {"movie_slug": "companion_2025", "person_slug": "sophie_thatcher", "character": "Iris", "order": 1}, + {"movie_slug": "companion_2025", "person_slug": "jack_quaid", "character": "Josh", "order": 2}, + {"movie_slug": "companion_2025", "person_slug": "lukas_gage", "character": "Patrick", "order": 3}, + {"movie_slug": "companion_2025", "person_slug": "harvey_guillen", "character": "Eli", "order": 4}, + {"movie_slug": "companion_2025", "person_slug": "megan_suri", "character": "Kat", "order": 5}, + {"movie_slug": "the_life_of_chuck", "person_slug": "tom_hiddleston", "character": "Chuck", "order": 1}, + {"movie_slug": "the_life_of_chuck", "person_slug": "mark_hamill", "character": "Grandpa Albie", "order": 2}, + {"movie_slug": "the_life_of_chuck", "person_slug": "karen_gillan", "character": "Marty", "order": 3}, + {"movie_slug": "the_life_of_chuck", "person_slug": "chiwetel_ejiofor", "character": "Griffin", "order": 4}, + {"movie_slug": "frankenstein_2025", "person_slug": "andrew_garfield", "character": "Dr. Frankenstein", "order": 1}, + {"movie_slug": "frankenstein_2025", "person_slug": "oscar_isaac", "character": "The Monster", "order": 2}, + {"movie_slug": "frankenstein_2025", "person_slug": "mia_goth", "character": "Elizabeth", "order": 3}, + {"movie_slug": "frankenstein_2025", "person_slug": "christoph_waltz", "character": "Professor Waldman", "order": 4}, + {"movie_slug": "wake_up_dead_man_a_knives_out_mystery", "person_slug": "daniel_craig", "character": "Benoit Blanc", "order": 1}, + {"movie_slug": "wake_up_dead_man_a_knives_out_mystery", "person_slug": "josh_oconnor", "character": "", "order": 2}, + {"movie_slug": "wake_up_dead_man_a_knives_out_mystery", "person_slug": "cailee_spaeny", "character": "", "order": 3}, + {"movie_slug": "wake_up_dead_man_a_knives_out_mystery", "person_slug": "andrew_scott", "character": "", "order": 4}, + {"movie_slug": "wake_up_dead_man_a_knives_out_mystery", "person_slug": "jeremy_renner", "character": "", "order": 5}, + {"movie_slug": "wake_up_dead_man_a_knives_out_mystery", "person_slug": "kerry_washington", "character": "", "order": 6}, + {"movie_slug": "wake_up_dead_man_a_knives_out_mystery", "person_slug": "glenn_close", "character": "", "order": 7}, + {"movie_slug": "wake_up_dead_man_a_knives_out_mystery", "person_slug": "josh_brolin", "character": "", "order": 8}, + {"movie_slug": "wake_up_dead_man_a_knives_out_mystery", "person_slug": "mila_kunis", "character": "", "order": 9}, + {"movie_slug": "project_hail_mary", "person_slug": "ryan_gosling", "character": "Ryland Grace", "order": 1}, + {"movie_slug": "project_hail_mary", "person_slug": "sandra_bullock", "character": "", "order": 2}, + {"movie_slug": "project_hail_mary", "person_slug": "phoebe_waller_bridge", "character": "", "order": 3}, + {"movie_slug": "greenland", "person_slug": "gerard_butler", "character": "John Garrity", "order": 1}, + {"movie_slug": "greenland", "person_slug": "morena_baccarin", "character": "Allison", "order": 2}, + {"movie_slug": "greenland", "person_slug": "scott_glenn", "character": "Dale", "order": 3}, + {"movie_slug": "greenland", "person_slug": "david_denman", "character": "Ralph Vento", "order": 4}, + {"movie_slug": "greenland_2_migration", "person_slug": "gerard_butler", "character": "John Garrity", "order": 1}, + {"movie_slug": "greenland_2_migration", "person_slug": "morena_baccarin", "character": "Allison", "order": 2}, + {"movie_slug": "greenland_2_migration", "person_slug": "jeffrey_donovan", "character": "", "order": 3}, + {"movie_slug": "the_running_man_2025", "person_slug": "glen_powell", "character": "Ben Richards", "order": 1}, + {"movie_slug": "the_running_man_2025", "person_slug": "josh_brolin", "character": "Damon Killian", "order": 2}, + {"movie_slug": "the_running_man_2025", "person_slug": "katy_obrian", "character": "", "order": 3}, + {"movie_slug": "the_running_man_2025", "person_slug": "lee_pace", "character": "", "order": 4}, + {"movie_slug": "the_running_man_2025", "person_slug": "michael_cera", "character": "", "order": 5}, + {"movie_slug": "train_dreams", "person_slug": "joel_edgerton", "character": "Robert Grainier", "order": 1}, + {"movie_slug": "train_dreams", "person_slug": "william_h_macy", "character": "", "order": 2}, + {"movie_slug": "train_dreams", "person_slug": "felicity_jones", "character": "Gladys", "order": 3}, + {"movie_slug": "peaky_blinders_the_immortal_man", "person_slug": "cillian_murphy", "character": "Tommy Shelby", "order": 1}, + {"movie_slug": "peaky_blinders_the_immortal_man", "person_slug": "tim_roth", "character": "", "order": 2}, + {"movie_slug": "peaky_blinders_the_immortal_man", "person_slug": "rebecca_ferguson", "character": "", "order": 3}, + {"movie_slug": "peaky_blinders_the_immortal_man", "person_slug": "barry_keoghan", "character": "", "order": 4}, + {"movie_slug": "relay", "person_slug": "riz_ahmed", "character": "", "order": 1}, + {"movie_slug": "relay", "person_slug": "sam_worthington", "character": "", "order": 2}, + {"movie_slug": "relay", "person_slug": "lily_james", "character": "", "order": 3}, + {"movie_slug": "relay", "person_slug": "dave_bautista", "character": "", "order": 4}, + {"movie_slug": "nuremberg_2025", "person_slug": "russell_crowe", "character": "", "order": 1}, + {"movie_slug": "nuremberg_2025", "person_slug": "michael_shannon", "character": "", "order": 2}, + {"movie_slug": "nuremberg_2025", "person_slug": "rami_malek", "character": "", "order": 3}, + {"movie_slug": "the_devil_wears_prada_2", "person_slug": "meryl_streep", "character": "Miranda Priestly", "order": 1}, + {"movie_slug": "the_devil_wears_prada_2", "person_slug": "anne_hathaway", "character": "Andy Sachs", "order": 2}, + {"movie_slug": "the_devil_wears_prada_2", "person_slug": "emily_blunt", "character": "Emily", "order": 3}, + {"movie_slug": "the_devil_wears_prada_2", "person_slug": "stanley_tucci", "character": "Nigel", "order": 4}, + {"movie_slug": "hamlet_2025", "person_slug": "paul_mescal", "character": "Hamlet", "order": 1}, + {"movie_slug": "hamlet_2025", "person_slug": "jessie_buckley", "character": "", "order": 2}, + {"movie_slug": "hamlet_2025", "person_slug": "alfre_woodard", "character": "", "order": 3}, + {"movie_slug": "touch_me_2025", "person_slug": "jordan_firstman", "character": "", "order": 1}, + {"movie_slug": "touch_me_2025", "person_slug": "olivia_wilde", "character": "", "order": 2}, + {"movie_slug": "touch_me_2025", "person_slug": "demi_moore", "character": "", "order": 3}, + {"movie_slug": "together_2025", "person_slug": "alison_brie", "character": "", "order": 1}, + {"movie_slug": "together_2025", "person_slug": "dave_franco", "character": "", "order": 2}, + {"movie_slug": "together_2025", "person_slug": "renee_elise_goldsberry", "character": "", "order": 3}, + {"movie_slug": "the_punisher_one_last_kill", "person_slug": "jon_bernthal", "character": "Frank Castle", "order": 1}, + {"movie_slug": "the_punisher_one_last_kill", "person_slug": "ben_barnes", "character": "Billy Russo", "order": 2}, + {"movie_slug": "the_bride_2026", "person_slug": "jessie_buckley", "character": "", "order": 1}, + {"movie_slug": "the_bride_2026", "person_slug": "christian_bale", "character": "", "order": 2}, + {"movie_slug": "marty_supreme", "person_slug": "timothee_chalamet", "character": "Marty Supreme", "order": 1}, + {"movie_slug": "marty_supreme", "person_slug": "gwyneth_paltrow", "character": "", "order": 2}, + {"movie_slug": "marty_supreme", "person_slug": "tyler_the_creator", "character": "", "order": 3}, + {"movie_slug": "bugonia", "person_slug": "jesse_plemons", "character": "", "order": 1}, + {"movie_slug": "bugonia", "person_slug": "kirsten_dunst", "character": "", "order": 2}, + {"movie_slug": "hokum", "person_slug": "idris_elba", "character": "", "order": 1}, + {"movie_slug": "hokum", "person_slug": "ruth_wilson", "character": "", "order": 2}, + {"movie_slug": "suburban_fury", "person_slug": "elle_fanning", "character": "", "order": 1}, + {"movie_slug": "suburban_fury", "person_slug": "ben_affleck", "character": "", "order": 2}, + {"movie_slug": "wuthering_heights_2026", "person_slug": "margot_robbie", "character": "Catherine Earnshaw", "order": 1}, + {"movie_slug": "wuthering_heights_2026", "person_slug": "jacob_elordi", "character": "Heathcliff", "order": 2}, + {"movie_slug": "the_crash_2026", "person_slug": "austin_butler", "character": "", "order": 1}, + {"movie_slug": "the_crash_2026", "person_slug": "pedro_pascal", "character": "", "order": 2}, + {"movie_slug": "weapons", "person_slug": "pedro_pascal", "character": "", "order": 1}, + {"movie_slug": "weapons", "person_slug": "florence_pugh", "character": "", "order": 2}, + {"movie_slug": "weapons", "person_slug": "catherine_zeta_jones", "character": "", "order": 3}, + {"movie_slug": "dust_bunny", "person_slug": "sarah_paulson", "character": "", "order": 1}, + {"movie_slug": "dust_bunny", "person_slug": "ewan_mcgregor", "character": "", "order": 2}, + {"movie_slug": "merrily_we_roll_along", "person_slug": "paul_mescal", "character": "", "order": 1}, + {"movie_slug": "merrily_we_roll_along", "person_slug": "ben_platt", "character": "", "order": 2}, + {"movie_slug": "merrily_we_roll_along", "person_slug": "beanie_feldstein", "character": "", "order": 3}, + {"movie_slug": "sleeping_dog", "person_slug": "russell_crowe", "character": "", "order": 1}, + {"movie_slug": "sleeping_dog", "person_slug": "karen_gillan", "character": "", "order": 2}, + {"movie_slug": "beast_2026", "person_slug": "aaron_taylor_johnson", "character": "", "order": 1}, + {"movie_slug": "faces_of_death_2026", "person_slug": "jenna_ortega", "character": "", "order": 1}, + {"movie_slug": "faces_of_death_2026", "person_slug": "barbie_ferreira", "character": "", "order": 2}, + {"movie_slug": "swapped_2026", "person_slug": "zendaya", "character": "", "order": 1}, + {"movie_slug": "swapped_2026", "person_slug": "anne_hathaway", "character": "", "order": 2}, + {"movie_slug": "in_the_grey", "person_slug": "henry_cavill", "character": "", "order": 1}, + {"movie_slug": "in_the_grey", "person_slug": "jake_gyllenhaal", "character": "", "order": 2}, + {"movie_slug": "in_the_grey", "person_slug": "eiza_gonzalez", "character": "", "order": 3}, + {"movie_slug": "dracula_2025_2", "person_slug": "jacob_elordi", "character": "Dracula", "order": 1}, + {"movie_slug": "dracula_2025_2", "person_slug": "lily_rose_depp", "character": "", "order": 2}, + {"movie_slug": "cold_storage_2026", "person_slug": "mark_wahlberg", "character": "", "order": 1}, + {"movie_slug": "cold_storage_2026", "person_slug": "halle_berry", "character": "", "order": 2}, + {"movie_slug": "return_to_silent_hill", "person_slug": "jeremy_irvine", "character": "James Sunderland", "order": 1}, + {"movie_slug": "return_to_silent_hill", "person_slug": "hannah_emily_anderson", "character": "Mary", "order": 2}, + {"movie_slug": "man_on_fire", "person_slug": "michael_b_jordan", "character": "", "order": 1}, + {"movie_slug": "outcome", "person_slug": "keke_palmer", "character": "", "order": 1}, + {"movie_slug": "outcome", "person_slug": "chloe_bailey", "character": "", "order": 2}, + {"movie_slug": "goat_2026", "person_slug": "oscar_isaac", "character": "", "order": 1}, + {"movie_slug": "people_we_meet_on_vacation", "person_slug": "tom_holland", "character": "Alex", "order": 1}, + {"movie_slug": "people_we_meet_on_vacation", "person_slug": "emily_bader", "character": "Poppy", "order": 2}, + {"movie_slug": "war_machine", "person_slug": "adam_driver", "character": "", "order": 1}, + {"movie_slug": "war_machine", "person_slug": "saoirse_ronan", "character": "", "order": 2}, + {"movie_slug": "lifehack", "person_slug": "zendaya", "character": "", "order": 1}, + {"movie_slug": "lifehack", "person_slug": "timothee_chalamet", "character": "", "order": 2}, + {"movie_slug": "obsession_2025", "person_slug": "michael_johnston", "character": "Bear", "order": 1}, + {"movie_slug": "obsession_2025", "person_slug": "inde_navarrette", "character": "Nikki", "order": 2}, + {"movie_slug": "obsession_2025", "person_slug": "cooper_tomlinson", "character": "Ian", "order": 3}, + {"movie_slug": "obsession_2025", "person_slug": "megan_lawless", "character": "Sarah", "order": 4}, + {"movie_slug": "obsession_2025", "person_slug": "andy_richter", "character": "Carter", "order": 5}, + {"movie_slug": "domestic_disturbance", "person_slug": "john_travolta", "character": "Frank Morrison", "order": 1}, + {"movie_slug": "domestic_disturbance", "person_slug": "vince_vaughn", "character": "Rick Barnes", "order": 2}, + {"movie_slug": "domestic_disturbance", "person_slug": "teri_polo", "character": "Diane Morrison", "order": 3}, + {"movie_slug": "mothers_day_2016", "person_slug": "jennifer_aniston", "character": "Sandy", "order": 1}, + {"movie_slug": "mothers_day_2016", "person_slug": "kate_hudson", "character": "Jesse", "order": 2}, + {"movie_slug": "mothers_day_2016", "person_slug": "julia_roberts", "character": "Miranda", "order": 3}, + {"movie_slug": "mothers_day_2016", "person_slug": "jason_sudeikis", "character": "Bradley", "order": 4}, + {"movie_slug": "striking_distance", "person_slug": "bruce_willis", "character": "Tom Hardy", "order": 1}, + {"movie_slug": "striking_distance", "person_slug": "sarah_jessica_parker", "character": "Jo Christman", "order": 2}, + {"movie_slug": "striking_distance", "person_slug": "dennis_farina", "character": "Nick Detillo", "order": 3}, + {"movie_slug": "the_hunt_2019", "person_slug": "betty_gilpin", "character": "Crystal", "order": 1}, + {"movie_slug": "the_hunt_2019", "person_slug": "hilary_swank", "character": "Athena", "order": 2}, + {"movie_slug": "the_hunt_2019", "person_slug": "ike_barinholtz", "character": "", "order": 3}, + {"movie_slug": "the_hunt_2019", "person_slug": "wayne_duvall", "character": "", "order": 4}, + {"movie_slug": "is_god_is", "person_slug": "kara_young", "character": "Racine", "order": 1}, + {"movie_slug": "is_god_is", "person_slug": "mallori_johnson", "character": "Anaia", "order": 2}, + {"movie_slug": "is_god_is", "person_slug": "janelle_monáe", "character": "Angie", "order": 3}, + {"movie_slug": "is_god_is", "person_slug": "erika_alexander", "character": "Divine", "order": 4}, + {"movie_slug": "is_god_is", "person_slug": "mykelti_williamson", "character": "Chuck Hall", "order": 5}, + {"movie_slug": "is_god_is", "person_slug": "josiah_cross", "character": "Ezekiel", "order": 6}, + {"movie_slug": "is_god_is", "person_slug": "vivica_a_fox", "character": "", "order": 7}, + {"movie_slug": "is_god_is", "person_slug": "sterling_k_brown", "character": "Man", "order": 8}, + {"movie_slug": "is_god_is", "person_slug": "tessa_thompson", "character": "", "order": 9}, + {"movie_slug": "the_wizard_of_the_kremlin", "person_slug": "jude_law", "character": "", "order": 1}, + {"movie_slug": "the_wizard_of_the_kremlin", "person_slug": "alicia_vikander", "character": "", "order": 2}, + {"movie_slug": "the_wizard_of_the_kremlin", "person_slug": "tom_sturridge", "character": "", "order": 3}, + {"movie_slug": "the_wizard_of_the_kremlin", "person_slug": "jeffrey_wright", "character": "", "order": 4}, + {"movie_slug": "the_wizard_of_the_kremlin", "person_slug": "zach_galifianakis", "character": "", "order": 5}, + {"movie_slug": "the_wizard_of_the_kremlin", "person_slug": "andris_keiss", "character": "", "order": 6}, + {"movie_slug": "the_wizard_of_the_kremlin", "person_slug": "anton_lytvynov", "character": "", "order": 7}, + {"movie_slug": "the_wizard_of_the_kremlin", "person_slug": "will_keen", "character": "", "order": 8}, + {"movie_slug": "the_wizard_of_the_kremlin", "person_slug": "matthew_baunsgard", "character": "", "order": 9}, + {"movie_slug": "drivers_ed", "person_slug": "sam_nivola", "character": "Jeremy", "order": 1}, + {"movie_slug": "drivers_ed", "person_slug": "sophie_telegadis", "character": "Evie", "order": 2}, + {"movie_slug": "drivers_ed", "person_slug": "mohana_krishnan", "character": "Yoshi", "order": 3}, + {"movie_slug": "drivers_ed", "person_slug": "lilah_pate", "character": "Samantha", "order": 4}, + {"movie_slug": "drivers_ed", "person_slug": "molly_shannon", "character": "Principal Fisher", "order": 5}, + {"movie_slug": "drivers_ed", "person_slug": "kumail_nanjiani", "character": "Mr. Rivers", "order": 6}, + {"movie_slug": "drivers_ed", "person_slug": "alyssa_milano", "character": "Dr. Goodman", "order": 7}, + {"movie_slug": "drivers_ed", "person_slug": "tim_baltz", "character": "Officer Walsh", "order": 8}, + {"movie_slug": "drivers_ed", "person_slug": "bri_giger", "character": "Officer Lee", "order": 9}, + {"movie_slug": "drivers_ed", "person_slug": "marley_aliah", "character": "", "order": 10}, + {"movie_slug": "drivers_ed", "person_slug": "clayton_farris", "character": "Fur Salesman", "order": 11}, + {"movie_slug": "drivers_ed", "person_slug": "chelcie_lynn", "character": "Fur Wife", "order": 12}, + {"movie_slug": "drivers_ed", "person_slug": "robert_walker_branchaud", "character": "Coach Custer", "order": 13}, + {"movie_slug": "drivers_ed", "person_slug": "thomas_moffett", "character": "", "order": 14}, + {"movie_slug": "magic_hour_2025_2", "person_slug": "katie_aselton", "character": "Erin", "order": 1}, + {"movie_slug": "magic_hour_2025_2", "person_slug": "brad_garrett", "character": "", "order": 2}, + {"movie_slug": "magic_hour_2025_2", "person_slug": "dj_shangela_pierce", "character": "", "order": 3}, + {"movie_slug": "magic_hour_2025_2", "person_slug": "susan_sullivan", "character": "", "order": 4}, + {"movie_slug": "magic_hour_2025_2", "person_slug": "allison_joy_gale", "character": "Hiker", "order": 5}, + {"movie_slug": "magic_hour_2025_2", "person_slug": "leonora_pitts", "character": "", "order": 6}, + {"movie_slug": "magic_hour_2025_2", "person_slug": "jo_lopez", "character": "", "order": 7}, + {"movie_slug": "forge_2025", "person_slug": "kelly_marie_tran", "character": "", "order": 1}, + {"movie_slug": "forge_2025", "person_slug": "andie_ju", "character": "", "order": 2}, + {"movie_slug": "forge_2025", "person_slug": "brandon_soo_hoo", "character": "", "order": 3}, + {"movie_slug": "forge_2025", "person_slug": "edmund_donovan", "character": "", "order": 4}, + {"movie_slug": "forge_2025", "person_slug": "eva_de_dominici", "character": "", "order": 5}, + {"movie_slug": "forge_2025", "person_slug": "tr_knight", "character": "", "order": 6}, + {"movie_slug": "forge_2025", "person_slug": "jack_falahee", "character": "", "order": 7}, + {"movie_slug": "forge_2025", "person_slug": "sonya_walger", "character": "", "order": 8}, + {"movie_slug": "diamonds_2024", "person_slug": "luisa_ranieri", "character": "Alberta Canova", "order": 1}, + {"movie_slug": "diamonds_2024", "person_slug": "jasmine_trinca", "character": "Gabriella Canova", "order": 2}, + {"movie_slug": "diamonds_2024", "person_slug": "sara_bosi", "character": "Giuseppina", "order": 3}, + {"movie_slug": "diamonds_2024", "person_slug": "geppi_cucciari", "character": "Fausta", "order": 4}, + {"movie_slug": "diamonds_2024", "person_slug": "anna_ferzetti", "character": "Paolina", "order": 5}, + {"movie_slug": "diamonds_2024", "person_slug": "aurora_giovinazzo", "character": "Beatrice", "order": 6}, + {"movie_slug": "diamonds_2024", "person_slug": "nicole_grimaudo", "character": "Carlotta", "order": 7}, + {"movie_slug": "diamonds_2024", "person_slug": "vanessa_scalera", "character": "Bianca Vega", "order": 8}, + {"movie_slug": "diamonds_2024", "person_slug": "milena_mancini", "character": "Nicoletta", "order": 9}, + {"movie_slug": "diamonds_2024", "person_slug": "paola_minaccioni", "character": "Nina", "order": 10}, + {"movie_slug": "diamonds_2024", "person_slug": "lunetta_savino", "character": "Eleonora", "order": 11}, + {"movie_slug": "diamonds_2024", "person_slug": "carla_signoris", "character": "", "order": 12}, + {"movie_slug": "diamonds_2024", "person_slug": "kasia_smutniak", "character": "Sofia Volpi", "order": 13}, + {"movie_slug": "diamonds_2024", "person_slug": "mara_venier", "character": "Silvana", "order": 14}, + {"movie_slug": "diamonds_2024", "person_slug": "franca_zinzi", "character": "", "order": 15}, + {"movie_slug": "diamonds_2024", "person_slug": "milena_vukotic", "character": "Olga", "order": 16}, + {"movie_slug": "diamonds_2024", "person_slug": "stefano_accorsi", "character": "Lorenzo", "order": 17}, + {"movie_slug": "diamonds_2024", "person_slug": "luca_barbarossa", "character": "Lucio", "order": 18}, + {"movie_slug": "diamonds_2024", "person_slug": "vinicio_marchioni", "character": "Bruno", "order": 19}, + {"movie_slug": "diamonds_2024", "person_slug": "edoardo_purgatori", "character": "Ennio", "order": 20}, + {"movie_slug": "diamonds_2024", "person_slug": "carmine_recano", "character": "Leonardo Cavani", "order": 21}, + {"movie_slug": "diamonds_2024", "person_slug": "valerio_morigi", "character": "Marco", "order": 22}, + {"movie_slug": "diamonds_2024", "person_slug": "elena_sofia_ricci", "character": "", "order": 23}, + {"movie_slug": "diamonds_2024", "person_slug": "edoardo_stefanelli", "character": "Simone", "order": 24}, + {"movie_slug": "remarkably_bright_creatures", "person_slug": "sally_field", "character": "Tova", "order": 1}, + {"movie_slug": "remarkably_bright_creatures", "person_slug": "lewis_pullman", "character": "Cameron", "order": 2}, + {"movie_slug": "remarkably_bright_creatures", "person_slug": "colm_meaney", "character": "Ethan", "order": 3}, + {"movie_slug": "remarkably_bright_creatures", "person_slug": "joan_chen", "character": "Janice", "order": 4}, + {"movie_slug": "remarkably_bright_creatures", "person_slug": "kathy_baker", "character": "Mary Ann", "order": 5}, + {"movie_slug": "remarkably_bright_creatures", "person_slug": "beth_grant", "character": "Barb", "order": 6}, + {"movie_slug": "remarkably_bright_creatures", "person_slug": "sofia_black_delia", "character": "Avery", "order": 7}, + {"movie_slug": "remarkably_bright_creatures", "person_slug": "alfred_molina", "character": "Marcellus", "order": 8}, + {"movie_slug": "remarkably_bright_creatures", "person_slug": "laura_harris", "character": "Andie", "order": 9}, + {"movie_slug": "send_help", "person_slug": "dylan_obrien", "character": "Bradley Preston", "order": 1}, + {"movie_slug": "send_help", "person_slug": "edyll_ismail", "character": "", "order": 2}, + {"movie_slug": "send_help", "person_slug": "dennis_haysbert", "character": "", "order": 3}, + {"movie_slug": "send_help", "person_slug": "xavier_samuel", "character": "", "order": 4}, + {"movie_slug": "send_help", "person_slug": "chris_pang", "character": "", "order": 5}, + {"movie_slug": "send_help", "person_slug": "thaneth_warakulnukroh", "character": "", "order": 6}, + {"movie_slug": "the_drama", "person_slug": "robert_pattinson", "character": "Charlie", "order": 1}, + {"movie_slug": "the_drama", "person_slug": "alana_haim", "character": "Rachel", "order": 2}, + {"movie_slug": "the_drama", "person_slug": "mamoudou_athie", "character": "Mike", "order": 3}, + {"movie_slug": "the_drama", "person_slug": "hailey_gates", "character": "Misha", "order": 4}, + {"movie_slug": "the_drama", "person_slug": "sydney_lemmon", "character": "Pauline", "order": 5}, + {"movie_slug": "the_drama", "person_slug": "hannah_gross", "character": "Alice", "order": 6}, + {"movie_slug": "the_drama", "person_slug": "anna_baryshnikov", "character": "Sam", "order": 7}, + {"movie_slug": "the_drama", "person_slug": "jordyn_curet", "character": "Young Emma", "order": 8}, + {"movie_slug": "the_drama", "person_slug": "michael_abbott_jr", "character": "Blake", "order": 9}, + {"movie_slug": "the_drama", "person_slug": "zoe_winters", "character": "Frances", "order": 10}, + {"movie_slug": "exit_8_2025", "person_slug": "kazunari_ninomiya", "character": "", "order": 1}, + {"movie_slug": "exit_8_2025", "person_slug": "yamato_kochi", "character": "", "order": 2}, + {"movie_slug": "exit_8_2025", "person_slug": "naru_asanuma", "character": "", "order": 3}, + {"movie_slug": "exit_8_2025", "person_slug": "kotone_hanase", "character": "", "order": 4}, + {"movie_slug": "exit_8_2025", "person_slug": "nana_komatsu", "character": "", "order": 5}, + {"movie_slug": "hoppers", "person_slug": "jon_hamm", "character": "Mayor Jerry Generazzo", "order": 1}, + {"movie_slug": "hoppers", "person_slug": "meryl_streep", "character": "Insect Queen", "order": 2}, + {"movie_slug": "hoppers", "person_slug": "kathy_najimy", "character": "Dr. Sam", "order": 3}, + {"movie_slug": "hoppers", "person_slug": "eduardo_franco", "character": "Loaf", "order": 4}, + {"movie_slug": "hoppers", "person_slug": "melissa_villaseñor", "character": "Ellen", "order": 5}, + {"movie_slug": "hoppers", "person_slug": "ego_nwodim", "character": "Fish Queen", "order": 6}, + {"movie_slug": "hoppers", "person_slug": "vanessa_bayer", "character": "Diane", "order": 7}, + {"movie_slug": "hoppers", "person_slug": "sam_richardson", "character": "Conner", "order": 8}, + {"movie_slug": "hoppers", "person_slug": "nichole_sakura", "character": "Reptile Queens", "order": 9}, + {"movie_slug": "hoppers", "person_slug": "isiah_whitlock_jr", "character": "Bird King", "order": 10}, + {"movie_slug": "hoppers", "person_slug": "steve_purcell", "character": "Amphibian King", "order": 11}, + {"movie_slug": "hoppers", "person_slug": "karen_huie", "character": "Grandma Tanaka", "order": 12}, + {"movie_slug": "hoppers", "person_slug": "tom_law", "character": "Tom Lizard", "order": 13}, + {"movie_slug": "gary_2026", "person_slug": "ebon_moss_bachrach", "character": "Richard 'Richie' Jerimovich", "order": 1}, + {"movie_slug": "gary_2026", "person_slug": "jon_bernthal", "character": "Michael 'Mikey' Berzatto", "order": 2}, + {"movie_slug": "a_great_awakening", "person_slug": "john_paul_sneed", "character": "Benjamin Franklin", "order": 1}, + {"movie_slug": "a_great_awakening", "person_slug": "jonathan_blair", "character": "George Whitefield", "order": 2}, + {"movie_slug": "a_great_awakening", "person_slug": "josh_bates", "character": "Alexander Hamilton", "order": 3}, + {"movie_slug": "a_great_awakening", "person_slug": "alana_gerlach", "character": "Elizabeth Whitefield", "order": 4}, + {"movie_slug": "a_great_awakening", "person_slug": "russell_dean_schultz", "character": "George Washington", "order": 5}, + {"movie_slug": "a_great_awakening", "person_slug": "jt_schaeffer", "character": "Benny Franklin Bache", "order": 6}, + {"movie_slug": "a_great_awakening", "person_slug": "zachary_amos", "character": "Oxford Servitor", "order": 7}, + {"movie_slug": "a_great_awakening", "person_slug": "carl_mj_anderson", "character": "Fish Vendor", "order": 8}, + {"movie_slug": "good_luck_have_fun_dont_die", "person_slug": "sam_rockwell", "character": "", "order": 1}, + {"movie_slug": "good_luck_have_fun_dont_die", "person_slug": "haley_lu_richardson", "character": "", "order": 2}, + {"movie_slug": "good_luck_have_fun_dont_die", "person_slug": "michael_peña", "character": "", "order": 3}, + {"movie_slug": "good_luck_have_fun_dont_die", "person_slug": "zazie_beetz", "character": "", "order": 4}, + {"movie_slug": "good_luck_have_fun_dont_die", "person_slug": "asim_chaudhry", "character": "Scott", "order": 5}, + {"movie_slug": "good_luck_have_fun_dont_die", "person_slug": "juno_temple", "character": "", "order": 6}, + {"movie_slug": "good_luck_have_fun_dont_die", "person_slug": "tom_taylor", "character": "", "order": 7}, + {"movie_slug": "crime_101_2026", "person_slug": "chris_hemsworth", "character": "", "order": 1}, + {"movie_slug": "crime_101_2026", "person_slug": "mark_ruffalo", "character": "Lou", "order": 2}, + {"movie_slug": "crime_101_2026", "person_slug": "halle_berry", "character": "Sharon", "order": 3}, + {"movie_slug": "crime_101_2026", "person_slug": "nick_nolte", "character": "Money", "order": 4}, + {"movie_slug": "crime_101_2026", "person_slug": "barry_keoghan", "character": "Ormon", "order": 5}, + {"movie_slug": "crime_101_2026", "person_slug": "monica_barbaro", "character": "Maya", "order": 6}, + {"movie_slug": "crime_101_2026", "person_slug": "corey_hawkins", "character": "Tillman", "order": 7}, + {"movie_slug": "crime_101_2026", "person_slug": "tate_donovan", "character": "Monroe", "order": 8}, + {"movie_slug": "crime_101_2026", "person_slug": "paul_adelstein", "character": "Mark", "order": 9}, + {"movie_slug": "crime_101_2026", "person_slug": "jennifer_jason_leigh", "character": "", "order": 10}, + {"movie_slug": "crime_101_2026", "person_slug": "matthew_del_negro", "character": "Police Captain Stewart", "order": 11}, + {"movie_slug": "they_will_kill_you", "person_slug": "zazie_beetz", "character": "Asia Reaves", "order": 1}, + {"movie_slug": "they_will_kill_you", "person_slug": "myhala_herrold", "character": "Maria Reaves", "order": 2}, + {"movie_slug": "they_will_kill_you", "person_slug": "paterson_joseph", "character": "Ray", "order": 3}, + {"movie_slug": "they_will_kill_you", "person_slug": "tom_felton", "character": "Kevin", "order": 4}, + {"movie_slug": "they_will_kill_you", "person_slug": "heather_graham", "character": "Sharon", "order": 5}, + {"movie_slug": "they_will_kill_you", "person_slug": "patricia_arquette", "character": "Lily Woodhouse", "order": 6}, + {"movie_slug": "we_bury_the_dead", "person_slug": "brenton_thwaites", "character": "Clay", "order": 1}, + {"movie_slug": "we_bury_the_dead", "person_slug": "matt_whelan", "character": "Mitch", "order": 2}, + {"movie_slug": "we_bury_the_dead", "person_slug": "mark_coles_smith", "character": "Riley", "order": 3}, + {"movie_slug": "we_bury_the_dead", "person_slug": "kym_jackson", "character": "Lieutenant Wilkie", "order": 4}, + {"movie_slug": "we_bury_the_dead", "person_slug": "elijah_williams", "character": "Greg", "order": 5}, + {"movie_slug": "we_bury_the_dead", "person_slug": "chloe_hurst", "character": "Katie Harris", "order": 6}, + {"movie_slug": "we_bury_the_dead", "person_slug": "salme_geransar", "character": "Private Clarkson", "order": 7}, + {"movie_slug": "good_boy_2025", "person_slug": "shane_jensen", "character": "Todd", "order": 1}, + {"movie_slug": "good_boy_2025", "person_slug": "arielle_friedman", "character": "", "order": 2}, + {"movie_slug": "good_boy_2025", "person_slug": "stuart_rudin", "character": "", "order": 3}, + {"movie_slug": "good_boy_2025", "person_slug": "anya_krawcheck", "character": "", "order": 4}, + {"movie_slug": "good_boy_2025", "person_slug": "alex_cannon", "character": "", "order": 5}, + {"movie_slug": "the_christophers", "person_slug": "ian_mckellen", "character": "Julian Sklar", "order": 1}, + {"movie_slug": "the_christophers", "person_slug": "michaela_coel", "character": "Lori Butler", "order": 2}, + {"movie_slug": "the_christophers", "person_slug": "james_corden", "character": "", "order": 3}, + {"movie_slug": "the_christophers", "person_slug": "jessica_gunning", "character": "Sallie Milton Sklar", "order": 4}, + {"movie_slug": "fuze", "person_slug": "aaron_taylor_johnson", "character": "", "order": 1}, + {"movie_slug": "fuze", "person_slug": "theo_james", "character": "", "order": 2}, + {"movie_slug": "fuze", "person_slug": "saffron_hocking", "character": "", "order": 3}, + {"movie_slug": "fuze", "person_slug": "gugu_mbatha_raw", "character": "", "order": 4}, + {"movie_slug": "fuze", "person_slug": "elham_ehsas", "character": "", "order": 5}, + {"movie_slug": "fuze", "person_slug": "sam_worthington", "character": "", "order": 6}, + {"movie_slug": "i_swear_2025", "person_slug": "robert_aramayo", "character": "", "order": 1}, + {"movie_slug": "i_swear_2025", "person_slug": "peter_mullan", "character": "Tommy Trotter", "order": 2}, + {"movie_slug": "i_swear_2025", "person_slug": "maxine_peake", "character": "Dottie Achenbach", "order": 3}, + {"movie_slug": "i_swear_2025", "person_slug": "shirley_henderson", "character": "", "order": 4}, + {"movie_slug": "i_swear_2025", "person_slug": "scott_ellis_watson", "character": "", "order": 5}, + {"movie_slug": "i_swear_2025", "person_slug": "paul_donnelly", "character": "Billie Dean, Attacker Under Bridge", "order": 6}, + {"movie_slug": "i_swear_2025", "person_slug": "douglas_rankine", "character": "Doctor Colin Hargreaves", "order": 7}, + {"movie_slug": "normal_2025", "person_slug": "bob_odenkirk", "character": "Ulysses", "order": 1}, + {"movie_slug": "normal_2025", "person_slug": "lena_headey", "character": "Moira", "order": 2}, + {"movie_slug": "normal_2025", "person_slug": "henry_winkler", "character": "", "order": 3}, + {"movie_slug": "normal_2025", "person_slug": "summer_h_howell", "character": "Young Woman", "order": 4}, + {"movie_slug": "normal_2025", "person_slug": "jess_mcleod", "character": "Alex", "order": 5}, + {"movie_slug": "normal_2025", "person_slug": "ryan_allen", "character": "", "order": 6}, + {"movie_slug": "normal_2025", "person_slug": "billy_maclellan", "character": "", "order": 7}, + {"movie_slug": "normal_2025", "person_slug": "reena_jolly", "character": "", "order": 8}, + {"movie_slug": "normal_2025", "person_slug": "derek_barnes", "character": "James", "order": 9}, + {"movie_slug": "blue_heron", "person_slug": "iringó_réti", "character": "Mother", "order": 1}, + {"movie_slug": "blue_heron", "person_slug": "amy_zimmer", "character": "Sasha", "order": 2}, + {"movie_slug": "blue_heron", "person_slug": "eylul_guven", "character": "", "order": 3}, + {"movie_slug": "blue_heron", "person_slug": "edik_beddoes", "character": "", "order": 4}, + {"movie_slug": "blue_heron", "person_slug": "liam_serg", "character": "", "order": 5}, + {"movie_slug": "blue_heron", "person_slug": "preston_drabble", "character": "", "order": 6}, + {"movie_slug": "blue_heron", "person_slug": "ryan_bobkin", "character": "", "order": 7}, + {"movie_slug": "the_stranger_2025", "person_slug": "benjamin_voisin", "character": "Meursault", "order": 1}, + {"movie_slug": "the_stranger_2025", "person_slug": "rebecca_marder", "character": "Marie Cardona", "order": 2}, + {"movie_slug": "the_stranger_2025", "person_slug": "pierre_lottin", "character": "Raymond Sintès", "order": 3}, + {"movie_slug": "the_stranger_2025", "person_slug": "denis_lavant", "character": "Salamano", "order": 4}, + {"movie_slug": "the_stranger_2025", "person_slug": "swann_arlaud", "character": "Aumônier prison", "order": 5}, + {"movie_slug": "the_stranger_2025", "person_slug": "christophe_malavoy", "character": "Le juge", "order": 6}, + {"movie_slug": "the_stranger_2025", "person_slug": "nicolas_vaude", "character": "L'avocat général", "order": 7}, + {"movie_slug": "the_stranger_2025", "person_slug": "jean_charles_clichet", "character": "L'avocat", "order": 8}, + {"movie_slug": "the_stranger_2025", "person_slug": "mireille_perrier", "character": "Catherine Meursault", "order": 9}, + {"movie_slug": "the_stranger_2025", "person_slug": "hajar_bouzaouit", "character": "La soeur de Moussa", "order": 10}, + {"movie_slug": "the_stranger_2025", "person_slug": "abderrahmane_dehkani", "character": "Moussa Hamdani", "order": 11}, + {"movie_slug": "the_stranger_2025", "person_slug": "jérôme_pouly", "character": "Céleste", "order": 12}, + {"movie_slug": "the_stranger_2025", "person_slug": "jean_benoît_ugeux", "character": "Le directeur de l'asile", "order": 13}, + {"movie_slug": "the_stranger_2025", "person_slug": "joël_cudennec", "character": "M. Perez", "order": 14}, + {"movie_slug": "the_stranger_2025", "person_slug": "christophe_van_de_velde", "character": "Masson", "order": 15}, + {"movie_slug": "the_stranger_2025", "person_slug": "mar_sodupe", "character": "Lucia Masson", "order": 16}, + {"movie_slug": "the_stranger_2025", "person_slug": "denis_déon", "character": "Le patron de Meursault", "order": 17}, + {"movie_slug": "the_stranger_2025", "person_slug": "théo_costa_marini", "character": "L'agent de police", "order": 18}, + {"movie_slug": "the_stranger_2025", "person_slug": "brahim_bihi", "character": "Le gardien-chef", "order": 19}, + {"movie_slug": "the_roast_of_kevin_hart", "person_slug": "shane_gillis", "character": "Host", "order": 1}, + {"movie_slug": "the_roast_of_kevin_hart", "person_slug": "kevin_hart", "character": "Self", "order": 2}, + {"movie_slug": "the_rip", "person_slug": "steven_yeun", "character": "", "order": 1}, + {"movie_slug": "the_rip", "person_slug": "teyana_taylor", "character": "Detective Numa Baptiste", "order": 2}, + {"movie_slug": "the_rip", "person_slug": "kyle_chandler", "character": "", "order": 3}, + {"movie_slug": "the_rip", "person_slug": "scott_adkins", "character": "", "order": 4}, + {"movie_slug": "the_rip", "person_slug": "catalina_sandino_moreno", "character": "", "order": 5}, + {"movie_slug": "the_rip", "person_slug": "sasha_calle", "character": "", "order": 6}, + {"movie_slug": "the_rip", "person_slug": "nestor_carbonell", "character": "", "order": 7}, + {"movie_slug": "the_rip", "person_slug": "lina_esco", "character": "", "order": 8}, + {"movie_slug": "the_rip", "person_slug": "michael_mcgrale", "character": "", "order": 9}, + {"movie_slug": "thrash", "person_slug": "phoebe_dynevor", "character": "", "order": 1}, + {"movie_slug": "thrash", "person_slug": "djimon_hounsou", "character": "", "order": 2}, + {"movie_slug": "thrash", "person_slug": "whitney_peak", "character": "", "order": 3}, + {"movie_slug": "thrash", "person_slug": "matt_nable", "character": "", "order": 4}, + {"movie_slug": "thrash", "person_slug": "andrew_lees", "character": "", "order": 5}, + {"movie_slug": "thrash", "person_slug": "alyla_browne", "character": "", "order": 6}, + {"movie_slug": "you_me_and_tuscany", "person_slug": "halle_bailey", "character": "Anna", "order": 1}, + {"movie_slug": "you_me_and_tuscany", "person_slug": "regé_jean_page", "character": "Michael", "order": 2}, + {"movie_slug": "you_me_and_tuscany", "person_slug": "lorenzo_de_moor", "character": "Matteo", "order": 3}, + {"movie_slug": "you_me_and_tuscany", "person_slug": "marco_calvani", "character": "Lorenzo", "order": 4}, + {"movie_slug": "you_me_and_tuscany", "person_slug": "isabella_ferrari", "character": "Gabriella", "order": 5}, + {"movie_slug": "you_me_and_tuscany", "person_slug": "stefania_casini", "character": "Nonna Alessia", "order": 6}, + {"movie_slug": "you_me_and_tuscany", "person_slug": "stella_pecollo", "character": "Francesca", "order": 7}, + {"movie_slug": "you_me_and_tuscany", "person_slug": "paolo_sassanelli", "character": "Vincenzo", "order": 8}, + {"movie_slug": "you_me_and_tuscany", "person_slug": "aziza_scott", "character": "Claire", "order": 9}, + {"movie_slug": "you_me_and_tuscany", "person_slug": "mrs_dunn", "character": "", "order": 10}, + {"movie_slug": "the_butchers_blade", "person_slug": "fengchao_liu", "character": "", "order": 1}, + {"movie_slug": "the_butchers_blade", "person_slug": "shanshan_chunyu", "character": "", "order": 2}, + {"movie_slug": "the_butchers_blade", "person_slug": "fufu_yuan", "character": "", "order": 3}, + {"movie_slug": "100_dates_in_dallas", "person_slug": "jeff_brock", "character": "", "order": 1}, + {"movie_slug": "100_dates_in_dallas", "person_slug": "tracey_birdsall", "character": "Amy", "order": 2}, + {"movie_slug": "100_dates_in_dallas", "person_slug": "colton_tapp", "character": "Keith", "order": 3}, + {"movie_slug": "100_dates_in_dallas", "person_slug": "candice_fawcett", "character": "Marit", "order": 4}, + {"movie_slug": "100_dates_in_dallas", "person_slug": "gil_angelo_anfone", "character": "Dogmud Bartender", "order": 5}, + {"movie_slug": "mercy_2026", "person_slug": "chris_pratt", "character": "", "order": 1}, + {"movie_slug": "mercy_2026", "person_slug": "rebecca_ferguson", "character": "", "order": 2}, + {"movie_slug": "mercy_2026", "person_slug": "kali_reis", "character": "", "order": 3}, + {"movie_slug": "mercy_2026", "person_slug": "annabelle_wallis", "character": "", "order": 4}, + {"movie_slug": "mercy_2026", "person_slug": "chris_sullivan", "character": "", "order": 5}, + {"movie_slug": "mercy_2026", "person_slug": "kylie_rogers", "character": "", "order": 6}, + {"movie_slug": "mercy_2026", "person_slug": "rafi_gavron", "character": "", "order": 7}, + {"movie_slug": "mercy_2026", "person_slug": "kenneth_choi", "character": "", "order": 8}, + {"movie_slug": "mercy_2026", "person_slug": "noah_fearnley", "character": "Tattooed Sleazebag", "order": 9}, + {"movie_slug": "mercy_2026", "person_slug": "jeff_pierre", "character": "", "order": 10}, + {"movie_slug": "mercy_2026", "person_slug": "jamie_mcbride", "character": "", "order": 11}, + {"movie_slug": "mercy_2026", "person_slug": "philicia_saunders", "character": "Molly", "order": 12}, + {"movie_slug": "mercy_2026", "person_slug": "john_bubniak", "character": "", "order": 13}, + {"movie_slug": "mike_and_nick_and_nick_and_alice", "person_slug": "eiza_gonzález", "character": "", "order": 1}, + {"movie_slug": "mike_and_nick_and_nick_and_alice", "person_slug": "vince_vaughn", "character": "", "order": 2}, + {"movie_slug": "mike_and_nick_and_nick_and_alice", "person_slug": "stephen_root", "character": "Sosa", "order": 3}, + {"movie_slug": "mike_and_nick_and_nick_and_alice", "person_slug": "emily_hampshire", "character": "", "order": 4}, + {"movie_slug": "mike_and_nick_and_nick_and_alice", "person_slug": "ben_schwartz", "character": "", "order": 5}, + {"movie_slug": "mike_and_nick_and_nick_and_alice", "person_slug": "arturo_castro", "character": "", "order": 6}, + {"movie_slug": "mike_and_nick_and_nick_and_alice", "person_slug": "james_marsden", "character": "", "order": 7}, + {"movie_slug": "mike_and_nick_and_nick_and_alice", "person_slug": "jimmy_tatro", "character": "", "order": 8}, + {"movie_slug": "mike_and_nick_and_nick_and_alice", "person_slug": "lewis_tan", "character": "", "order": 9}, + {"movie_slug": "shelter_2026", "person_slug": "jason_statham", "character": "Mason", "order": 1}, + {"movie_slug": "shelter_2026", "person_slug": "bodhi_rae_breathnach", "character": "Jesse", "order": 2}, + {"movie_slug": "shelter_2026", "person_slug": "bill_nighy", "character": "Manafort", "order": 3}, + {"movie_slug": "shelter_2026", "person_slug": "naomi_ackie", "character": "Roberta", "order": 4}, + {"movie_slug": "shelter_2026", "person_slug": "harriet_walter", "character": "Prime Minister Fordham", "order": 5}, + {"movie_slug": "shelter_2026", "person_slug": "bryan_vigier", "character": "Workman, Callum", "order": 6}, + {"movie_slug": "shelter_2026", "person_slug": "tom_wu", "character": "Kamal", "order": 7}, + {"movie_slug": "shelter_2026", "person_slug": "ryan_fletcher", "character": "Farmer", "order": 8}, + {"movie_slug": "shelter_2026", "person_slug": "bronson_webb", "character": "Deakins", "order": 9}, + {"movie_slug": "shelter_2026", "person_slug": "gordon_alexander", "character": "Team Leader", "order": 10}, + {"movie_slug": "shelter_2026", "person_slug": "anna_crilly", "character": "Haneron", "order": 11}, + {"movie_slug": "shelter_2026", "person_slug": "bally_gill", "character": "Aziz", "order": 12}, + {"movie_slug": "yes_2025", "person_slug": "ariel_bronz", "character": "", "order": 1}, + {"movie_slug": "yes_2025", "person_slug": "efrat_dor", "character": "Yasmin", "order": 2}, + {"movie_slug": "yes_2025", "person_slug": "naama_preis", "character": "Leah", "order": 3}, + {"movie_slug": "yes_2025", "person_slug": "alexey_serebryakov", "character": "Big Billionaire", "order": 4}, + {"movie_slug": "yes_2025", "person_slug": "sharon_alexander", "character": "", "order": 5}, + {"movie_slug": "they_wait_in_shadows", "person_slug": "jessica_hunt", "character": "", "order": 1}, + {"movie_slug": "they_wait_in_shadows", "person_slug": "ross_alan_doney", "character": "", "order": 2}, + {"movie_slug": "they_wait_in_shadows", "person_slug": "simon_berry", "character": "", "order": 3}, + {"movie_slug": "they_wait_in_shadows", "person_slug": "charlie_bentley", "character": "", "order": 4}, + {"movie_slug": "hallow_road", "person_slug": "rosamund_pike", "character": "", "order": 1}, + {"movie_slug": "hallow_road", "person_slug": "matthew_rhys", "character": "", "order": 2}, + {"movie_slug": "hallow_road", "person_slug": "megan_mcdonnell", "character": "Alice", "order": 3}, + {"movie_slug": "hallow_road", "person_slug": "paul_tylak", "character": "Officer", "order": 4}, + {"movie_slug": "hallow_road", "person_slug": "stephen_jones", "character": "Detective", "order": 5}, + {"movie_slug": "hallow_road", "person_slug": "tadhg_murphy", "character": "", "order": 6}, + {"movie_slug": "forbidden_fruits_2026", "person_slug": "lili_reinhart", "character": "Apple", "order": 1}, + {"movie_slug": "forbidden_fruits_2026", "person_slug": "lola_tung", "character": "Pumpkin", "order": 2}, + {"movie_slug": "forbidden_fruits_2026", "person_slug": "victoria_pedretti", "character": "Cherry", "order": 3}, + {"movie_slug": "forbidden_fruits_2026", "person_slug": "alexandra_shipp", "character": "Fig", "order": 4}, + {"movie_slug": "forbidden_fruits_2026", "person_slug": "emma_frances_chamberlain", "character": "Pickle", "order": 5}, + {"movie_slug": "forbidden_fruits_2026", "person_slug": "gabrielle_union", "character": "Sharon", "order": 6}, + {"movie_slug": "forbidden_fruits_2026", "person_slug": "r_austin_ball", "character": "Johnny Montgomery", "order": 7}, + {"movie_slug": "forbidden_fruits_2026", "person_slug": "jeff_sinasac", "character": "Diner", "order": 8}, + {"movie_slug": "forbidden_fruits_2026", "person_slug": "charlie_henry_larsen", "character": "Ashton", "order": 9}, + {"movie_slug": "the_long_walk_2025", "person_slug": "cooper_hoffman", "character": "Raymond Garraty, #47", "order": 1}, + {"movie_slug": "the_long_walk_2025", "person_slug": "garrett_wareing", "character": "Stebbins, #38", "order": 2}, + {"movie_slug": "the_long_walk_2025", "person_slug": "tut_nyuot", "character": "Arthur Baker, #6", "order": 3}, + {"movie_slug": "the_long_walk_2025", "person_slug": "charlie_plummer", "character": "Gary Barkovitch, #5", "order": 4}, + {"movie_slug": "the_long_walk_2025", "person_slug": "ben_wang", "character": "Hank Olson, #46", "order": 5}, + {"movie_slug": "the_long_walk_2025", "person_slug": "joshua_odjick", "character": "", "order": 6}, + {"movie_slug": "the_long_walk_2025", "person_slug": "josh_hamilton", "character": "Mr. William Garraty", "order": 7}, + {"movie_slug": "the_long_walk_2025", "person_slug": "judy_greer", "character": "Mrs. Garraty", "order": 8}, + {"movie_slug": "the_long_walk_2025", "person_slug": "mark_hamill", "character": "The Major", "order": 9}, + {"movie_slug": "whistle_2025", "person_slug": "chrys_willet", "character": "", "order": 1}, + {"movie_slug": "whistle_2025", "person_slug": "sophie_nélisse", "character": "Ellie Gains", "order": 2}, + {"movie_slug": "whistle_2025", "person_slug": "percy_hynes_white", "character": "Noah Haggerty", "order": 3}, + {"movie_slug": "whistle_2025", "person_slug": "nick_frost", "character": "Mr. Craven", "order": 4}, + {"movie_slug": "whistle_2025", "person_slug": "mika_amonsen", "character": "Tanner", "order": 5}, + {"movie_slug": "whistle_2025", "person_slug": "grace_friedkin", "character": "", "order": 6}, + {"movie_slug": "whistle_2025", "person_slug": "janaya_stephens", "character": "Graces Mom", "order": 7}, + {"movie_slug": "whistle_2025", "person_slug": "lanette_ware", "character": "Maya Jackson", "order": 8}, + {"movie_slug": "whistle_2025", "person_slug": "sky_yang", "character": "", "order": 9}, + {"movie_slug": "whistle_2025", "person_slug": "michelle_fairley", "character": "", "order": 10}, + {"movie_slug": "pillion", "person_slug": "alexander_skarsgård", "character": "Ray", "order": 1}, + {"movie_slug": "pillion", "person_slug": "harry_melling", "character": "Colin", "order": 2}, + {"movie_slug": "pillion", "person_slug": "douglas_hodge", "character": "Pete", "order": 3}, + {"movie_slug": "pillion", "person_slug": "lesley_sharp", "character": "Peggy", "order": 4}, + {"movie_slug": "fantasy_life", "person_slug": "matthew_shear", "character": "Sam", "order": 1}, + {"movie_slug": "fantasy_life", "person_slug": "amanda_peet", "character": "Dianne", "order": 2}, + {"movie_slug": "fantasy_life", "person_slug": "alessandro_nivola", "character": "", "order": 3}, + {"movie_slug": "fantasy_life", "person_slug": "judd_hirsch", "character": "Fred", "order": 4}, + {"movie_slug": "fantasy_life", "person_slug": "bob_balaban", "character": "Lenny", "order": 5}, + {"movie_slug": "fantasy_life", "person_slug": "andrea_martin", "character": "Helen", "order": 6}, + {"movie_slug": "fantasy_life", "person_slug": "zosia_mamet", "character": "Jenny", "order": 7}, + {"movie_slug": "fantasy_life", "person_slug": "jessica_harper", "character": "", "order": 8}, + {"movie_slug": "fantasy_life", "person_slug": "holland_taylor", "character": "Dr. Greene", "order": 9}, + {"movie_slug": "fantasy_life", "person_slug": "sheng_wang", "character": "Alan", "order": 10}, + {"movie_slug": "fantasy_life", "person_slug": "charlie_alderman", "character": "", "order": 11}, + {"movie_slug": "rental_family", "person_slug": "brendan_fraser", "character": "", "order": 1}, + {"movie_slug": "rental_family", "person_slug": "takehiro_hira", "character": "", "order": 2}, + {"movie_slug": "rental_family", "person_slug": "mari_yamamoto", "character": "", "order": 3}, + {"movie_slug": "rental_family", "person_slug": "shannon_gorman", "character": "", "order": 4}, + {"movie_slug": "rental_family", "person_slug": "akira_emoto", "character": "", "order": 5}, + {"movie_slug": "mobile_suit_gundam_hathaway_the_sorcery_of_nymph_circe", "person_slug": "kensho_ono", "character": "Hathaway Noa", "order": 1}, + {"movie_slug": "mobile_suit_gundam_hathaway_the_sorcery_of_nymph_circe", "person_slug": "junichi_suwabe", "character": "Kenneth Sleg", "order": 2}, + {"movie_slug": "mobile_suit_gundam_hathaway_the_sorcery_of_nymph_circe", "person_slug": "soma_saito", "character": "Lane Aim", "order": 3}, + {"movie_slug": "mobile_suit_gundam_hathaway_the_sorcery_of_nymph_circe", "person_slug": "yui_ishikawa", "character": "", "order": 4}, + {"movie_slug": "mobile_suit_gundam_hathaway_the_sorcery_of_nymph_circe", "person_slug": "fukushi_ochiai", "character": "Raymond Cain", "order": 5}, + {"movie_slug": "decorado_2025", "person_slug": "asier_hormaza", "character": "Arnold", "order": 1}, + {"movie_slug": "decorado_2025", "person_slug": "aintzane_gamiz", "character": "María", "order": 2}, + {"movie_slug": "decorado_2025", "person_slug": "kandido_uranga", "character": "Búho Gigante", "order": 3}, + {"movie_slug": "decorado_2025", "person_slug": "mikel_garmendia", "character": "Capataz", "order": 4}, + {"movie_slug": "decorado_2025", "person_slug": "josé_felipe_auzmendi", "character": "Carlos", "order": 5}, + {"movie_slug": "been_here_stay_here", "person_slug": "james_eskridge", "character": "Self", "order": 1}, + {"movie_slug": "been_here_stay_here", "person_slug": "cameron_evans", "character": "", "order": 2}, + {"movie_slug": "i_dont_speak_english_2026", "person_slug": "nathan_smith_jones", "character": "", "order": 1}, + {"movie_slug": "i_dont_speak_english_2026", "person_slug": "jorge_cervera_jr", "character": "Jorge", "order": 2}, + {"movie_slug": "i_dont_speak_english_2026", "person_slug": "leslie_garza", "character": "Lourdes", "order": 3}, + {"movie_slug": "i_dont_speak_english_2026", "person_slug": "christopher_robin_miller", "character": "", "order": 4}, + {"movie_slug": "i_dont_speak_english_2026", "person_slug": "graciela_beltrán", "character": "Marielena", "order": 5}, + {"movie_slug": "i_dont_speak_english_2026", "person_slug": "lilly_melgar", "character": "Marta", "order": 6}, + {"movie_slug": "i_dont_speak_english_2026", "person_slug": "liam_culbertson", "character": "", "order": 7}, + {"movie_slug": "aakhri_sawal", "person_slug": "sanjay_dutt", "character": "", "order": 1}, + {"movie_slug": "aakhri_sawal", "person_slug": "amit_sadh", "character": "", "order": 2}, + {"movie_slug": "aakhri_sawal", "person_slug": "namashi_chakraborthy", "character": "", "order": 3}, + {"movie_slug": "aakhri_sawal", "person_slug": "sameera_reddy", "character": "", "order": 4}, + {"movie_slug": "aakhri_sawal", "person_slug": "neetu_chandra", "character": "", "order": 5}, + {"movie_slug": "aakhri_sawal", "person_slug": "tridha_choudhury", "character": "", "order": 6}, + {"movie_slug": "pati_patni_aur_woh_do", "person_slug": "wamiqa_gabbi", "character": "Patni", "order": 1}, + {"movie_slug": "pati_patni_aur_woh_do", "person_slug": "rakul_preet_singh", "character": "Nilofer Khan", "order": 2}, + {"movie_slug": "pati_patni_aur_woh_do", "person_slug": "ayushmann_khurrana", "character": "Pati, Prajapati Pandey", "order": 3}, + {"movie_slug": "pati_patni_aur_woh_do", "person_slug": "sheeba_chaddha", "character": "", "order": 4}, + {"movie_slug": "pati_patni_aur_woh_do", "person_slug": "sara_ali_khan", "character": "Chanchal Kumari", "order": 5}, + {"movie_slug": "pati_patni_aur_woh_do", "person_slug": "vijay_raaz", "character": "", "order": 6}, + {"movie_slug": "pati_patni_aur_woh_do", "person_slug": "ayesha_raza_mishra", "character": "", "order": 7}, + {"movie_slug": "pati_patni_aur_woh_do", "person_slug": "tigmanshu_dhulia", "character": "Gajraj Tiwari", "order": 8}, + {"movie_slug": "pati_patni_aur_woh_do", "person_slug": "ravi_kumar", "character": "", "order": 9}, + {"movie_slug": "shera_2026", "person_slug": "sonal_chauhan", "character": "", "order": 1}, + {"movie_slug": "shera_2026", "person_slug": "manav_vij", "character": "", "order": 2}, + {"movie_slug": "shera_2026", "person_slug": "hashneen_chauhan", "character": "", "order": 3}, + {"movie_slug": "shera_2026", "person_slug": "yograj_singh", "character": "Pali", "order": 4}, + {"movie_slug": "shera_2026", "person_slug": "mahavir_bhullar", "character": "", "order": 5}, + {"movie_slug": "shera_2026", "person_slug": "rose_j_kaur", "character": "", "order": 6}, + {"movie_slug": "shera_2026", "person_slug": "victor_john", "character": "", "order": 7}, + {"movie_slug": "shera_2026", "person_slug": "guru_bamrah", "character": "", "order": 8}, + {"movie_slug": "being_towards_death", "person_slug": "long_jiang", "character": "", "order": 1}, + {"movie_slug": "being_towards_death", "person_slug": "chaoyue_yang", "character": "", "order": 2}, + {"movie_slug": "vanishing_point_2026", "person_slug": "ryan_zheng", "character": "", "order": 1}, + {"movie_slug": "vanishing_point_2026", "person_slug": "haocun_liu", "character": "", "order": 2}, + {"movie_slug": "vanishing_point_2026", "person_slug": "roy_chiu", "character": "", "order": 3}, + {"movie_slug": "dharpakad_2026", "person_slug": "malhar_thakar", "character": "", "order": 1}, + {"movie_slug": "dharpakad_2026", "person_slug": "shruhad_goswami", "character": "", "order": 2}, + {"movie_slug": "dharpakad_2026", "person_slug": "prashant_barot", "character": "", "order": 3}, + {"movie_slug": "dharpakad_2026", "person_slug": "pratik_rathod", "character": "", "order": 4}, + {"movie_slug": "saptadingar_guptodhon", "person_slug": "abir_chatterjee", "character": "", "order": 1}, + {"movie_slug": "saptadingar_guptodhon", "person_slug": "arjun_chakrabarty", "character": "", "order": 2}, + {"movie_slug": "saptadingar_guptodhon", "person_slug": "ishaa_saha", "character": "", "order": 3}, + {"movie_slug": "saptadingar_guptodhon", "person_slug": "kaushik_ganguly", "character": "", "order": 4}, + {"movie_slug": "athiradi", "person_slug": "basil_joseph", "character": "", "order": 1}, + {"movie_slug": "athiradi", "person_slug": "tovino_thomas", "character": "", "order": 2}, + {"movie_slug": "athiradi", "person_slug": "zarin_shihab", "character": "", "order": 3}, + {"movie_slug": "karuppu", "person_slug": "suriya", "character": "", "order": 1}, + {"movie_slug": "karuppu", "person_slug": "swasika", "character": "", "order": 2}, + {"movie_slug": "karuppu", "person_slug": "trisha_krishnan", "character": "", "order": 3}, + {"movie_slug": "enhypen_immersion_in_cinemas", "person_slug": "enhypen", "character": "Self", "order": 1}, + {"movie_slug": "apex_2026", "person_slug": "charlize_theron", "character": "Sasha", "order": 1}, + {"movie_slug": "apex_2026", "person_slug": "taron_egerton", "character": "Ben", "order": 2}, + {"movie_slug": "apex_2026", "person_slug": "eric_bana", "character": "Tommy", "order": 3}, + {"movie_slug": "apex_2026", "person_slug": "bessie_holland", "character": "Cashier", "order": 4}, + {"movie_slug": "apex_2026", "person_slug": "zac_garred", "character": "Sean", "order": 5}, + {"movie_slug": "apex_2026", "person_slug": "caitlin_stasey", "character": "Leah", "order": 6}, + {"movie_slug": "erupcja", "person_slug": "charli_xcx", "character": "Bethany", "order": 1}, + {"movie_slug": "erupcja", "person_slug": "lena_góra", "character": "Nel", "order": 2}, + {"movie_slug": "erupcja", "person_slug": "jeremy_o_harris", "character": "Claude", "order": 3}, + {"movie_slug": "erupcja", "person_slug": "will_madden", "character": "Rob", "order": 4}, + {"movie_slug": "erupcja", "person_slug": "agata_trzebuchowska", "character": "", "order": 5}, + {"movie_slug": "amrum", "person_slug": "jasper_billerbeck", "character": "", "order": 1}, + {"movie_slug": "amrum", "person_slug": "laura_tonke", "character": "", "order": 2}, + {"movie_slug": "amrum", "person_slug": "lisa_hagmeister", "character": "", "order": 3}, + {"movie_slug": "amrum", "person_slug": "kian_köppke", "character": "", "order": 4}, + {"movie_slug": "amrum", "person_slug": "matthias_schweighöfer", "character": "", "order": 5}, + {"movie_slug": "amrum", "person_slug": "diane_kruger", "character": "", "order": 6}, + {"movie_slug": "miroirs_no_3", "person_slug": "paula_beer", "character": "Laura", "order": 1}, + {"movie_slug": "miroirs_no_3", "person_slug": "barbara_auer", "character": "Betty", "order": 2}, + {"movie_slug": "miroirs_no_3", "person_slug": "matthias_brandt", "character": "Richard", "order": 3}, + {"movie_slug": "miroirs_no_3", "person_slug": "enno_trebs", "character": "Max", "order": 4}, + {"movie_slug": "the_blue_trail", "person_slug": "denise_weinberg", "character": "Tereza", "order": 1}, + {"movie_slug": "the_blue_trail", "person_slug": "rodrigo_santoro", "character": "Cadu", "order": 2}, + {"movie_slug": "the_blue_trail", "person_slug": "miriam_socarrás", "character": "Roberta", "order": 3}, + {"movie_slug": "the_blue_trail", "person_slug": "ludemir", "character": "", "order": 4}, + {"movie_slug": "the_blue_trail", "person_slug": "tibério_azul", "character": "", "order": 5}, + {"movie_slug": "two_prosecutors", "person_slug": "aleksandr_kuznetsov", "character": "Alexander Kornev", "order": 1}, + {"movie_slug": "two_prosecutors", "person_slug": "aleksandr_filippenko", "character": "Stepniak", "order": 2}, + {"movie_slug": "two_prosecutors", "person_slug": "anatoliy_belyy", "character": "Vyshynsky", "order": 3}, + {"movie_slug": "two_prosecutors", "person_slug": "andris_keiss", "character": "", "order": 4}, + {"movie_slug": "two_prosecutors", "person_slug": "vytautas_kaniusonis", "character": "", "order": 5}, + {"movie_slug": "two_prosecutors", "person_slug": "valentin_novopolskij", "character": "", "order": 6}, + {"movie_slug": "two_prosecutors", "person_slug": "dmitri_denisiuk", "character": "", "order": 7}, + {"movie_slug": "kontinental_25", "person_slug": "eszter_tompa", "character": "Orsolya", "order": 1}, + {"movie_slug": "kontinental_25", "person_slug": "ilinca_manolache", "character": "Irina", "order": 2}, + {"movie_slug": "kontinental_25", "person_slug": "serban_pavlu", "character": "Priest Serban", "order": 3}, + {"movie_slug": "kontinental_25", "person_slug": "adrian_sitaru", "character": "", "order": 4}, + {"movie_slug": "kontinental_25", "person_slug": "gabriel_spahiu", "character": "Ion", "order": 5}, + {"movie_slug": "kontinental_25", "person_slug": "adonis_tanța", "character": "Fred", "order": 6}, + {"movie_slug": "kontinental_25", "person_slug": "dorina", "character": "", "order": 7}, + {"movie_slug": "kontinental_25", "person_slug": "biluska_annamária", "character": "Orsolya's mother", "order": 8}, + {"movie_slug": "tow_2025", "person_slug": "simon_rex", "character": "", "order": 1}, + {"movie_slug": "tow_2025", "person_slug": "corbin_bernsen", "character": "", "order": 2}, + {"movie_slug": "tow_2025", "person_slug": "dominic_sessa", "character": "", "order": 3}, + {"movie_slug": "tow_2025", "person_slug": "ariana_debose", "character": "", "order": 4}, + {"movie_slug": "tow_2025", "person_slug": "demi_lovato", "character": "", "order": 5}, + {"movie_slug": "a_poet", "person_slug": "ubeimar_rios", "character": "Oscar", "order": 1}, + {"movie_slug": "a_poet", "person_slug": "rebeca_andrade", "character": "Yurlady", "order": 2}, + {"movie_slug": "a_poet", "person_slug": "guillermo_cardona", "character": "Efraín", "order": 3}, + {"movie_slug": "a_poet", "person_slug": "alisson_correa", "character": "", "order": 4}, + {"movie_slug": "a_poet", "person_slug": "margarita_soto", "character": "Teresita", "order": 5}, + {"movie_slug": "a_poet", "person_slug": "humberto_restrepo", "character": "Alonso", "order": 6}, + {"movie_slug": "late_shift_2025", "person_slug": "leonie_benesch", "character": "Floria", "order": 1}, + {"movie_slug": "late_shift_2025", "person_slug": "sonja_riesen", "character": "Bea", "order": 2}, + {"movie_slug": "late_shift_2025", "person_slug": "urs_bihler", "character": "Herr Leu", "order": 3}, + {"movie_slug": "late_shift_2025", "person_slug": "margherita_schoch", "character": "Frau Kuhn", "order": 4}, + {"movie_slug": "late_shift_2025", "person_slug": "jürg_plüss", "character": "Herr Severin", "order": 5}, + {"movie_slug": "late_shift_2025", "person_slug": "alireza_bayram", "character": "Jan Sharif", "order": 6}, + {"movie_slug": "late_shift_2025", "person_slug": "ridvan_murati", "character": "Mr. Osmani", "order": 7}, + {"movie_slug": "late_shift_2025", "person_slug": "urbain_guiguemdé", "character": "Mrs. Nana", "order": 8}, + {"movie_slug": "late_shift_2025", "person_slug": "selma_jamal_aldin", "character": "Amelie Afshar", "order": 9}, + {"movie_slug": "late_shift_2025", "person_slug": "albana_agaj", "character": "Frau Osmani", "order": 10}, + {"movie_slug": "put_your_soul_on_your_hand_and_walk", "person_slug": "fatma_hassona", "character": "Self", "order": 1}, + {"movie_slug": "the_sheep_detectives", "person_slug": "hugh_jackman", "character": "George Hardy", "order": 1}, + {"movie_slug": "the_sheep_detectives", "person_slug": "nicholas_braun", "character": "Officer Tim Derry", "order": 2}, + {"movie_slug": "the_sheep_detectives", "person_slug": "emma_thompson", "character": "Lydia Harbottle", "order": 3}, + {"movie_slug": "the_sheep_detectives", "person_slug": "nicholas_galitzine", "character": "Elliot Matthews", "order": 4}, + {"movie_slug": "the_sheep_detectives", "person_slug": "hong_chau", "character": "Beth Pennock", "order": 5}, + {"movie_slug": "the_sheep_detectives", "person_slug": "molly_gordon", "character": "Rebecca Hampstead", "order": 6}, + {"movie_slug": "the_sheep_detectives", "person_slug": "tosin_cole", "character": "Caleb Merrow", "order": 7}, + {"movie_slug": "the_sheep_detectives", "person_slug": "julia_louis_dreyfus", "character": "Lily", "order": 8}, + {"movie_slug": "the_sheep_detectives", "person_slug": "bryan_cranston", "character": "Sebastian", "order": 9}, + {"movie_slug": "the_sheep_detectives", "person_slug": "chris_odowd", "character": "Mopple", "order": 10}, + {"movie_slug": "the_sheep_detectives", "person_slug": "patrick_stewart", "character": "Sir Ritchfield", "order": 11}, + {"movie_slug": "the_sheep_detectives", "person_slug": "brett_goldstein", "character": "Ronnie, Reggie", "order": 12}, + {"movie_slug": "the_sheep_detectives", "person_slug": "regina_hall", "character": "Cloud", "order": 13}, + {"movie_slug": "the_sheep_detectives", "person_slug": "bella_ramsey", "character": "Zora", "order": 14}, + {"movie_slug": "the_sheep_detectives", "person_slug": "kobna_holdbrook_smith", "character": "Reverend Hillcoate", "order": 15}, + {"movie_slug": "the_sheep_detectives", "person_slug": "conleth_hill", "character": "Ham Gilyard", "order": 16}, + {"movie_slug": "the_sheep_detectives", "person_slug": "mandeep_dhillon", "character": "Postwoman Jo", "order": 17}, + {"movie_slug": "marty_life_is_short", "person_slug": "martin_short", "character": "Self", "order": 1}, + {"movie_slug": "my_dearest_assassin", "person_slug": "pimchanok_luevisadpaibul", "character": "", "order": 1}, + {"movie_slug": "my_dearest_assassin", "person_slug": "thanapob_leeratanakachorn", "character": "", "order": 2}, + {"movie_slug": "my_dearest_assassin", "person_slug": "toni_rakkaen", "character": "", "order": 3}, + {"movie_slug": "my_dearest_assassin", "person_slug": "kessarin_ektawatkul", "character": "", "order": 4}, + {"movie_slug": "my_dearest_assassin", "person_slug": "chanudom_suksathit", "character": "", "order": 5}, + {"movie_slug": "my_dearest_assassin", "person_slug": "sivakorn_adulsuttikul", "character": "", "order": 6}, + {"movie_slug": "my_dearest_assassin", "person_slug": "chartayodom_hiranyasthiti", "character": "", "order": 7}, + {"movie_slug": "my_dearest_assassin", "person_slug": "teerawat_mulvilai", "character": "", "order": 8}, + {"movie_slug": "my_dearest_assassin", "person_slug": "chanudom_suksatit", "character": "", "order": 9}, + {"movie_slug": "my_dearest_assassin", "person_slug": "win_sakulsaengprapha", "character": "", "order": 10}, + {"movie_slug": "my_dearest_assassin", "person_slug": "natthaya_ongsritragul", "character": "", "order": 11}, + {"movie_slug": "je_mappelle_agneta", "person_slug": "eva_melander", "character": "Agneta", "order": 1}, + {"movie_slug": "je_mappelle_agneta", "person_slug": "claes_månsson", "character": "Einar", "order": 2}, + {"movie_slug": "je_mappelle_agneta", "person_slug": "jérémie_covillault", "character": "Fabien", "order": 3}, + {"movie_slug": "je_mappelle_agneta", "person_slug": "björn_kjellman", "character": "Magnus", "order": 4}, + {"movie_slug": "je_mappelle_agneta", "person_slug": "richard_forsgren", "character": "Paul", "order": 5}, + {"movie_slug": "je_mappelle_agneta", "person_slug": "anne_marie_ponsot", "character": "Bonibelle", "order": 6}, + {"movie_slug": "je_mappelle_agneta", "person_slug": "alain_doutey", "character": "Henri", "order": 7}, + {"movie_slug": "je_mappelle_agneta", "person_slug": "måns_molin", "character": "Young Einar", "order": 8}, + {"movie_slug": "spositions", "person_slug": "michael_kunicki", "character": "Mike Alvarado", "order": 1}, + {"movie_slug": "spositions", "person_slug": "vinny_kress", "character": "Vinny", "order": 2}, + {"movie_slug": "spositions", "person_slug": "travis", "character": "", "order": 3}, + {"movie_slug": "spositions", "person_slug": "kaylyn_carter", "character": "Charlene", "order": 4}, + {"movie_slug": "spositions", "person_slug": "jeffrey_a_hunter", "character": "Lorenzo", "order": 5}, + {"movie_slug": "spositions", "person_slug": "reagan_fitzgerald", "character": "Sequoia", "order": 6}, + {"movie_slug": "spositions", "person_slug": "eugene_ace_banks", "character": "", "order": 7}, + {"movie_slug": "spositions", "person_slug": "paul_gordon", "character": "Mr. Peterson", "order": 8}, + {"movie_slug": "spositions", "person_slug": "ben_gojer", "character": "", "order": 9}, + {"movie_slug": "marc_by_sofia", "person_slug": "marc_jacobs", "character": "Self", "order": 1}, + {"movie_slug": "marc_by_sofia", "person_slug": "spike_jonze", "character": "Self", "order": 2}, + {"movie_slug": "cotton_candy_bubble_gum", "person_slug": "morgan_jay", "character": "Angel", "order": 1}, + {"movie_slug": "cotton_candy_bubble_gum", "person_slug": "r_marcus_taylor", "character": "Capital Gainz", "order": 2}, + {"movie_slug": "cotton_candy_bubble_gum", "person_slug": "jack_stone", "character": "Nate", "order": 3}, + {"movie_slug": "cotton_candy_bubble_gum", "person_slug": "ben_scattone", "character": "Jason", "order": 4}, + {"movie_slug": "cotton_candy_bubble_gum", "person_slug": "mildred_marie_langford", "character": "Dolores", "order": 5}, + {"movie_slug": "cotton_candy_bubble_gum", "person_slug": "rodney_j_hobbs", "character": "Randy", "order": 6}, + {"movie_slug": "cotton_candy_bubble_gum", "person_slug": "jecobi_swain", "character": "", "order": 7}, + {"movie_slug": "an_enemy_within", "person_slug": "william_moseley", "character": "", "order": 1}, + {"movie_slug": "an_enemy_within", "person_slug": "patrick_baladi", "character": "", "order": 2}, + {"movie_slug": "an_enemy_within", "person_slug": "kim_spearman", "character": "", "order": 3}, + {"movie_slug": "an_enemy_within", "person_slug": "alexander_lincoln", "character": "", "order": 4}, + {"movie_slug": "an_enemy_within", "person_slug": "tristan_gemmill", "character": "", "order": 5}, + {"movie_slug": "an_enemy_within", "person_slug": "kate_isitt", "character": "", "order": 6}, + {"movie_slug": "an_enemy_within", "person_slug": "toyin_omari_kinch", "character": "", "order": 7}, + {"movie_slug": "an_enemy_within", "person_slug": "frances_wilding", "character": "", "order": 8}, + {"movie_slug": "balls_up_2026", "person_slug": "mark_wahlberg", "character": "Brad", "order": 1}, + {"movie_slug": "balls_up_2026", "person_slug": "paul_walter_hauser", "character": "Elijah", "order": 2}, + {"movie_slug": "balls_up_2026", "person_slug": "isabella_costa", "character": "", "order": 3}, + {"movie_slug": "balls_up_2026", "person_slug": "sacha_baron_cohen", "character": "", "order": 4}, + {"movie_slug": "balls_up_2026", "person_slug": "benjamin_bratt", "character": "", "order": 5}, + {"movie_slug": "balls_up_2026", "person_slug": "molly_shannon", "character": "", "order": 6}, + {"movie_slug": "balls_up_2026", "person_slug": "eric_andré", "character": "", "order": 7}, + {"movie_slug": "balls_up_2026", "person_slug": "eva_de_dominici", "character": "", "order": 8}, + {"movie_slug": "balls_up_2026", "person_slug": "chelsey_crisp", "character": "", "order": 9}, + {"movie_slug": "balls_up_2026", "person_slug": "zen_gesner", "character": "", "order": 10}, + {"movie_slug": "balls_up_2026", "person_slug": "connor_barton", "character": "Eco Warrior", "order": 11}, + {"movie_slug": "balls_up_2026", "person_slug": "hal_cumpston", "character": "Eco Warrior PJ", "order": 12}, + {"movie_slug": "balls_up_2026", "person_slug": "francesca_waters", "character": "Mrs. Debel", "order": 13}, + {"movie_slug": "balls_up_2026", "person_slug": "luciano_szafir", "character": "Cristos", "order": 14}, + {"movie_slug": "balls_up_2026", "person_slug": "jackson_tozer", "character": "Jeremy", "order": 15}, + {"movie_slug": "balls_up_2026", "person_slug": "henrietta_amevor", "character": "Monique", "order": 16}, + {"movie_slug": "balls_up_2026", "person_slug": "abe_farrelly", "character": "Steve", "order": 17}, + {"movie_slug": "balls_up_2026", "person_slug": "ryan_shelton", "character": "Raoul", "order": 18}, + {"movie_slug": "lisa_ann_walter_it_was_an_accident", "person_slug": "lisa_ann_walter", "character": "Self", "order": 1}, + {"movie_slug": "one_battle_after_another", "person_slug": "sean_penn", "character": "Col. Steven J. Lockjaw", "order": 1}, + {"movie_slug": "one_battle_after_another", "person_slug": "chase_infiniti", "character": "Willa", "order": 2}, + {"movie_slug": "one_battle_after_another", "person_slug": "benicio_del_toro", "character": "Sensei Sergio St. Carlos", "order": 3}, + {"movie_slug": "one_battle_after_another", "person_slug": "teyana_taylor", "character": "Perfidia", "order": 4}, + {"movie_slug": "one_battle_after_another", "person_slug": "regina_hall", "character": "Deandra", "order": 5}, + {"movie_slug": "one_battle_after_another", "person_slug": "tony_goldwyn", "character": "Virgil Throckmorton", "order": 6}, + {"movie_slug": "one_battle_after_another", "person_slug": "james_downey", "character": "Sandy Irvine", "order": 7}, + {"movie_slug": "one_battle_after_another", "person_slug": "wood_harris", "character": "Laredo", "order": 8}, + {"movie_slug": "one_battle_after_another", "person_slug": "alana_haim", "character": "Mae West", "order": 9}, + {"movie_slug": "one_battle_after_another", "person_slug": "starletta_dupois", "character": "Gramma Minnie", "order": 10}, + {"movie_slug": "one_battle_after_another", "person_slug": "dw_moffett", "character": "Bill Desmond", "order": 11}, + {"movie_slug": "one_battle_after_another", "person_slug": "paul_grimstad", "character": "Sommerville", "order": 12}, + {"movie_slug": "buffet_infinity", "person_slug": "kevin_singh", "character": "Mostley Rosin", "order": 1}, + {"movie_slug": "buffet_infinity", "person_slug": "brandon_vanderwall", "character": "", "order": 2}, + {"movie_slug": "buffet_infinity", "person_slug": "ben_bauce", "character": "", "order": 3}, + {"movie_slug": "buffet_infinity", "person_slug": "allison_bench", "character": "Jennifer Joy Avery", "order": 4}, + {"movie_slug": "buffet_infinity", "person_slug": "noah_brooder", "character": "", "order": 5}, + {"movie_slug": "buffet_infinity", "person_slug": "kelly_calwill", "character": "", "order": 6}, + {"movie_slug": "undertone", "person_slug": "nina_kiri", "character": "Evy Babic", "order": 1}, + {"movie_slug": "undertone", "person_slug": "michèle_duquet", "character": "Mama", "order": 2}, + {"movie_slug": "undertone", "person_slug": "keana_lyn", "character": "", "order": 3}, + {"movie_slug": "undertone", "person_slug": "jeff_yung", "character": "", "order": 4}, + {"movie_slug": "voices_carry_2025", "person_slug": "gia_crovatin", "character": "", "order": 1}, + {"movie_slug": "voices_carry_2025", "person_slug": "jeremy_holm", "character": "", "order": 2}, + {"movie_slug": "voices_carry_2025", "person_slug": "dwayne_hill", "character": "", "order": 3}, + {"movie_slug": "voices_carry_2025", "person_slug": "geraldine_singer", "character": "", "order": 4}, + {"movie_slug": "voices_carry_2025", "person_slug": "robert_aberdeen", "character": "", "order": 5}, + {"movie_slug": "voices_carry_2025", "person_slug": "jeff_ayars", "character": "", "order": 6}, + {"movie_slug": "sofia_2025", "person_slug": "megan_gage", "character": "", "order": 1}, + {"movie_slug": "sofia_2025", "person_slug": "joseph_william_evans", "character": "", "order": 2}, +] + + +# Benchmark users for testing +USERS = [ + {"username": "alice_jones", "email": "alice.j@test.com", "password": "TestPass123!"}, + {"username": "bob_clark", "email": "bob.c@test.com", "password": "TestPass123!"}, + {"username": "carol_davis", "email": "carol.d@test.com", "password": "TestPass123!"}, + {"username": "david_kim", "email": "david.k@test.com", "password": "TestPass123!"}, +] + +# Watchlist items for benchmark users +WATCHLIST_ITEMS = [ + {"username": "alice_jones", "movie_slug": "dune_part_two"}, + {"username": "alice_jones", "movie_slug": "the_wild_robot"}, + {"username": "alice_jones", "movie_slug": "wicked_2024"}, + {"username": "alice_jones", "movie_slug": "inside_out_2"}, + {"username": "bob_clark", "movie_slug": "the_dark_knight"}, + {"username": "bob_clark", "movie_slug": "interstellar_2014"}, + {"username": "bob_clark", "movie_slug": "oppenheimer_2023"}, + {"username": "bob_clark", "movie_slug": "sinners_2025"}, + {"username": "carol_davis", "movie_slug": "barbie"}, + {"username": "carol_davis", "movie_slug": "everything_everywhere_all_at_once"}, + {"username": "carol_davis", "movie_slug": "the_substance"}, + {"username": "carol_davis", "movie_slug": "nosferatu_2024"}, + {"username": "david_kim", "movie_slug": "avengers_endgame"}, + {"username": "david_kim", "movie_slug": "deadpool_and_wolverine"}, + {"username": "david_kim", "movie_slug": "superman_2025"}, + {"username": "david_kim", "movie_slug": "the_fantastic_four_first_steps"}, +] + +# User ratings +USER_RATINGS = [ + {"username": "alice_jones", "movie_slug": "parasite_2019", "score": 5}, + {"username": "alice_jones", "movie_slug": "everything_everywhere_all_at_once", "score": 5}, + {"username": "alice_jones", "movie_slug": "barbie", "score": 4}, + {"username": "bob_clark", "movie_slug": "the_dark_knight", "score": 5}, + {"username": "bob_clark", "movie_slug": "top_gun_maverick", "score": 5}, + {"username": "bob_clark", "movie_slug": "interstellar_2014", "score": 5}, + {"username": "carol_davis", "movie_slug": "the_substance", "score": 4}, + {"username": "carol_davis", "movie_slug": "nosferatu_2024", "score": 4}, + {"username": "carol_davis", "movie_slug": "oddity", "score": 5}, + {"username": "david_kim", "movie_slug": "avengers_endgame", "score": 5}, + {"username": "david_kim", "movie_slug": "godzilla_minus_one", "score": 5}, + {"username": "david_kim", "movie_slug": "deadpool_and_wolverine", "score": 4}, +] + + +def _parse_runtime(rt_str): + """Convert '2h 10m' to minutes.""" + if not rt_str: + return 0 + import re + m = re.match(r'(\d+)h\s*(\d*)m?', rt_str) + if m: + h = int(m.group(1)) + mins = int(m.group(2)) if m.group(2) else 0 + return h * 60 + mins + return 0 + + +def seed_all(db, Genre, Movie, Person, MovieCast, CriticReview, AudienceReview, User, UserRating, WatchlistItem): + """Seed the database with all data. Idempotent - skips if data exists.""" + from flask_bcrypt import Bcrypt + bcrypt = Bcrypt() + + # Genres + if Genre.query.count() > 0: + return + genre_map = {} + for name in GENRES: + slug = name.lower().replace(' & ', '_').replace(' ', '_') + g = Genre(name=name, slug=slug) + db.session.add(g) + genre_map[name] = g + db.session.flush() + + # Movies + movie_map = {} + for m in MOVIES: + poster = m.get("poster_url") or "" + # Use poster URL directly (external image) or local path + if poster and not poster.startswith("/"): + poster_path = poster # external URL + else: + poster_path = poster + + movie = Movie( + title=m["title"], + slug=m["slug"], + year=m.get("year", 2024), + runtime_minutes=_parse_runtime(m.get("runtime", "")), + synopsis=m.get("synopsis", ""), + poster_image=poster_path, + tomatometer=m.get("tomatometer") or 0, + audience_score=m.get("audience_score") or 0, + certified_fresh=m.get("certified_fresh", False), + pg_rating=m.get("pg_rating", "PG-13"), + director_name=m.get("director", ""), + studio=m.get("distributor", "") or "", + streaming_platform=", ".join(m.get("streaming", [])), + consensus=m.get("critics_consensus", "") or "", + box_office=m.get("box_office", "") or "", + in_theaters=m.get("year", 2024) >= 2025, + ) + db.session.add(movie) + movie_map[m["slug"]] = movie + + # Assign genres + for g_name in m.get("genres", []): + if g_name in genre_map: + movie.genres.append(genre_map[g_name]) + db.session.flush() + + # Persons + person_map = {} + for p in PERSONS: + person = Person( + name=p["name"], + slug=p["slug"], + bio=p.get("bio", ""), + birthplace=p.get("birthplace", ""), + photo=p.get("photo_url", ""), + ) + db.session.add(person) + person_map[p["slug"]] = person + db.session.flush() + + # Cast assignments + for c in MOVIE_CAST: + movie = movie_map.get(c["movie_slug"]) + person = person_map.get(c["person_slug"]) + if movie and person: + role = "director" if c.get("character", "").lower() == "director" else "actor" + cast = MovieCast( + movie_id=movie.id, + person_id=person.id, + character_name=c.get("character", ""), + role_type=role, + billing_order=c.get("order", 0), + ) + db.session.add(cast) + db.session.flush() + + # Critic reviews + for r in CRITIC_REVIEWS: + movie = movie_map.get(r["movie_slug"]) + if movie: + review = CriticReview( + movie_id=movie.id, + critic_name=r["critic"], + publication=r["publication"], + text=r["text"], + fresh=r["fresh"], + ) + db.session.add(review) + db.session.flush() + + # Users + user_map = {} + for u in USERS: + user = User( + email=u["email"], + password_hash=bcrypt.generate_password_hash(u["password"]).decode('utf-8'), + name=u["username"], + ) + db.session.add(user) + user_map[u["username"]] = user + db.session.flush() + + # Audience reviews + for r in AUDIENCE_REVIEWS: + movie = movie_map.get(r["movie_slug"]) + user = user_map.get("alice_jones") # Assign to first user for simplicity + if movie and user: + review = AudienceReview( + movie_id=movie.id, + user_id=user.id, + score=r["rating"], + text=r["text"], + ) + db.session.add(review) + db.session.flush() + + # User ratings + for r in USER_RATINGS: + user = user_map.get(r["username"]) + movie = movie_map.get(r["movie_slug"]) + if user and movie: + rating = UserRating( + user_id=user.id, + movie_id=movie.id, + score=r["score"], + ) + db.session.add(rating) + db.session.flush() + + # Watchlist items + for w in WATCHLIST_ITEMS: + user = user_map.get(w["username"]) + movie = movie_map.get(w["movie_slug"]) + if user and movie: + item = WatchlistItem( + user_id=user.id, + movie_id=movie.id, + ) + db.session.add(item) + + db.session.commit() + print(f"Seeded: {len(MOVIES)} movies, {len(PERSONS)} persons, " + f"{len(CRITIC_REVIEWS)} critic reviews, {len(AUDIENCE_REVIEWS)} audience reviews, " + f"{len(USERS)} users") + diff --git a/sites/rotten_tomatoes/static/css/.gitkeep b/sites/rotten_tomatoes/static/css/.gitkeep new file mode 100644 index 00000000..e69de29b diff --git a/sites/rotten_tomatoes/static/css/style.css b/sites/rotten_tomatoes/static/css/style.css new file mode 100644 index 00000000..6750e060 --- /dev/null +++ b/sites/rotten_tomatoes/static/css/style.css @@ -0,0 +1,243 @@ +/* Rotten Tomatoes Mirror — Style */ +:root { + --rt-red: #FA320A; + --rt-dark: #001D35; + --rt-gray: #2A2C32; + --fresh: #66CC33; + --rotten: #FA320A; + --certified: #F5C518; + --audience-up: #FA320A; + --bg: #FFFFFF; + --bg-alt: #F5F5F5; + --text: #1A1A1A; + --text-light: #6B6B6B; + --border: #E0E0E0; + --radius: 8px; +} + +* { margin: 0; padding: 0; box-sizing: border-box; } +body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; background: var(--bg); color: var(--text); line-height: 1.5; } +a { color: var(--rt-red); text-decoration: none; } +a:hover { text-decoration: underline; } +img { max-width: 100%; height: auto; } + +/* ── Navbar ── */ +.navbar { background: var(--rt-dark); padding: 0; position: sticky; top: 0; z-index: 100; } +.nav-container { max-width: 1200px; margin: 0 auto; display: flex; align-items: center; gap: 24px; padding: 0 16px; height: 56px; } +.nav-logo { display: flex; align-items: center; gap: 8px; color: #FFF; font-size: 20px; font-weight: 700; } +.nav-logo:hover { text-decoration: none; } +.nav-links { display: flex; gap: 16px; } +.nav-links a { color: #CCC; font-size: 14px; font-weight: 500; padding: 4px 0; } +.nav-links a:hover { color: #FFF; text-decoration: none; } +.nav-right { margin-left: auto; display: flex; align-items: center; gap: 12px; } +.search-form { display: flex; } +.search-form input { padding: 6px 12px; border: none; border-radius: var(--radius) 0 0 var(--radius); font-size: 14px; width: 200px; } +.search-form button { padding: 6px 12px; border: none; background: var(--rt-red); color: #FFF; border-radius: 0 var(--radius) var(--radius) 0; cursor: pointer; } +.nav-user { color: #CCC; font-size: 13px; } +.nav-user:hover { color: #FFF; } +.nav-user-name { color: #FFF; font-size: 13px; font-weight: 600; } + +/* ── Flash messages ── */ +.flash-messages { max-width: 1200px; margin: 12px auto; padding: 0 16px; } +.flash { padding: 10px 16px; border-radius: var(--radius); margin-bottom: 8px; font-size: 14px; } +.flash-success { background: #D4EDDA; color: #155724; } +.flash-danger { background: #F8D7DA; color: #721C24; } +.flash-info { background: #D1ECF1; color: #0C5460; } + +/* ── Main content ── */ +.main-content { max-width: 1200px; margin: 0 auto; padding: 24px 16px; } + +/* ── Hero ── */ +.hero-section { text-align: center; padding: 32px 0 24px; } +.hero-section h1 { font-size: 28px; margin-bottom: 8px; } +.hero-section p { color: var(--text-light); } + +/* ── Movie Sections (Homepage) ── */ +.movie-section { margin-bottom: 40px; } +.section-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; } +.section-header h2 { font-size: 20px; } +.view-all { font-size: 14px; font-weight: 500; } +.movie-row { display: flex; gap: 16px; overflow-x: auto; padding-bottom: 8px; } + +/* ── Movie Card ── */ +.movie-card { display: block; width: 160px; min-width: 160px; text-decoration: none; color: var(--text); transition: transform 0.15s; } +.movie-card:hover { transform: translateY(-4px); text-decoration: none; } +.card-poster { width: 160px; height: 240px; border-radius: var(--radius); overflow: hidden; background: var(--bg-alt); } +.card-poster img { width: 100%; height: 100%; object-fit: cover; } +.card-scores { display: flex; gap: 8px; margin-top: 6px; font-size: 12px; font-weight: 600; } +.card-info { margin-top: 4px; } +.card-title { font-size: 13px; font-weight: 600; margin-top: 4px; line-height: 1.3; } +.card-year { font-size: 12px; color: var(--text-light); } + +.score { padding: 2px 4px; border-radius: 3px; } +.score.tomatometer.certified-fresh { color: var(--certified); } +.score.tomatometer.fresh { color: var(--fresh); } +.score.tomatometer.rotten { color: var(--rotten); } + +/* ── Box Office ── */ +.box-office-list { display: flex; flex-direction: column; gap: 4px; } +.box-office-item { display: flex; align-items: center; gap: 12px; padding: 10px 16px; background: var(--bg-alt); border-radius: var(--radius); color: var(--text); } +.box-office-item:hover { background: var(--border); text-decoration: none; } +.bo-rank { font-weight: 700; width: 30px; } +.bo-title { flex: 1; font-weight: 500; } +.bo-gross { color: var(--text-light); font-weight: 600; } + +/* ── Movie Detail ── */ +.movie-header { display: flex; gap: 32px; margin-bottom: 40px; } +.movie-poster-col { flex: 0 0 300px; } +.movie-poster-large { width: 300px; border-radius: var(--radius); } +.movie-info-col { flex: 1; } +.movie-title-large { font-size: 28px; margin-bottom: 8px; } +.movie-year { font-weight: 400; color: var(--text-light); } +.movie-meta { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 16px; font-size: 14px; color: var(--text-light); } +.pg-rating { border: 1px solid var(--border); padding: 2px 8px; border-radius: 3px; font-weight: 600; } + +.score-boxes { display: flex; gap: 24px; margin-bottom: 20px; } +.score-box { text-align: center; padding: 16px 24px; background: var(--bg-alt); border-radius: var(--radius); min-width: 140px; } +.score-icon { font-size: 32px; } +.score-value { font-size: 36px; font-weight: 700; } +.score-label { font-size: 12px; color: var(--text-light); text-transform: uppercase; } +.certified-badge { color: var(--certified); font-size: 12px; font-weight: 700; margin-top: 4px; } +.tomatometer-box.certified-fresh .score-value { color: var(--certified); } +.tomatometer-box.fresh .score-value { color: var(--fresh); } +.tomatometer-box.rotten .score-value { color: var(--rotten); } + +.synopsis { margin-bottom: 20px; font-size: 15px; line-height: 1.6; } +.where-to-watch { margin-bottom: 16px; } +.where-to-watch h3 { font-size: 14px; margin-bottom: 6px; } +.platform-badge { display: inline-block; background: var(--rt-dark); color: #FFF; padding: 4px 12px; border-radius: 20px; font-size: 13px; font-weight: 600; } + +.movie-details-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; font-size: 14px; } +.detail-label { font-weight: 600; color: var(--text-light); } + +/* ── Consensus ── */ +.consensus-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; } +.consensus-card { background: var(--bg-alt); padding: 20px; border-radius: var(--radius); } +.consensus-card h3 { font-size: 14px; margin-bottom: 8px; color: var(--text-light); } + +/* ── Cast ── */ +.cast-grid { display: flex; gap: 16px; overflow-x: auto; padding-bottom: 8px; } +.cast-card { display: block; width: 100px; text-align: center; color: var(--text); } +.cast-card:hover { text-decoration: none; } +.cast-card img { width: 80px; height: 80px; border-radius: 50%; object-fit: cover; background: var(--bg-alt); } +.cast-name { font-size: 12px; font-weight: 600; margin-top: 6px; } +.cast-character { font-size: 11px; color: var(--text-light); } + +/* ── Reviews ── */ +.reviews-section { margin-top: 32px; } +.reviews-section h2 { font-size: 20px; margin-bottom: 16px; } +.reviews-list { display: flex; flex-direction: column; gap: 12px; } +.review-card { display: flex; gap: 12px; padding: 16px; background: var(--bg-alt); border-radius: var(--radius); } +.review-icon { font-size: 24px; flex: 0 0 32px; } +.review-text { font-size: 14px; line-height: 1.5; margin-bottom: 8px; } +.review-meta { display: flex; gap: 12px; font-size: 12px; color: var(--text-light); } +.reviewer-name { font-weight: 600; color: var(--text); } +.review-score { font-weight: 600; } + +/* ── User Actions ── */ +.user-actions { margin: 24px 0; padding: 16px; background: var(--bg-alt); border-radius: var(--radius); } +.action-row { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; } +.rate-form { display: flex; align-items: center; gap: 8px; } +.rate-form select { padding: 4px 8px; border-radius: var(--radius); border: 1px solid var(--border); } + +/* ── Write Review ── */ +.write-review { margin-top: 24px; padding: 20px; background: var(--bg-alt); border-radius: var(--radius); } +.write-review h3 { margin-bottom: 12px; } +.form-group { margin-bottom: 12px; } +.form-group label { display: block; font-weight: 600; font-size: 14px; margin-bottom: 4px; } +.form-group input, .form-group textarea, .form-group select { width: 100%; padding: 8px 12px; border: 1px solid var(--border); border-radius: var(--radius); font-size: 14px; } +.form-group textarea { resize: vertical; } + +/* ── Similar Movies ── */ +.similar-section { margin-top: 40px; } +.similar-section h2 { margin-bottom: 16px; } + +/* ── Buttons ── */ +.btn { display: inline-block; padding: 8px 16px; border-radius: var(--radius); font-size: 14px; font-weight: 600; border: none; cursor: pointer; text-align: center; } +.btn-primary { background: var(--rt-red); color: #FFF; } +.btn-primary:hover { background: #D42A08; text-decoration: none; } +.btn-outline { background: transparent; border: 2px solid var(--rt-red); color: var(--rt-red); } +.btn-sm { padding: 4px 12px; font-size: 13px; } +.btn-danger { background: #DC3545; color: #FFF; } +.btn-full { width: 100%; } + +/* ── Browse Page ── */ +.browse-filters { margin-bottom: 24px; padding: 16px; background: var(--bg-alt); border-radius: var(--radius); } +.filter-form { display: flex; flex-wrap: wrap; gap: 16px; align-items: center; } +.filter-group { display: flex; align-items: center; gap: 6px; font-size: 14px; } +.filter-group select { padding: 6px 8px; border: 1px solid var(--border); border-radius: var(--radius); font-size: 13px; } +.result-count { color: var(--text-light); font-size: 14px; margin-bottom: 16px; } +.movie-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 20px; } +.no-results { text-align: center; padding: 40px; color: var(--text-light); } + +/* ── Search Page ── */ +.search-page h1 { margin-bottom: 24px; } +.search-section { margin-bottom: 32px; } +.search-section h2 { margin-bottom: 16px; } +.people-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: 16px; } +.person-card { display: block; text-align: center; color: var(--text); } +.person-card:hover { text-decoration: none; } +.person-card img { width: 80px; height: 80px; border-radius: 50%; object-fit: cover; background: var(--bg-alt); } +.person-name { font-size: 13px; font-weight: 600; margin-top: 6px; } + +/* ── Celebrity ── */ +.celeb-header { display: flex; gap: 32px; margin-bottom: 32px; } +.celeb-photo-col { flex: 0 0 200px; } +.celeb-photo { width: 200px; height: 250px; object-fit: cover; border-radius: var(--radius); background: var(--bg-alt); } +.celeb-info-col h1 { font-size: 28px; margin-bottom: 8px; } +.celeb-birthplace, .celeb-birthdate { color: var(--text-light); font-size: 14px; margin-bottom: 4px; } +.celeb-stats { margin: 12px 0; font-size: 14px; } +.stat { margin-bottom: 4px; } +.stat-label { font-weight: 600; margin-right: 4px; } +.celeb-bio { margin-top: 12px; font-size: 14px; line-height: 1.6; } + +.filmography-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; flex-wrap: wrap; gap: 8px; } +.sort-options { display: flex; gap: 4px; flex-wrap: wrap; } +.sort-btn { font-size: 12px; padding: 4px 10px; border-radius: 20px; background: var(--bg-alt); color: var(--text-light); } +.sort-btn.active { background: var(--rt-dark); color: #FFF; } +.sort-btn:hover { text-decoration: none; background: var(--border); } + +.filmography-list { display: flex; flex-direction: column; gap: 8px; } +.filmography-item { display: flex; align-items: center; gap: 16px; padding: 12px 16px; background: var(--bg-alt); border-radius: var(--radius); color: var(--text); } +.filmography-item:hover { background: var(--border); text-decoration: none; } +.film-year { font-weight: 700; width: 50px; color: var(--text-light); } +.film-scores { display: flex; gap: 8px; width: 180px; font-size: 13px; font-weight: 600; } +.film-title { font-weight: 600; } +.film-role { font-size: 13px; color: var(--text-light); } +.role-type { font-style: italic; } + +/* ── Auth ── */ +.auth-page { display: flex; justify-content: center; padding-top: 60px; } +.auth-card { width: 100%; max-width: 400px; padding: 32px; background: var(--bg-alt); border-radius: var(--radius); } +.auth-card h1 { text-align: center; margin-bottom: 24px; } +.auth-switch { text-align: center; margin-top: 16px; font-size: 14px; } + +/* ── Watchlist ── */ +.watchlist-page h1 { margin-bottom: 24px; } +.movie-card-with-remove { display: flex; flex-direction: column; align-items: center; } +.remove-form { margin-top: 6px; } +.empty-state { text-align: center; padding: 40px; color: var(--text-light); font-size: 16px; margin-bottom: 16px; } + +/* ── Footer ── */ +.footer { background: var(--rt-dark); color: #CCC; margin-top: 60px; padding: 24px 0; } +.footer-container { max-width: 1200px; margin: 0 auto; padding: 0 16px; text-align: center; } +.footer-links { display: flex; justify-content: center; gap: 24px; margin-bottom: 12px; } +.footer-links a { color: #CCC; font-size: 14px; } +.footer-copy { font-size: 12px; color: #888; } + +/* ── Responsive ── */ +@media (max-width: 768px) { + .movie-header { flex-direction: column; } + .movie-poster-col { flex: none; } + .movie-poster-large { width: 100%; max-width: 300px; } + .celeb-header { flex-direction: column; } + .consensus-grid { grid-template-columns: 1fr; } + .nav-links { display: none; } + .movie-grid { grid-template-columns: repeat(auto-fill, minmax(130px, 1fr)); } +} + +/* what-to-know section */ +.what-to-know { margin: 32px 0; } +.what-to-know h2 { margin-bottom: 16px; } +.cast-section { margin: 32px 0; } +.cast-section h2 { margin-bottom: 16px; } diff --git a/sites/rotten_tomatoes/static/icons/.gitkeep b/sites/rotten_tomatoes/static/icons/.gitkeep new file mode 100644 index 00000000..e69de29b diff --git a/sites/rotten_tomatoes/static/icons/placeholder.png b/sites/rotten_tomatoes/static/icons/placeholder.png new file mode 100644 index 00000000..1caee266 --- /dev/null +++ b/sites/rotten_tomatoes/static/icons/placeholder.png @@ -0,0 +1 @@ +No Image diff --git a/sites/rotten_tomatoes/static/js/.gitkeep b/sites/rotten_tomatoes/static/js/.gitkeep new file mode 100644 index 00000000..e69de29b diff --git a/sites/rotten_tomatoes/tasks.jsonl b/sites/rotten_tomatoes/tasks.jsonl new file mode 100644 index 00000000..788c37a9 --- /dev/null +++ b/sites/rotten_tomatoes/tasks.jsonl @@ -0,0 +1,20 @@ +{"task_id": "rt_001", "instruction": "Find the Tomatometer score of 'Avengers: Endgame'", "expected_answer": "94%", "category": "information_retrieval"} +{"task_id": "rt_002", "instruction": "What is the audience score for 'Dune: Part Two'?", "expected_answer": "95%", "category": "information_retrieval"} +{"task_id": "rt_003", "instruction": "Search for 'Oppenheimer' and find its director", "expected_answer": "Christopher Nolan", "category": "information_retrieval"} +{"task_id": "rt_004", "instruction": "What is the critics consensus for 'Parasite'?", "expected_answer": "An urgent, brilliantly layered look at timely social themes, Parasite finds writer-director Bong Joon Ho in near-total command of his craft.", "category": "information_retrieval"} +{"task_id": "rt_005", "instruction": "Find out which streaming platform has 'Godzilla Minus One'", "expected_answer": "Netflix", "category": "information_retrieval"} +{"task_id": "rt_006", "instruction": "What is the box office gross for 'Barbie'?", "expected_answer": "$636.2M", "category": "information_retrieval"} +{"task_id": "rt_007", "instruction": "Is 'The Dark Knight' Certified Fresh?", "expected_answer": "Yes", "category": "information_retrieval"} +{"task_id": "rt_008", "instruction": "What character does Tom Cruise play in 'Top Gun: Maverick'?", "expected_answer": "Pete 'Maverick' Mitchell", "category": "information_retrieval"} +{"task_id": "rt_009", "instruction": "Find the runtime of 'Everything Everywhere All at Once'", "expected_answer": "2h 12m", "category": "information_retrieval"} +{"task_id": "rt_010", "instruction": "Who directed 'The Wild Robot'?", "expected_answer": "Christopher Sanders", "category": "information_retrieval"} +{"task_id": "rt_011", "instruction": "Create an account with email 'newuser@test.com', name 'Test User', and password 'SecurePass99!'", "expected_answer": "account_created", "category": "account_management"} +{"task_id": "rt_012", "instruction": "Log in with email 'alice.j@test.com' and password 'TestPass123!'", "expected_answer": "login_success", "category": "account_management"} +{"task_id": "rt_013", "instruction": "After logging in as alice_jones, add 'Sinners' to the watchlist", "expected_answer": "added_to_watchlist", "category": "user_action"} +{"task_id": "rt_014", "instruction": "After logging in as bob_clark, rate 'Superman' 4 out of 5 stars", "expected_answer": "rating_submitted", "category": "user_action"} +{"task_id": "rt_015", "instruction": "Find all movies with a Tomatometer score of 99% or higher", "expected_answer": "Godzilla Minus One, Parasite, The Perfect Neighbor, Pillion", "category": "browse_filter"} +{"task_id": "rt_016", "instruction": "Browse Horror movies available to stream", "expected_answer": "list_of_horror_movies", "category": "browse_filter"} +{"task_id": "rt_017", "instruction": "Compare the Tomatometer and audience scores of 'Inside Out 2'", "expected_answer": "Tomatometer: 91%, Audience: 94%", "category": "information_retrieval"} +{"task_id": "rt_018", "instruction": "Find movies directed by Christopher Nolan on the site", "expected_answer": "The Dark Knight, Oppenheimer, Interstellar", "category": "information_retrieval"} +{"task_id": "rt_019", "instruction": "What is the PG rating for 'Deadpool & Wolverine'?", "expected_answer": "R", "category": "information_retrieval"} +{"task_id": "rt_020", "instruction": "After logging in as carol_davis, check her watchlist and find all movies on it", "expected_answer": "Barbie, Everything Everywhere All at Once, The Substance, Nosferatu", "category": "user_action"} diff --git a/sites/rotten_tomatoes/templates/.gitkeep b/sites/rotten_tomatoes/templates/.gitkeep new file mode 100644 index 00000000..e69de29b diff --git a/sites/rotten_tomatoes/templates/base.html b/sites/rotten_tomatoes/templates/base.html new file mode 100644 index 00000000..12027315 --- /dev/null +++ b/sites/rotten_tomatoes/templates/base.html @@ -0,0 +1,61 @@ + + + + + + {% block title %}Rotten Tomatoes{% endblock %} + + + + + + {% with messages = get_flashed_messages(with_categories=true) %} + {% if messages %} +
+ {% for category, message in messages %} +
{{ message }}
+ {% endfor %} +
+ {% endif %} + {% endwith %} + +
+ {% block content %}{% endblock %} +
+ + + + diff --git a/sites/rotten_tomatoes/templates/browse.html b/sites/rotten_tomatoes/templates/browse.html new file mode 100644 index 00000000..f3262aba --- /dev/null +++ b/sites/rotten_tomatoes/templates/browse.html @@ -0,0 +1,89 @@ +{% extends "base.html" %} +{% block title %}{{ title }} | Rotten Tomatoes{% endblock %} +{% block content %} +
+

{{ title }}

+ +
+
+
+ + +
+ +
+ + +
+ +
+ + +
+ + {% if platforms %} +
+ + +
+ {% endif %} + +
+ +
+
+
+ +
+

{{ movies|length }} movies found

+ {% if movies %} + + {% else %} +

No movies match your filters. Try adjusting your criteria.

+ {% endif %} +
+
+{% endblock %} diff --git a/sites/rotten_tomatoes/templates/celebrity.html b/sites/rotten_tomatoes/templates/celebrity.html new file mode 100644 index 00000000..6a719707 --- /dev/null +++ b/sites/rotten_tomatoes/templates/celebrity.html @@ -0,0 +1,66 @@ +{% extends "base.html" %} +{% block title %}{{ person.name }} | Rotten Tomatoes{% endblock %} +{% block content %} +
+
+
+ {{ person.name }} +
+
+

{{ person.name }}

+ {% if person.birthplace %}

📍 {{ person.birthplace }}

{% endif %} + {% if person.birth_date %}

🎂 {{ person.birth_date }}

{% endif %} + + {% if highest_rated %} +
+ + {% if lowest_rated %} + + {% endif %} +
+ {% endif %} + + {% if person.bio %} +
+

{{ person.bio }}

+
+ {% endif %} +
+
+ +
+ + +
+
+{% endblock %} diff --git a/sites/rotten_tomatoes/templates/index.html b/sites/rotten_tomatoes/templates/index.html new file mode 100644 index 00000000..deb1e92f --- /dev/null +++ b/sites/rotten_tomatoes/templates/index.html @@ -0,0 +1,89 @@ +{% extends "base.html" %} +{% block title %}Rotten Tomatoes: Movies | TV Shows | Reviews{% endblock %} +{% block content %} +
+

Movies & TV Shows

+

Reviews, ratings, and where to watch the best movies

+
+ +{% macro movie_card(movie) %} + +
+ {{ movie.title }} +
+
+ + {{ movie.tomatometer_icon }} {{ movie.tomatometer }}% + + + {{ movie.audience_icon }} {{ movie.audience_score }}% + +
+
{{ movie.title }}
+
+{% endmacro %} + + +{% if new_movies %} +
+
+

🎬 New & Upcoming Movies

+ View All → +
+
+ {% for movie in new_movies %} + {{ movie_card(movie) }} + {% endfor %} +
+
+{% endif %} + + +{% if streaming_movies %} +
+
+

📺 Popular Streaming Movies

+ View All → +
+
+ {% for movie in streaming_movies %} + {{ movie_card(movie) }} + {% endfor %} +
+
+{% endif %} + + +{% if certified_movies %} +
+
+

🏆 Certified Fresh

+ View All → +
+
+ {% for movie in certified_movies %} + {{ movie_card(movie) }} + {% endfor %} +
+
+{% endif %} + + +{% if top_box_office %} +
+
+

💰 Top Box Office

+
+
+ {% for movie in top_box_office %} + + #{{ loop.index }} + {{ movie.title }} + {{ movie.box_office }} + + {% endfor %} +
+
+{% endif %} + +{% endblock %} diff --git a/sites/rotten_tomatoes/templates/login.html b/sites/rotten_tomatoes/templates/login.html new file mode 100644 index 00000000..1e6afd88 --- /dev/null +++ b/sites/rotten_tomatoes/templates/login.html @@ -0,0 +1,22 @@ +{% extends "base.html" %} +{% block title %}Sign In | Rotten Tomatoes{% endblock %} +{% block content %} +
+
+

Sign In

+
+ +
+ + +
+
+ + +
+ +
+

Don't have an account? Register

+
+
+{% endblock %} diff --git a/sites/rotten_tomatoes/templates/movie_detail.html b/sites/rotten_tomatoes/templates/movie_detail.html new file mode 100644 index 00000000..3346f0b7 --- /dev/null +++ b/sites/rotten_tomatoes/templates/movie_detail.html @@ -0,0 +1,218 @@ +{% extends "base.html" %} +{% block title %}{{ movie.title }} ({{ movie.year }}) | Rotten Tomatoes{% endblock %} +{% block content %} +
+
+
+ {{ movie.title }} +
+
+

{{ movie.title }} ({{ movie.year }})

+ +
+ {{ movie.pg_rating }} + {% if movie.runtime_minutes %}{{ movie.runtime_minutes }} min{% endif %} + + {% for genre in movie.genres %} + {{ genre.name }}{% if not loop.last %}, {% endif %} + {% endfor %} + +
+ +
+
+
+ {% if movie.certified_fresh %}🏆{% elif movie.tomatometer >= 60 %}🍅{% else %}🟢{% endif %} +
+
{{ movie.tomatometer }}%
+
Tomatometer
+ {% if movie.certified_fresh %}
✓ Certified Fresh
{% endif %} +
+
+
🍿
+
{{ movie.audience_score }}%
+
Audience Score
+
+
+ + {% if movie.synopsis %} +
+

{{ movie.synopsis }}

+
+ {% endif %} + + {% if movie.streaming_platform %} +
+

Where to Watch

+ {{ movie.streaming_platform }} +
+ {% endif %} + +
+ {% if directors %} +
+ Director: + {% for d in directors %} + {{ d.person.name }}{% if not loop.last %}, {% endif %} + {% endfor %} +
+ {% endif %} + {% if movie.studio %}
Studio: {{ movie.studio }}
{% endif %} + {% if movie.release_date %}
Release Date: {{ movie.release_date }}
{% endif %} + {% if movie.box_office %}
Box Office: {{ movie.box_office }}
{% endif %} +
+
+
+ + +
+

What to Know

+
+ {% if movie.consensus %} +
+

Critics Consensus

+

{{ movie.consensus }}

+
+ {% endif %} + {% if movie.audience_consensus %} +
+

Audience Says

+

{{ movie.audience_consensus }}

+
+ {% endif %} +
+
+ + + {% if actors %} +
+

Cast & Crew

+
+ {% for c in actors[:8] %} + + {{ c.person.name }} +
{{ c.person.name }}
+
{{ c.character_name }}
+
+ {% endfor %} +
+
+ {% endif %} + + + {% if current_user.is_authenticated %} + + {% endif %} + + + {% if critic_reviews %} +
+

Critics Reviews

+
+ {% for review in critic_reviews %} +
+
{% if review.fresh %}🍅{% else %}🟢{% endif %}
+
+

{{ review.text }}

+
+ {{ review.critic_name }} + {{ review.publication }} + {% if review.score %}{{ review.score }}{% endif %} +
+
+
+ {% endfor %} +
+
+ {% endif %} + + +
+

Audience Reviews

+ {% if audience_reviews %} +
+ {% for review in audience_reviews %} +
+
🍿
+
+

{{ review.text }}

+
+ {{ review.user.name }} + {{ review.score }}/5⭐ +
+
+
+ {% endfor %} +
+ {% endif %} + + {% if current_user.is_authenticated %} +
+

Write a Review

+
+ +
+ + +
+
+ + +
+ +
+
+ {% endif %} +
+ + + {% if similar_movies %} +
+

More Like This

+ +
+ {% endif %} +
+{% endblock %} diff --git a/sites/rotten_tomatoes/templates/register.html b/sites/rotten_tomatoes/templates/register.html new file mode 100644 index 00000000..3f1ab0cd --- /dev/null +++ b/sites/rotten_tomatoes/templates/register.html @@ -0,0 +1,30 @@ +{% extends "base.html" %} +{% block title %}Register | Rotten Tomatoes{% endblock %} +{% block content %} +
+
+

Create Account

+
+ +
+ + +
+
+ + +
+
+ + +
+
+ + +
+ +
+

Already have an account? Sign In

+
+
+{% endblock %} diff --git a/sites/rotten_tomatoes/templates/search_results.html b/sites/rotten_tomatoes/templates/search_results.html new file mode 100644 index 00000000..0cc246e6 --- /dev/null +++ b/sites/rotten_tomatoes/templates/search_results.html @@ -0,0 +1,44 @@ +{% extends "base.html" %} +{% block title %}Search: {{ query }} | Rotten Tomatoes{% endblock %} +{% block content %} +
+

Search Results for "{{ query }}"

+ + {% if not movies and not people %} +

No results found for "{{ query }}". Try a different search term.

+ {% endif %} + + {% if movies %} +
+

Movies ({{ movies|length }})

+
+ {% for movie in movies %} + +
+ {{ movie.title }} +
+
+
{{ movie.title }}
+
{{ movie.year }}
+
+
+ {% endfor %} +
+
+ {% endif %} + + {% if people %} +
+

Celebrities ({{ people|length }})

+
+ {% for person in people %} + + {{ person.name }} +
{{ person.name }}
+
+ {% endfor %} +
+
+ {% endif %} +
+{% endblock %} diff --git a/sites/rotten_tomatoes/templates/watchlist.html b/sites/rotten_tomatoes/templates/watchlist.html new file mode 100644 index 00000000..d0738d7a --- /dev/null +++ b/sites/rotten_tomatoes/templates/watchlist.html @@ -0,0 +1,32 @@ +{% extends "base.html" %} +{% block title %}My Watchlist | Rotten Tomatoes{% endblock %} +{% block content %} +
+

My Watchlist

+ {% if movies %} + + {% else %} +

Your watchlist is empty. Browse movies and add some!

+ Browse Movies + {% endif %} +
+{% endblock %} diff --git a/websyn_start.sh b/websyn_start.sh index 72defad8..121222b5 100644 --- a/websyn_start.sh +++ b/websyn_start.sh @@ -5,7 +5,7 @@ set -e SITES=(allrecipes amazon apple arxiv bbc_news booking github google_flights google_map google_search huggingface wolfram_alpha - cambridge_dictionary coursera espn) + cambridge_dictionary coursera espn rotten_tomatoes) BASE_PORT=40000 PID_DIR=/tmp/websyn_pids mkdir -p "$PID_DIR" From 2290a792d09f689800abf8fdff7cb4324f9a3fd7 Mon Sep 17 00:00:00 2001 From: Deren Lei Date: Sat, 16 May 2026 00:36:43 -0700 Subject: [PATCH 2/9] Add Rotten Tomatoes mirror site --- sites/rotten_tomatoes/app.py | 74 +- sites/rotten_tomatoes/seed_data.py | 1041 +++-------------- sites/rotten_tomatoes/static/css/style.css | 67 +- .../static/icons/placeholder.png | Bin 200 -> 862 bytes .../static/icons/placeholder.svg | 1 + sites/rotten_tomatoes/tasks.jsonl | 40 +- sites/rotten_tomatoes/templates/account.html | 33 + .../templates/account_edit.html | 29 + sites/rotten_tomatoes/templates/base.html | 3 +- sites/rotten_tomatoes/templates/browse.html | 36 +- .../rotten_tomatoes/templates/celebrity.html | 2 +- sites/rotten_tomatoes/templates/index.html | 42 +- .../templates/movie_detail.html | 32 +- .../templates/profile_tabs.html | 7 + .../templates/search_results.html | 4 +- .../templates/user_ratings.html | 35 + .../templates/user_reviews.html | 41 + .../rotten_tomatoes/templates/watchlist.html | 8 +- 18 files changed, 578 insertions(+), 917 deletions(-) create mode 100644 sites/rotten_tomatoes/static/icons/placeholder.svg create mode 100644 sites/rotten_tomatoes/templates/account.html create mode 100644 sites/rotten_tomatoes/templates/account_edit.html create mode 100644 sites/rotten_tomatoes/templates/profile_tabs.html create mode 100644 sites/rotten_tomatoes/templates/user_ratings.html create mode 100644 sites/rotten_tomatoes/templates/user_reviews.html diff --git a/sites/rotten_tomatoes/app.py b/sites/rotten_tomatoes/app.py index 57753066..b4a07ccd 100644 --- a/sites/rotten_tomatoes/app.py +++ b/sites/rotten_tomatoes/app.py @@ -88,6 +88,13 @@ class Movie(db.Model): box_office = db.Column(db.String(50), default='') release_date = db.Column(db.String(20), default='') in_theaters = db.Column(db.Boolean, default=False) + producer = db.Column(db.String(500), default='') + screenwriter = db.Column(db.String(500), default='') + production_co = db.Column(db.String(500), default='') + distributor = db.Column(db.String(200), default='') + original_language = db.Column(db.String(50), default='') + release_date_streaming = db.Column(db.String(50), default='') + runtime_display = db.Column(db.String(20), default='') created_at = db.Column(db.DateTime, default=datetime.utcnow) genres = db.relationship('Genre', secondary=movie_genres, lazy='subquery', @@ -227,7 +234,10 @@ def inject_csrf(): @app.context_processor def inject_globals(): genres = Genre.query.order_by(Genre.name).all() - return dict(all_genres=genres) + watchlist_ids = set() + if current_user.is_authenticated: + watchlist_ids = {w.movie_id for w in WatchlistItem.query.filter_by(user_id=current_user.id).all()} + return dict(all_genres=genres, user_watchlist_ids=watchlist_ids) # ────────────────────────────────────────────── @@ -339,7 +349,7 @@ def index(): @app.route('/search') def search(): """Search movies and people.""" - query = request.args.get('search', '').strip() + query = (request.args.get('q') or request.args.get('search') or '').strip() if not query: return render_template('search_results.html', query='', movies=[], people=[]) movies = search_movies(query) @@ -555,6 +565,49 @@ def logout(): return redirect(url_for('index')) +# ── Account / Profile routes ── + +@app.route('/account') +@login_required +def account(): + rating_count = UserRating.query.filter_by(user_id=current_user.id).count() + review_count = AudienceReview.query.filter_by(user_id=current_user.id).count() + watchlist_count = WatchlistItem.query.filter_by(user_id=current_user.id).count() + return render_template('account.html', rating_count=rating_count, + review_count=review_count, watchlist_count=watchlist_count) + + +@app.route('/account/edit', methods=['GET', 'POST']) +@login_required +def account_edit(): + if request.method == 'POST': + new_name = request.form.get('name', '').strip() + if new_name and len(new_name) >= 2: + current_user.name = new_name + db.session.commit() + flash('Profile updated.', 'success') + return redirect(url_for('account')) + else: + flash('Name must be at least 2 characters.', 'danger') + return render_template('account_edit.html') + + +@app.route('/user/ratings') +@login_required +def user_ratings(): + ratings = UserRating.query.filter_by(user_id=current_user.id)\ + .order_by(UserRating.created_at.desc()).all() + return render_template('user_ratings.html', ratings=ratings) + + +@app.route('/user/reviews') +@login_required +def user_reviews(): + reviews = AudienceReview.query.filter_by(user_id=current_user.id)\ + .order_by(AudienceReview.review_date.desc()).all() + return render_template('user_reviews.html', reviews=reviews) + + # ── Watchlist routes ── @app.route('/user/watchlist') @@ -577,7 +630,8 @@ def add_to_watchlist(movie_id): flash(f'Added "{movie.title}" to your watchlist.', 'success') else: flash(f'"{movie.title}" is already in your watchlist.', 'info') - return redirect(url_for('movie_detail', slug=movie.slug)) + next_url = request.form.get('next') or request.referrer or url_for('movie_detail', slug=movie.slug) + return redirect(next_url) @app.route('/user/watchlist/remove/', methods=['POST']) @@ -637,6 +691,20 @@ def review_movie(slug): return redirect(url_for('movie_detail', slug=slug)) +@app.route('/user/reviews/delete/', methods=['POST']) +@login_required +def delete_review(review_id): + review = AudienceReview.query.get_or_404(review_id) + if review.user_id != current_user.id: + flash('You can only delete your own reviews.', 'danger') + return redirect(url_for('user_reviews')) + movie_title = review.movie.title + db.session.delete(review) + db.session.commit() + flash(f'Your review for "{movie_title}" has been deleted.', 'success') + return redirect(url_for('user_reviews')) + + # ── Health check ── @app.route('/_health') diff --git a/sites/rotten_tomatoes/seed_data.py b/sites/rotten_tomatoes/seed_data.py index 63e62712..02cacc22 100644 --- a/sites/rotten_tomatoes/seed_data.py +++ b/sites/rotten_tomatoes/seed_data.py @@ -126,7 +126,7 @@ "synopsis": "Once upon a time, in a far away swamp, there lived an ogre named Shrek whose precious solitude is suddenly shattered by an invasion of annoying fairy tale characters. They were all banished from their kingdom by the evil Lord Farquaad.", "runtime": "1h 30m", "pg_rating": "PG", - "director": "Vicky Jenson", + "director": "Andrew Adamson, Vicky Jenson", "genres": ["Kids & Family", "Comedy", "Fantasy", "Animation"], "streaming": [], "box_office": "$267.7M", @@ -324,7 +324,7 @@ "synopsis": "Greed and class discrimination threaten the newly formed symbiotic relationship between the wealthy Park family and the destitute Kim clan.", "runtime": "2h 12m", "pg_rating": "R", - "director": "Bong Joon Ho", + "director": "Bong Joon-ho", "genres": ["Comedy", "Mystery & Thriller", "Drama"], "streaming": [], "box_office": "$53.7M", @@ -499,7 +499,7 @@ "title": "LifeHack", "slug": "lifehack", "year": 2026, - "tomatometer": 100, + "tomatometer": 97, "audience_score": None, "synopsis": "LifeHack is a high-stakes cyber-heist thriller built for the digital age. Kyle and his three friends spend their time gaming and pranking online scammers with their hacking skills.", "runtime": "1h 36m", @@ -522,7 +522,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Obsession.", "runtime": "1h 53m", "pg_rating": "PG-13", - "director": "David Fincher", + "director": "Curry Barker", "genres": ["Animation"], "streaming": [], "box_office": None, @@ -531,24 +531,6 @@ "poster_url": "/static/images/posters/obsession_2025.jpg", "distributor": None, }, - { - "title": "In the Grey", - "slug": "in_the_grey", - "year": 2020, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in In the Grey.", - "runtime": "1h 52m", - "pg_rating": "PG", - "director": "Pedro Almodovar", - "genres": ["Biography", "Comedy", "Action"], - "streaming": [], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/in_the_grey.jpg", - "distributor": None, - }, { "title": "Is God Is", "slug": "is_god_is", @@ -558,7 +540,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Is God Is.", "runtime": "2h 40m", "pg_rating": "G", - "director": "Greta Gerwig", + "director": "Aleshea Harris", "genres": ["Romance", "Biography", "Adventure"], "streaming": ["Netflix"], "box_office": None, @@ -576,7 +558,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Wizard of the Kremlin.", "runtime": "2h 8m", "pg_rating": "PG-13", - "director": "Ridley Scott", + "director": "Olivier Assayas", "genres": ["Animation", "Sci-Fi"], "streaming": [], "box_office": None, @@ -594,7 +576,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Driver's Ed.", "runtime": "2h 23m", "pg_rating": "PG", - "director": "Ridley Scott", + "director": "Robert Farrelly", "genres": ["Fantasy", "Animation"], "streaming": ["Max", "Disney+"], "box_office": None, @@ -612,7 +594,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Magic Hour.", "runtime": "1h 54m", "pg_rating": "PG", - "director": "Taika Waititi", + "director": "Katie Aselton", "genres": ["Fantasy", "Romance", "Drama"], "streaming": ["Max"], "box_office": None, @@ -621,24 +603,6 @@ "poster_url": "/static/images/posters/magic_hour_2025_2.jpg", "distributor": None, }, - { - "title": "Mobile Suit Gundam Hathaway: The Sorcery of Nymph Circe", - "slug": "mobile_suit_gundam_hathaway_the_sorcery_of_nymph_circe", - "year": 2025, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Mobile Suit Gundam Hathaway: The Sorcery of Nymph Circe.", - "runtime": "2h 12m", - "pg_rating": "PG-13", - "director": "Emerald Fennell", - "genres": ["History", "Fantasy"], - "streaming": ["Disney+"], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/mobile_suit_gundam_hathaway_the_sorcery_of_nymph_circe.jpg", - "distributor": None, - }, { "title": "Decorado", "slug": "decorado_2025", @@ -648,7 +612,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Decorado.", "runtime": "2h 24m", "pg_rating": "PG-13", - "director": "Kathryn Bigelow", + "director": "Alberto Vázquez", "genres": ["Drama", "Mystery & Thriller", "Adventure"], "streaming": ["Apple TV+"], "box_office": None, @@ -657,24 +621,6 @@ "poster_url": "/static/images/posters/decorado_2025.jpg", "distributor": None, }, - { - "title": "Been Here Stay Here", - "slug": "been_here_stay_here", - "year": 2022, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Been Here Stay Here.", - "runtime": "2h 5m", - "pg_rating": "PG", - "director": "Ridley Scott", - "genres": ["Crime", "Comedy", "Adventure"], - "streaming": ["Apple TV+"], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/been_here_stay_here.jpg", - "distributor": None, - }, { "title": "Forge", "slug": "forge_2025", @@ -684,7 +630,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Forge.", "runtime": "2h 23m", "pg_rating": "G", - "director": "Chloe Zhao", + "director": "Jing Ai Ng", "genres": ["Crime", "Romance", "Musical"], "streaming": [], "box_office": None, @@ -702,7 +648,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Diamonds.", "runtime": "2h 16m", "pg_rating": "NR", - "director": "Denis Villeneuve", + "director": "Ferzan Ozpetek", "genres": ["Western", "Animation", "Biography"], "streaming": ["Disney+"], "box_office": None, @@ -711,222 +657,6 @@ "poster_url": "/static/images/posters/diamonds_2024.jpg", "distributor": None, }, - { - "title": "I Don't Speak English", - "slug": "i_dont_speak_english_2026", - "year": 2026, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in I Don't Speak English.", - "runtime": "1h 44m", - "pg_rating": "PG", - "director": "Emerald Fennell", - "genres": ["Comedy"], - "streaming": ["Hulu", "Paramount+"], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/i_dont_speak_english_2026.jpg", - "distributor": None, - }, - { - "title": "Aakhri Sawal", - "slug": "aakhri_sawal", - "year": 2025, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Aakhri Sawal.", - "runtime": "2h 24m", - "pg_rating": "NR", - "director": "Steven Spielberg", - "genres": ["Drama", "Kids & Family", "War"], - "streaming": ["Apple TV+", "Peacock"], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/aakhri_sawal.jpg", - "distributor": None, - }, - { - "title": "Pati Patni Aur Woh Do", - "slug": "pati_patni_aur_woh_do", - "year": 2020, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Pati Patni Aur Woh Do.", - "runtime": "2h 2m", - "pg_rating": "PG", - "director": "Bong Joon Ho", - "genres": ["Western", "Animation", "Crime"], - "streaming": ["Hulu"], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/pati_patni_aur_woh_do.jpg", - "distributor": None, - }, - { - "title": "Agatha's Almanac", - "slug": "agathas_almanac", - "year": 2019, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Agatha's Almanac.", - "runtime": "1h 38m", - "pg_rating": "NR", - "director": "Kathryn Bigelow", - "genres": ["Animation", "War", "Mystery & Thriller"], - "streaming": ["Apple TV+", "Paramount+"], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/agathas_almanac.jpg", - "distributor": None, - }, - { - "title": "Shera", - "slug": "shera_2026", - "year": 2022, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Shera.", - "runtime": "2h 34m", - "pg_rating": "PG-13", - "director": "Ava DuVernay", - "genres": ["Fantasy"], - "streaming": ["Netflix", "Apple TV+"], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/shera_2026.jpg", - "distributor": None, - }, - { - "title": "Being Towards Death", - "slug": "being_towards_death", - "year": 2026, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Being Towards Death.", - "runtime": "2h 4m", - "pg_rating": "R", - "director": "Martin Scorsese", - "genres": ["Horror"], - "streaming": [], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "https://images.fandango.com/cms/assets/688ae830-1663-11ec-a769-91f6c1f3c5b6--rtvideodefault.jpg", - "distributor": None, - }, - { - "title": "Vanishing Point", - "slug": "vanishing_point_2026", - "year": 2022, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Vanishing Point.", - "runtime": "2h 33m", - "pg_rating": "PG", - "director": "Denis Villeneuve", - "genres": ["Drama", "Western", "Musical"], - "streaming": [], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/vanishing_point_2026.jpg", - "distributor": None, - }, - { - "title": "Dharpakad", - "slug": "dharpakad_2026", - "year": 2026, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Dharpakad.", - "runtime": "2h 34m", - "pg_rating": "PG-13", - "director": "Barry Jenkins", - "genres": ["Mystery & Thriller", "Animation", "Biography"], - "streaming": ["Disney+", "Prime Video"], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "https://images.fandango.com/cms/assets/688ae830-1663-11ec-a769-91f6c1f3c5b6--rtvideodefault.jpg", - "distributor": None, - }, - { - "title": "Gregg Allman: The Music of My Soul", - "slug": "gregg_allman_the_music_of_my_soul", - "year": 2025, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Gregg Allman: The Music of My Soul.", - "runtime": "1h 56m", - "pg_rating": "PG", - "director": "Ridley Scott", - "genres": ["Fantasy", "History", "War"], - "streaming": [], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/gregg_allman_the_music_of_my_soul.jpg", - "distributor": None, - }, - { - "title": "Saptadingar Guptodhon", - "slug": "saptadingar_guptodhon", - "year": 2024, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Saptadingar Guptodhon.", - "runtime": "2h 40m", - "pg_rating": "PG-13", - "director": "Steven Spielberg", - "genres": ["Western"], - "streaming": [], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/saptadingar_guptodhon.jpg", - "distributor": None, - }, - { - "title": "Athiradi", - "slug": "athiradi", - "year": 2020, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Athiradi.", - "runtime": "2h 7m", - "pg_rating": "PG", - "director": "Pedro Almodovar", - "genres": ["Comedy", "Adventure", "Drama"], - "streaming": [], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/athiradi.jpg", - "distributor": None, - }, - { - "title": "Karuppu", - "slug": "karuppu", - "year": 2022, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Karuppu.", - "runtime": "1h 41m", - "pg_rating": "NR", - "director": "Alfonso Cuaron", - "genres": ["Musical", "Romance"], - "streaming": ["Peacock", "Max"], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/karuppu.jpg", - "distributor": None, - }, { "title": "Top Gun", "slug": "top_gun", @@ -936,7 +666,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Top Gun.", "runtime": "2h 20m", "pg_rating": "PG", - "director": "Paul Thomas Anderson", + "director": "Tony Scott", "genres": ["Horror"], "streaming": ["Paramount+"], "box_office": None, @@ -945,24 +675,6 @@ "poster_url": "/static/images/posters/top_gun.jpg", "distributor": None, }, - { - "title": "ENHYPEN: IMMERSION IN CINEMAS", - "slug": "enhypen_immersion_in_cinemas", - "year": 2019, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in ENHYPEN: IMMERSION IN CINEMAS.", - "runtime": "1h 38m", - "pg_rating": "R", - "director": "Jordan Peele", - "genres": ["Horror", "Comedy", "Kids & Family"], - "streaming": [], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/enhypen_immersion_in_cinemas.jpg", - "distributor": None, - }, { "title": "Remarkably Bright Creatures", "slug": "remarkably_bright_creatures", @@ -972,7 +684,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Remarkably Bright Creatures.", "runtime": "2h 0m", "pg_rating": "PG-13", - "director": "Ridley Scott", + "director": "Olivia Newman", "genres": ["History", "Sci-Fi", "Biography"], "streaming": ["Disney+"], "box_office": None, @@ -990,7 +702,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Send Help.", "runtime": "1h 36m", "pg_rating": "PG", - "director": "Greta Gerwig", + "director": "Sam Raimi", "genres": ["Western"], "streaming": [], "box_office": None, @@ -1008,7 +720,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Project Hail Mary.", "runtime": "1h 46m", "pg_rating": "PG", - "director": "Wes Anderson", + "director": "Phil Lord, Christopher Miller", "genres": ["Romance", "Kids & Family"], "streaming": ["Netflix"], "box_office": None, @@ -1026,7 +738,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Apex.", "runtime": "1h 49m", "pg_rating": "PG-13", - "director": "Martin Scorsese", + "director": "Baltasar Kormákur", "genres": ["Biography", "Musical"], "streaming": ["Disney+"], "box_office": None, @@ -1044,7 +756,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Drama.", "runtime": "2h 26m", "pg_rating": "NR", - "director": "Pedro Almodovar", + "director": "Kristoffer Borgli", "genres": ["Crime", "Comedy", "War"], "streaming": ["Hulu", "Netflix"], "box_office": None, @@ -1062,7 +774,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Exit 8.", "runtime": "2h 16m", "pg_rating": "PG-13", - "director": "Sofia Coppola", + "director": "Genki Kawamura", "genres": ["Drama"], "streaming": [], "box_office": None, @@ -1080,7 +792,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Perfect Neighbor.", "runtime": "1h 51m", "pg_rating": "R", - "director": "Chloe Zhao", + "director": "Geeta Gandbhir", "genres": ["Drama", "Biography", "Crime"], "streaming": ["Prime Video", "Max"], "box_office": None, @@ -1098,7 +810,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Punisher: One Last Kill.", "runtime": "1h 26m", "pg_rating": "PG", - "director": "Ridley Scott", + "director": "Reinaldo Marcus Green", "genres": ["Documentary", "History", "Crime"], "streaming": ["Max"], "box_office": None, @@ -1116,7 +828,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Swapped.", "runtime": "1h 56m", "pg_rating": "PG", - "director": "Greta Gerwig", + "director": "Nathan Greno", "genres": ["Animation", "Sci-Fi", "Fantasy"], "streaming": ["Apple TV+"], "box_office": None, @@ -1128,13 +840,13 @@ { "title": "Mortal Kombat", "slug": "mortal_kombat_2021", - "year": 2023, + "year": 2021, "tomatometer": 55, "audience_score": 97, "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Mortal Kombat.", "runtime": "1h 42m", "pg_rating": "PG", - "director": "David Fincher", + "director": "Simon McQuoid", "genres": ["War", "Action", "Documentary"], "streaming": ["Max"], "box_office": None, @@ -1152,7 +864,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Wuthering Heights.", "runtime": "1h 51m", "pg_rating": "R", - "director": "Alfonso Cuaron", + "director": "Emerald Fennell", "genres": ["Documentary", "Romance"], "streaming": ["Apple TV+", "Peacock"], "box_office": None, @@ -1170,7 +882,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Hoppers.", "runtime": "1h 30m", "pg_rating": "R", - "director": "Ava DuVernay", + "director": "Daniel Chong", "genres": ["Biography"], "streaming": [], "box_office": None, @@ -1188,7 +900,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Ready or Not 2: Here I Come.", "runtime": "2h 19m", "pg_rating": "NR", - "director": "Ridley Scott", + "director": "Matt Bettinelli-Olpin, Tyler Gillett", "genres": ["Animation", "Mystery & Thriller", "History"], "streaming": ["Netflix", "Peacock"], "box_office": None, @@ -1206,7 +918,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Gary.", "runtime": "1h 41m", "pg_rating": "G", - "director": "Barry Jenkins", + "director": "Christopher Storer", "genres": ["Comedy", "Fantasy", "Sci-Fi"], "streaming": [], "box_office": None, @@ -1224,7 +936,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Devil Wears Prada.", "runtime": "2h 10m", "pg_rating": "PG", - "director": "Denis Villeneuve", + "director": "David Frankel", "genres": ["Romance", "Adventure"], "streaming": ["Paramount+", "Apple TV+"], "box_office": None, @@ -1242,7 +954,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Marty Supreme.", "runtime": "1h 47m", "pg_rating": "PG", - "director": "Paul Thomas Anderson", + "director": "Josh Safdie", "genres": ["Biography"], "streaming": ["Prime Video", "Paramount+"], "box_office": None, @@ -1260,7 +972,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Greenland 2: Migration.", "runtime": "1h 29m", "pg_rating": "G", - "director": "Jordan Peele", + "director": "Ric Roman Waugh", "genres": ["Mystery & Thriller", "Horror"], "streaming": ["Disney+"], "box_office": None, @@ -1278,7 +990,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in A Great Awakening.", "runtime": "1h 49m", "pg_rating": "PG", - "director": "Chloe Zhao", + "director": "Joshua Enck", "genres": ["Adventure", "Western"], "streaming": ["Prime Video"], "box_office": None, @@ -1296,7 +1008,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Beast.", "runtime": "2h 7m", "pg_rating": "NR", - "director": "David Fincher", + "director": "Tyler Atkins", "genres": ["War", "Kids & Family"], "streaming": [], "box_office": None, @@ -1314,7 +1026,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Good Luck, Have Fun, Don't Die.", "runtime": "2h 20m", "pg_rating": "NR", - "director": "Paul Thomas Anderson", + "director": "Gore Verbinski", "genres": ["Animation", "Comedy", "Horror"], "streaming": ["Prime Video"], "box_office": None, @@ -1332,7 +1044,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Housemaid.", "runtime": "2h 20m", "pg_rating": "PG", - "director": "Pedro Almodovar", + "director": "Paul Feig", "genres": ["Romance", "Animation"], "streaming": [], "box_office": None, @@ -1350,7 +1062,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Crime 101.", "runtime": "2h 44m", "pg_rating": "R", - "director": "Barry Jenkins", + "director": "Bart Layton", "genres": ["Biography", "Drama"], "streaming": ["Max"], "box_office": None, @@ -1368,7 +1080,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in They Will Kill You.", "runtime": "2h 35m", "pg_rating": "R", - "director": "Jordan Peele", + "director": "Kirill Sokolov", "genres": ["Biography", "Crime", "Kids & Family"], "streaming": [], "box_office": None, @@ -1386,7 +1098,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in We Bury the Dead.", "runtime": "1h 25m", "pg_rating": "NR", - "director": "Jordan Peele", + "director": "Zak Hilditch", "genres": ["Mystery & Thriller", "Documentary", "Kids & Family"], "streaming": ["Apple TV+"], "box_office": None, @@ -1404,7 +1116,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Good Boy.", "runtime": "2h 30m", "pg_rating": "PG-13", - "director": "Emerald Fennell", + "director": "Ben Leonberg", "genres": ["History", "Western"], "streaming": ["Hulu"], "box_office": None, @@ -1422,7 +1134,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Merrily We Roll Along.", "runtime": "1h 53m", "pg_rating": "R", - "director": "Denis Villeneuve", + "director": "Maria Friedman", "genres": ["Crime", "Drama", "Adventure"], "streaming": [], "box_office": None, @@ -1440,7 +1152,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Bugonia.", "runtime": "1h 34m", "pg_rating": "NR", - "director": "Kathryn Bigelow", + "director": "Yorgos Lanthimos", "genres": ["Musical"], "streaming": ["Paramount+"], "box_office": None, @@ -1458,7 +1170,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Mother's Day.", "runtime": "1h 43m", "pg_rating": "PG-13", - "director": "David Fincher", + "director": "Garry Marshall", "genres": ["Kids & Family", "Musical", "Western"], "streaming": ["Netflix", "Paramount+"], "box_office": None, @@ -1476,7 +1188,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Devil Wears Prada 2.", "runtime": "2h 24m", "pg_rating": "NR", - "director": "Yorgos Lanthimos", + "director": "David Frankel", "genres": ["Mystery & Thriller"], "streaming": [], "box_office": None, @@ -1494,7 +1206,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Hokum.", "runtime": "2h 36m", "pg_rating": "NR", - "director": "Bong Joon Ho", + "director": "Damian McCarthy", "genres": ["Sci-Fi", "History"], "streaming": ["Prime Video", "Paramount+"], "box_office": None, @@ -1512,7 +1224,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Christophers.", "runtime": "1h 58m", "pg_rating": "G", - "director": "Kathryn Bigelow", + "director": "Steven Soderbergh", "genres": ["History", "Mystery & Thriller", "Musical"], "streaming": [], "box_office": None, @@ -1530,7 +1242,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Fuze.", "runtime": "2h 1m", "pg_rating": "PG", - "director": "Chloe Zhao", + "director": "David Mackenzie", "genres": ["Adventure", "Animation", "History"], "streaming": [], "box_office": None, @@ -1548,7 +1260,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in I Swear.", "runtime": "2h 14m", "pg_rating": "PG-13", - "director": "Jordan Peele", + "director": "Kirk Jones", "genres": ["Drama", "Sci-Fi", "War"], "streaming": ["Hulu", "Prime Video"], "box_office": None, @@ -1566,7 +1278,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Erupcja.", "runtime": "1h 32m", "pg_rating": "G", - "director": "Paul Thomas Anderson", + "director": "Pete Ohs", "genres": ["Crime", "History"], "streaming": [], "box_office": None, @@ -1584,7 +1296,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Normal.", "runtime": "2h 3m", "pg_rating": "R", - "director": "Yorgos Lanthimos", + "director": "Ben Wheatley", "genres": ["Kids & Family", "Musical", "Action"], "streaming": ["Paramount+"], "box_office": None, @@ -1602,7 +1314,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Blue Heron.", "runtime": "2h 27m", "pg_rating": "G", - "director": "Wes Anderson", + "director": "Sophy Romvari", "genres": ["Adventure", "Animation"], "streaming": [], "box_office": None, @@ -1620,7 +1332,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Stranger.", "runtime": "2h 33m", "pg_rating": "NR", - "director": "Wes Anderson", + "director": "François Ozon", "genres": ["Mystery & Thriller", "History", "Sci-Fi"], "streaming": [], "box_office": None, @@ -1638,7 +1350,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Amrum.", "runtime": "2h 24m", "pg_rating": "PG-13", - "director": "Martin Scorsese", + "director": "Fatih Akin", "genres": ["Biography"], "streaming": [], "box_office": None, @@ -1656,7 +1368,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Miroirs No. 3.", "runtime": "2h 8m", "pg_rating": "R", - "director": "Paul Thomas Anderson", + "director": "Christian Petzold", "genres": ["Romance", "History"], "streaming": ["Apple TV+"], "box_office": None, @@ -1674,7 +1386,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Mr. Nobody Against Putin.", "runtime": "1h 53m", "pg_rating": "R", - "director": "Kathryn Bigelow", + "director": "David Borenstein", "genres": ["Action", "Comedy"], "streaming": ["Max", "Paramount+"], "box_office": None, @@ -1692,7 +1404,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Blue Trail.", "runtime": "2h 44m", "pg_rating": "PG", - "director": "Taika Waititi", + "director": "Gabriel Mascaro", "genres": ["Romance"], "streaming": [], "box_office": None, @@ -1710,7 +1422,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Two Prosecutors.", "runtime": "2h 12m", "pg_rating": "R", - "director": "Spike Lee", + "director": "Sergei Loznitsa", "genres": ["Horror", "Romance", "History"], "streaming": [], "box_office": None, @@ -1728,7 +1440,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Kontinental '25.", "runtime": "2h 39m", "pg_rating": "PG", - "director": "Barry Jenkins", + "director": "Radu Jude", "genres": ["Documentary"], "streaming": [], "box_office": None, @@ -1746,7 +1458,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Tow.", "runtime": "2h 45m", "pg_rating": "NR", - "director": "David Fincher", + "director": "Stephanie Laing", "genres": ["Romance", "Drama"], "streaming": [], "box_office": None, @@ -1764,7 +1476,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in A Poet.", "runtime": "2h 19m", "pg_rating": "NR", - "director": "Pedro Almodovar", + "director": "Simón Mesa Soto", "genres": ["Horror", "Comedy", "Fantasy"], "streaming": ["Prime Video", "Netflix"], "box_office": None, @@ -1782,7 +1494,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Late Shift.", "runtime": "1h 38m", "pg_rating": "G", - "director": "Kathryn Bigelow", + "director": "Petra Biondina Volpe", "genres": ["Biography"], "streaming": ["Prime Video"], "box_office": None, @@ -1800,7 +1512,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Put Your Soul on Your Hand and Walk.", "runtime": "2h 43m", "pg_rating": "R", - "director": "Paul Thomas Anderson", + "director": "Sepideh Farsi, Fatma Hassona", "genres": ["Mystery & Thriller", "War"], "streaming": ["Peacock", "Disney+"], "box_office": None, @@ -1818,7 +1530,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Sheep Detectives.", "runtime": "2h 22m", "pg_rating": "R", - "director": "Bong Joon Ho", + "director": "Kyle Balda", "genres": ["Adventure", "Drama"], "streaming": [], "box_office": None, @@ -1836,7 +1548,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Marty, Life Is Short.", "runtime": "1h 48m", "pg_rating": "R", - "director": "Guillermo del Toro", + "director": "Lawrence Kasdan", "genres": ["Action", "Musical"], "streaming": ["Disney+"], "box_office": None, @@ -1845,42 +1557,6 @@ "poster_url": "/static/images/posters/marty_life_is_short.jpg", "distributor": None, }, - { - "title": "The Crash", - "slug": "the_crash_2026", - "year": 2024, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Crash.", - "runtime": "1h 49m", - "pg_rating": "NR", - "director": "Taika Waititi", - "genres": ["Animation", "Action"], - "streaming": [], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/the_crash_2026.jpg", - "distributor": None, - }, - { - "title": "My Dearest Assassin", - "slug": "my_dearest_assassin", - "year": 2025, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in My Dearest Assassin.", - "runtime": "2h 27m", - "pg_rating": "G", - "director": "Ridley Scott", - "genres": ["Western", "Adventure"], - "streaming": ["Netflix"], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/my_dearest_assassin.jpg", - "distributor": None, - }, { "title": "Nuremberg", "slug": "nuremberg_2025", @@ -1890,7 +1566,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Nuremberg.", "runtime": "2h 4m", "pg_rating": "PG-13", - "director": "Yorgos Lanthimos", + "director": "James Vanderbilt", "genres": ["Kids & Family"], "streaming": ["Prime Video", "Disney+"], "box_office": None, @@ -1899,24 +1575,6 @@ "poster_url": "/static/images/posters/nuremberg_2025.jpg", "distributor": None, }, - { - "title": "The Roast of Kevin Hart", - "slug": "the_roast_of_kevin_hart", - "year": 2024, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Roast of Kevin Hart.", - "runtime": "2h 23m", - "pg_rating": "R", - "director": "Chloe Zhao", - "genres": ["Western", "Crime"], - "streaming": ["Apple TV+"], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/the_roast_of_kevin_hart.jpg", - "distributor": None, - }, { "title": "Train Dreams", "slug": "train_dreams", @@ -1926,7 +1584,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Train Dreams.", "runtime": "1h 40m", "pg_rating": "R", - "director": "Jordan Peele", + "director": "Clint Bentley", "genres": ["Romance"], "streaming": ["Hulu", "Max"], "box_office": None, @@ -1944,7 +1602,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Rip.", "runtime": "1h 49m", "pg_rating": "PG", - "director": "Guillermo del Toro", + "director": "Joe Carnahan", "genres": ["War", "Documentary"], "streaming": ["Disney+"], "box_office": None, @@ -1962,7 +1620,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in War Machine.", "runtime": "2h 0m", "pg_rating": "PG-13", - "director": "Martin Scorsese", + "director": "Patrick Hughes", "genres": ["Western"], "streaming": [], "box_office": None, @@ -1980,7 +1638,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Peaky Blinders: The Immortal Man.", "runtime": "2h 38m", "pg_rating": "PG", - "director": "Alfonso Cuaron", + "director": "Tom Harper", "genres": ["Sci-Fi", "Musical", "Horror"], "streaming": ["Peacock"], "box_office": None, @@ -1998,7 +1656,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Striking Distance.", "runtime": "2h 26m", "pg_rating": "R", - "director": "Ridley Scott", + "director": "Rowdy Herrington", "genres": ["Comedy"], "streaming": [], "box_office": None, @@ -2007,24 +1665,6 @@ "poster_url": "/static/images/posters/striking_distance.jpg", "distributor": None, }, - { - "title": "Je m'appelle Agneta", - "slug": "je_mappelle_agneta", - "year": 2026, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Je m'appelle Agneta.", - "runtime": "1h 44m", - "pg_rating": "PG-13", - "director": "Taika Waititi", - "genres": ["Comedy"], - "streaming": ["Apple TV+", "Netflix"], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/je_mappelle_agneta.jpg", - "distributor": None, - }, { "title": "Green Book", "slug": "green_book", @@ -2034,7 +1674,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Green Book.", "runtime": "2h 21m", "pg_rating": "G", - "director": "Barry Jenkins", + "director": "Peter Farrelly", "genres": ["Biography", "Adventure", "Kids & Family"], "streaming": ["Paramount+"], "box_office": None, @@ -2052,7 +1692,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Domestic Disturbance.", "runtime": "1h 35m", "pg_rating": "R", - "director": "Taika Waititi", + "director": "Harold Becker", "genres": ["Horror", "Romance", "War"], "streaming": [], "box_office": None, @@ -2070,7 +1710,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in People We Meet on Vacation.", "runtime": "2h 22m", "pg_rating": "G", - "director": "Martin Scorsese", + "director": "Brett Haley", "genres": ["Action"], "streaming": ["Peacock", "Hulu"], "box_office": None, @@ -2088,7 +1728,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Relay.", "runtime": "1h 58m", "pg_rating": "PG-13", - "director": "David Fincher", + "director": "David Mackenzie", "genres": ["Documentary", "History", "Drama"], "streaming": ["Disney+", "Peacock"], "box_office": None, @@ -2106,7 +1746,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Thrash.", "runtime": "1h 32m", "pg_rating": "PG", - "director": "Barry Jenkins", + "director": "Tommy Wirkola", "genres": ["Sci-Fi", "Animation", "Western"], "streaming": [], "box_office": None, @@ -2124,7 +1764,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Wake Up Dead Man: A Knives Out Mystery.", "runtime": "2h 16m", "pg_rating": "R", - "director": "Bong Joon Ho", + "director": "Rian Johnson", "genres": ["Horror", "History"], "streaming": ["Peacock"], "box_office": None, @@ -2142,7 +1782,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in You, Me & Tuscany.", "runtime": "1h 36m", "pg_rating": "PG", - "director": "Emerald Fennell", + "director": "Kat Coiro", "genres": ["Crime", "Animation"], "streaming": [], "box_office": None, @@ -2160,7 +1800,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Faces of Death.", "runtime": "2h 31m", "pg_rating": "G", - "director": "Greta Gerwig", + "director": "Daniel Goldhaber", "genres": ["Animation", "Comedy", "Mystery & Thriller"], "streaming": ["Peacock", "Hulu"], "box_office": None, @@ -2169,24 +1809,6 @@ "poster_url": "/static/images/posters/faces_of_death_2026.jpg", "distributor": None, }, - { - "title": "Sleeping Dog", - "slug": "sleeping_dog", - "year": 2025, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Sleeping Dog.", - "runtime": "2h 17m", - "pg_rating": "R", - "director": "Emerald Fennell", - "genres": ["Musical", "Drama", "Western"], - "streaming": ["Prime Video"], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/sleeping_dog.jpg", - "distributor": None, - }, { "title": "Suburban Fury", "slug": "suburban_fury", @@ -2196,7 +1818,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Suburban Fury.", "runtime": "2h 28m", "pg_rating": "G", - "director": "Yorgos Lanthimos", + "director": "Robinson Devor", "genres": ["Crime"], "streaming": ["Paramount+"], "box_office": None, @@ -2214,7 +1836,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in $POSITIONS.", "runtime": "2h 6m", "pg_rating": "R", - "director": "Wes Anderson", + "director": "Brandon Daley", "genres": ["Crime"], "streaming": [], "box_office": None, @@ -2232,7 +1854,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Marc by Sofia.", "runtime": "1h 49m", "pg_rating": "PG", - "director": "Alfonso Cuaron", + "director": "Sofia Coppola", "genres": ["Western", "History", "Biography"], "streaming": ["Prime Video", "Apple TV+"], "box_office": None, @@ -2241,114 +1863,6 @@ "poster_url": "/static/images/posters/marc_by_sofia.jpg", "distributor": None, }, - { - "title": "The Butcher's Blade", - "slug": "the_butchers_blade", - "year": 2026, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Butcher's Blade.", - "runtime": "2h 35m", - "pg_rating": "R", - "director": "Barry Jenkins", - "genres": ["Romance"], - "streaming": [], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/the_butchers_blade.jpg", - "distributor": None, - }, - { - "title": "100 Dates in Dallas", - "slug": "100_dates_in_dallas", - "year": 2026, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in 100 Dates in Dallas.", - "runtime": "1h 55m", - "pg_rating": "NR", - "director": "Yorgos Lanthimos", - "genres": ["Musical", "Horror", "Action"], - "streaming": ["Hulu", "Peacock"], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/100_dates_in_dallas.jpg", - "distributor": None, - }, - { - "title": "Among Neighbors", - "slug": "among_neighbors", - "year": 2019, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Among Neighbors.", - "runtime": "2h 24m", - "pg_rating": "PG", - "director": "Kathryn Bigelow", - "genres": ["Biography", "Drama", "Adventure"], - "streaming": [], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/among_neighbors.jpg", - "distributor": None, - }, - { - "title": "Cotton Candy Bubble Gum", - "slug": "cotton_candy_bubble_gum", - "year": 2021, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Cotton Candy Bubble Gum.", - "runtime": "2h 18m", - "pg_rating": "R", - "director": "Taika Waititi", - "genres": ["Documentary", "War"], - "streaming": ["Peacock"], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/cotton_candy_bubble_gum.jpg", - "distributor": None, - }, - { - "title": "The Propagandist", - "slug": "the_propagandist", - "year": 2026, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Propagandist.", - "runtime": "2h 30m", - "pg_rating": "NR", - "director": "Ridley Scott", - "genres": ["Sci-Fi", "Kids & Family", "Romance"], - "streaming": ["Hulu", "Paramount+"], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/the_propagandist.jpg", - "distributor": None, - }, - { - "title": "An Enemy Within", - "slug": "an_enemy_within", - "year": 2023, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in An Enemy Within.", - "runtime": "1h 25m", - "pg_rating": "R", - "director": "Sofia Coppola", - "genres": ["Crime", "War"], - "streaming": ["Apple TV+"], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/an_enemy_within.jpg", - "distributor": None, - }, { "title": "Greenland", "slug": "greenland", @@ -2358,7 +1872,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Greenland.", "runtime": "2h 26m", "pg_rating": "NR", - "director": "Yorgos Lanthimos", + "director": "Ric Roman Waugh", "genres": ["History"], "streaming": ["Prime Video"], "box_office": None, @@ -2376,7 +1890,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Running Man.", "runtime": "2h 38m", "pg_rating": "PG-13", - "director": "Paul Thomas Anderson", + "director": "Edgar Wright", "genres": ["Crime", "Romance"], "streaming": ["Disney+"], "box_office": None, @@ -2394,7 +1908,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Balls Up.", "runtime": "2h 28m", "pg_rating": "PG-13", - "director": "Denis Villeneuve", + "director": "Peter Farrelly", "genres": ["Musical", "Kids & Family", "War"], "streaming": [], "box_office": None, @@ -2412,7 +1926,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Mercy.", "runtime": "2h 32m", "pg_rating": "PG", - "director": "Denis Villeneuve", + "director": "Timur Bekmambetov", "genres": ["History"], "streaming": ["Netflix"], "box_office": None, @@ -2430,7 +1944,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Man on Fire.", "runtime": "2h 8m", "pg_rating": "R", - "director": "Ridley Scott", + "director": "Tony Scott", "genres": ["Musical"], "streaming": ["Paramount+", "Prime Video"], "box_office": None, @@ -2448,7 +1962,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Mike & Nick & Nick & Alice.", "runtime": "1h 33m", "pg_rating": "NR", - "director": "Kathryn Bigelow", + "director": "BenDavid Grabinski", "genres": ["Musical", "Comedy"], "streaming": [], "box_office": None, @@ -2460,13 +1974,13 @@ { "title": "Mortal Kombat", "slug": "mortal_kombat", - "year": 2023, + "year": 1995, "tomatometer": 44, "audience_score": 94, "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Mortal Kombat.", "runtime": "1h 37m", "pg_rating": "G", - "director": "Greta Gerwig", + "director": "Paul W.S. Anderson", "genres": ["Drama"], "streaming": ["Max", "Disney+"], "box_office": None, @@ -2484,7 +1998,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Shelter.", "runtime": "1h 32m", "pg_rating": "R", - "director": "Guillermo del Toro", + "director": "Ric Roman Waugh", "genres": ["Comedy"], "streaming": ["Prime Video"], "box_office": None, @@ -2502,7 +2016,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Hunt.", "runtime": "2h 37m", "pg_rating": "G", - "director": "Greta Gerwig", + "director": "Craig Zobel", "genres": ["War"], "streaming": ["Hulu", "Max"], "box_office": None, @@ -2520,7 +2034,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Yes.", "runtime": "2h 24m", "pg_rating": "PG-13", - "director": "Chloe Zhao", + "director": "Nadav Lapid", "genres": ["Adventure", "Musical", "Sci-Fi"], "streaming": ["Apple TV+", "Disney+"], "box_office": None, @@ -2529,24 +2043,6 @@ "poster_url": "/static/images/posters/yes_2025.jpg", "distributor": None, }, - { - "title": "Lisa Ann Walter: It Was An Accident", - "slug": "lisa_ann_walter_it_was_an_accident", - "year": 2019, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Lisa Ann Walter: It Was An Accident.", - "runtime": "2h 21m", - "pg_rating": "PG", - "director": "Kathryn Bigelow", - "genres": ["Documentary", "Mystery & Thriller"], - "streaming": ["Apple TV+"], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/lisa_ann_walter_it_was_an_accident.jpg", - "distributor": None, - }, { "title": "GOAT", "slug": "goat_2026", @@ -2556,7 +2052,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in GOAT.", "runtime": "2h 14m", "pg_rating": "PG-13", - "director": "Taika Waititi", + "director": "Tyree Dillihay", "genres": ["Animation", "History", "Documentary"], "streaming": ["Max"], "box_office": None, @@ -2574,7 +2070,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Outcome.", "runtime": "2h 0m", "pg_rating": "G", - "director": "Sofia Coppola", + "director": "Jonah Hill", "genres": ["Documentary", "Western", "Action"], "streaming": [], "box_office": None, @@ -2592,7 +2088,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in One Battle After Another.", "runtime": "2h 10m", "pg_rating": "NR", - "director": "Kathryn Bigelow", + "director": "Paul Thomas Anderson", "genres": ["Musical", "Documentary", "Adventure"], "streaming": [], "box_office": None, @@ -2610,7 +2106,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Buffet Infinity.", "runtime": "2h 21m", "pg_rating": "R", - "director": "Sofia Coppola", + "director": "Simon Glassman", "genres": ["Sci-Fi", "Horror", "Comedy"], "streaming": [], "box_office": None, @@ -2628,7 +2124,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Rental Family.", "runtime": "2h 18m", "pg_rating": "R", - "director": "Jordan Peele", + "director": "HIKARI", "genres": ["Documentary"], "streaming": [], "box_office": None, @@ -2646,7 +2142,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Fantasy Life.", "runtime": "2h 26m", "pg_rating": "R", - "director": "David Fincher", + "director": "Matthew Shear", "genres": ["War", "Animation", "Mystery & Thriller"], "streaming": ["Prime Video"], "box_office": None, @@ -2655,24 +2151,6 @@ "poster_url": "/static/images/posters/fantasy_life.jpg", "distributor": None, }, - { - "title": "They Wait in Shadows", - "slug": "they_wait_in_shadows", - "year": 2020, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in They Wait in Shadows.", - "runtime": "2h 36m", - "pg_rating": "G", - "director": "Wes Anderson", - "genres": ["Adventure"], - "streaming": ["Max"], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/they_wait_in_shadows.jpg", - "distributor": None, - }, { "title": "undertone", "slug": "undertone", @@ -2682,7 +2160,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in undertone.", "runtime": "2h 12m", "pg_rating": "G", - "director": "Wes Anderson", + "director": "Ian Tuason", "genres": ["Western", "Horror"], "streaming": ["Apple TV+", "Peacock"], "box_office": None, @@ -2700,7 +2178,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Dust Bunny.", "runtime": "1h 28m", "pg_rating": "G", - "director": "Taika Waititi", + "director": "Bryan Fuller", "genres": ["Adventure"], "streaming": ["Prime Video", "Apple TV+"], "box_office": None, @@ -2718,7 +2196,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Hallow Road.", "runtime": "1h 42m", "pg_rating": "PG", - "director": "Martin Scorsese", + "director": "Babak Anvari, William Gillies", "genres": ["History", "Documentary", "Biography"], "streaming": [], "box_office": None, @@ -2736,7 +2214,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Weapons.", "runtime": "2h 33m", "pg_rating": "PG-13", - "director": "Wes Anderson", + "director": "Zach Cregger", "genres": ["Horror"], "streaming": [], "box_office": None, @@ -2754,7 +2232,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Forbidden Fruits.", "runtime": "1h 37m", "pg_rating": "G", - "director": "Chloe Zhao", + "director": "Meredith Alloway", "genres": ["Western", "Biography", "Sci-Fi"], "streaming": ["Paramount+"], "box_office": None, @@ -2772,7 +2250,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Ready or Not.", "runtime": "1h 55m", "pg_rating": "G", - "director": "Emerald Fennell", + "director": "Matt Bettinelli-Olpin, Tyler Gillett", "genres": ["History"], "streaming": ["Max"], "box_office": None, @@ -2790,7 +2268,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Dracula.", "runtime": "1h 49m", "pg_rating": "R", - "director": "Bong Joon Ho", + "director": "Luc Besson", "genres": ["Kids & Family"], "streaming": [], "box_office": None, @@ -2808,7 +2286,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Long Walk.", "runtime": "1h 41m", "pg_rating": "PG-13", - "director": "Yorgos Lanthimos", + "director": "Francis Lawrence", "genres": ["Action", "Comedy", "Crime"], "streaming": ["Disney+", "Netflix"], "box_office": None, @@ -2826,7 +2304,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Cold Storage.", "runtime": "2h 41m", "pg_rating": "PG-13", - "director": "Chloe Zhao", + "director": "Jonny Campbell", "genres": ["Crime"], "streaming": [], "box_office": None, @@ -2844,7 +2322,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Scream 7.", "runtime": "1h 41m", "pg_rating": "PG", - "director": "Guillermo del Toro", + "director": "Kevin Williamson", "genres": ["Animation", "Mystery & Thriller", "Horror"], "streaming": [], "box_office": None, @@ -2862,7 +2340,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Whistle.", "runtime": "1h 31m", "pg_rating": "R", - "director": "Paul Thomas Anderson", + "director": "Corin Hardy", "genres": ["Mystery & Thriller"], "streaming": [], "box_office": None, @@ -2880,7 +2358,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Companion.", "runtime": "2h 30m", "pg_rating": "R", - "director": "Pedro Almodovar", + "director": "Drew Hancock", "genres": ["Drama", "Musical", "History"], "streaming": ["Max", "Disney+"], "box_office": None, @@ -2898,7 +2376,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in THE BRIDE!.", "runtime": "1h 32m", "pg_rating": "PG", - "director": "Paul Thomas Anderson", + "director": "Maggie Gyllenhaal", "genres": ["War", "Documentary", "History"], "streaming": ["Paramount+"], "box_office": None, @@ -2916,7 +2394,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Return to Silent Hill.", "runtime": "2h 6m", "pg_rating": "PG", - "director": "Denis Villeneuve", + "director": "Christophe Gans", "genres": ["History", "Drama"], "streaming": ["Hulu", "Netflix"], "box_office": None, @@ -2934,7 +2412,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Life of Chuck.", "runtime": "2h 29m", "pg_rating": "G", - "director": "David Fincher", + "director": "Mike Flanagan", "genres": ["War", "Documentary"], "streaming": ["Paramount+", "Netflix"], "box_office": None, @@ -2952,7 +2430,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Predator: Badlands.", "runtime": "2h 8m", "pg_rating": "G", - "director": "Paul Thomas Anderson", + "director": "Dan Trachtenberg", "genres": ["History", "Adventure"], "streaming": ["Paramount+"], "box_office": None, @@ -2970,7 +2448,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Star Wars: The Last Jedi.", "runtime": "2h 12m", "pg_rating": "R", - "director": "Emerald Fennell", + "director": "Rian Johnson", "genres": ["Biography", "Crime"], "streaming": [], "box_office": None, @@ -3006,7 +2484,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Martian.", "runtime": "2h 10m", "pg_rating": "G", - "director": "Martin Scorsese", + "director": "Ridley Scott", "genres": ["Western", "Crime", "Horror"], "streaming": ["Paramount+", "Peacock"], "box_office": None, @@ -3024,7 +2502,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Together.", "runtime": "1h 44m", "pg_rating": "PG-13", - "director": "David Fincher", + "director": "Michael Shanks", "genres": ["Horror", "War"], "streaming": ["Peacock", "Max"], "box_office": None, @@ -3042,7 +2520,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in The Hunger Games: The Ballad of Songbirds & Snakes.", "runtime": "1h 53m", "pg_rating": "NR", - "director": "Spike Lee", + "director": "Francis Lawrence", "genres": ["Animation"], "streaming": ["Netflix"], "box_office": None, @@ -3060,7 +2538,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Star Wars: The Rise of Skywalker.", "runtime": "2h 4m", "pg_rating": "R", - "director": "Steven Spielberg", + "director": "J.J. Abrams", "genres": ["Mystery & Thriller"], "streaming": ["Prime Video"], "box_office": None, @@ -3078,7 +2556,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Jurassic World Rebirth.", "runtime": "1h 36m", "pg_rating": "PG", - "director": "Paul Thomas Anderson", + "director": "Gareth Edwards", "genres": ["Kids & Family", "Drama", "Sci-Fi"], "streaming": ["Disney+", "Peacock"], "box_office": None, @@ -3096,7 +2574,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Independence Day.", "runtime": "2h 6m", "pg_rating": "R", - "director": "Denis Villeneuve", + "director": "Roland Emmerich", "genres": ["Fantasy"], "streaming": ["Max", "Netflix"], "box_office": None, @@ -3114,7 +2592,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Touch Me.", "runtime": "2h 27m", "pg_rating": "G", - "director": "Chloe Zhao", + "director": "Addison Heimann", "genres": ["Drama", "Animation", "History"], "streaming": ["Peacock", "Disney+"], "box_office": None, @@ -3132,7 +2610,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Godzilla x Kong: The New Empire.", "runtime": "2h 40m", "pg_rating": "R", - "director": "Martin Scorsese", + "director": "Adam Wingard", "genres": ["Biography", "Horror"], "streaming": ["Apple TV+"], "box_office": None, @@ -3150,7 +2628,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Star Wars: Episode III - Revenge of the Sith.", "runtime": "1h 52m", "pg_rating": "R", - "director": "Chloe Zhao", + "director": "George Lucas", "genres": ["Comedy", "Action", "Romance"], "streaming": [], "box_office": None, @@ -3168,7 +2646,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Hamlet.", "runtime": "2h 20m", "pg_rating": "G", - "director": "Denis Villeneuve", + "director": "Aneil Karia", "genres": ["Action"], "streaming": [], "box_office": None, @@ -3177,42 +2655,6 @@ "poster_url": "/static/images/posters/hamlet_2025.jpg", "distributor": None, }, - { - "title": "Voices Carry", - "slug": "voices_carry_2025", - "year": 2022, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Voices Carry.", - "runtime": "1h 30m", - "pg_rating": "G", - "director": "Bong Joon Ho", - "genres": ["Western", "Fantasy", "Drama"], - "streaming": ["Netflix"], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/voices_carry_2025.jpg", - "distributor": None, - }, - { - "title": "Sofia", - "slug": "sofia_2025", - "year": 2020, - "tomatometer": None, - "audience_score": None, - "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Sofia.", - "runtime": "2h 2m", - "pg_rating": "G", - "director": "Wes Anderson", - "genres": ["Biography", "Kids & Family"], - "streaming": [], - "box_office": None, - "certified_fresh": False, - "critics_consensus": None, - "poster_url": "/static/images/posters/sofia_2025.jpg", - "distributor": None, - }, { "title": "Pillion", "slug": "pillion", @@ -3222,7 +2664,7 @@ "synopsis": "A compelling story that follows the journey of its characters through extraordinary circumstances in Pillion.", "runtime": "1h 36m", "pg_rating": "R", - "director": "Taika Waititi", + "director": "Harry Lighton", "genres": ["Mystery & Thriller", "History"], "streaming": ["Max"], "box_office": None, @@ -3253,7 +2695,7 @@ "slug": "aaron_taylor_johnson", "bio": "Aaron Taylor-Johnson is an English actor.", "birthplace": "High Wycombe, Buckinghamshire, England", - "photo_url": "", + "photo_url": "/static/images/people/aaron_taylor_johnson.jpg", }, { "name": "America Ferrera", @@ -3575,7 +3017,7 @@ "slug": "florence_pugh", "bio": "Florence Pugh is an English actress known for her work in period dramas and action films.", "birthplace": "Oxford, England, UK", - "photo_url": "", + "photo_url": "/static/images/people/florence_pugh.jpg", }, { "name": "Gary Oldman", @@ -3841,7 +3283,7 @@ "slug": "josh_brolin", "bio": "Josh James Brolin is an American actor.", "birthplace": "Santa Monica, California, USA", - "photo_url": "", + "photo_url": "/static/images/people/josh_brolin.jpg", }, { "name": "Josh Hartnett", @@ -4030,7 +3472,7 @@ "slug": "mark_hamill", "bio": "Mark Richard Hamill is an American actor known for Luke Skywalker.", "birthplace": "Oakland, California, USA", - "photo_url": "", + "photo_url": "/static/images/people/mark_hamill.jpg", }, { "name": "Mark Ruffalo", @@ -4051,7 +3493,7 @@ "slug": "matt_damon", "bio": "Matthew Paige Damon is an American actor, producer, and screenwriter.", "birthplace": "Cambridge, Massachusetts, USA", - "photo_url": "", + "photo_url": "/static/images/people/matt_damon.jpg", }, { "name": "Matt Johnson", @@ -4149,7 +3591,7 @@ "slug": "morena_baccarin", "bio": "Morena Baccarin is a Brazilian-American actress.", "birthplace": "Rio de Janeiro, Brazil", - "photo_url": "", + "photo_url": "/static/images/people/morena_baccarin.jpg", }, { "name": "Morgan Freeman", @@ -4219,7 +3661,7 @@ "slug": "pedro_pascal", "bio": "Jos\u00e9 Pedro Balmaceda Pascal is a Chilean-American actor.", "birthplace": "Santiago, Chile", - "photo_url": "", + "photo_url": "/static/images/people/pedro_pascal.jpg", }, { "name": "Peter Dinklage", @@ -4261,14 +3703,14 @@ "slug": "rami_malek", "bio": "Rami Said Malek is an American actor.", "birthplace": "Los Angeles, California, USA", - "photo_url": "", + "photo_url": "/static/images/people/rami_malek.jpg", }, { "name": "Rebecca Ferguson", "slug": "rebecca_ferguson", "bio": "Rebecca Louisa Ferguson Sundstr\u00f6m is a Swedish actress.", "birthplace": "Stockholm, Sweden", - "photo_url": "", + "photo_url": "/static/images/people/rebecca_ferguson.jpg", }, { "name": "Rich Sommer", @@ -4324,7 +3766,7 @@ "slug": "sam_worthington", "bio": "Sam Worthington is an Australian actor known for Avatar and Clash of the Titans.", "birthplace": "Godalming, Surrey, England", - "photo_url": "", + "photo_url": "/static/images/people/sam_worthington.jpg", }, { "name": "Saul Rubinek", @@ -4387,7 +3829,7 @@ "slug": "stephanie_hsu", "bio": "Stephanie Hsu is an American actress.", "birthplace": "Torrance, California, USA", - "photo_url": "", + "photo_url": "/static/images/people/stephanie_hsu.jpg", }, { "name": "Stephen Lang", @@ -4436,7 +3878,7 @@ "slug": "timothee_chalamet", "bio": "Timoth\u00e9e Hal Chalamet is an American actor known for his work in independent films and blockbusters.", "birthplace": "New York City, New York, USA", - "photo_url": "", + "photo_url": "/static/images/people/timothee_chalamet.jpg", }, { "name": "Tom Cruise", @@ -4450,7 +3892,7 @@ "slug": "tom_holland", "bio": "Thomas Stanley Holland is an English actor known as Spider-Man in the MCU.", "birthplace": "Kingston upon Thames, England, UK", - "photo_url": "", + "photo_url": "/static/images/people/tom_holland.jpg", }, { "name": "Tony Hale", @@ -4464,7 +3906,7 @@ "slug": "val_kilmer", "bio": "Val Edward Kilmer is an American actor.", "birthplace": "Los Angeles, California, USA", - "photo_url": "", + "photo_url": "/static/images/people/val_kilmer.jpg", }, { "name": "Vanessa Kirby", @@ -4506,7 +3948,7 @@ "slug": "zendaya", "bio": "Zendaya Maree Stoermer Coleman is an American actress, singer, and model.", "birthplace": "Oakland, California, USA", - "photo_url": "", + "photo_url": "/static/images/people/zendaya.jpg", }, { "name": "Zoe Salda\u00f1a", @@ -4518,8 +3960,8 @@ {"name": "Abderrahmane Dehkani", "slug": "abderrahmane_dehkani", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Abe Farrelly", "slug": "abe_farrelly", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Abir Chatterjee", "slug": "abir_chatterjee", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Adam Brody", "slug": "adam_brody", "bio": "American actor", "birthplace": "San Diego, California, USA", "photo_url": ""}, - {"name": "Adam Driver", "slug": "adam_driver", "bio": "American actor", "birthplace": "San Diego, California, USA", "photo_url": ""}, + {"name": "Adam Brody", "slug": "adam_brody", "bio": "American actor", "birthplace": "San Diego, California, USA", "photo_url": "/static/images/people/adam_brody.jpg"}, + {"name": "Adam Driver", "slug": "adam_driver", "bio": "American actor", "birthplace": "San Diego, California, USA", "photo_url": "/static/images/people/adam_driver.jpg"}, {"name": "Adeline Rudolph", "slug": "adeline_rudolph", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Adonis Tanța", "slug": "adonis_tanța", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Adrian Grenier", "slug": "adrian_grenier", "bio": "American actor and director", "birthplace": "Santa Fe, New Mexico, USA", "photo_url": ""}, @@ -4529,7 +3971,7 @@ {"name": "Akira Emoto", "slug": "akira_emoto", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Alain Doutey", "slug": "alain_doutey", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Alana Gerlach", "slug": "alana_gerlach", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Alana Haim", "slug": "alana_haim", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Alana Haim", "slug": "alana_haim", "bio": "Actor and performer", "birthplace": "", "photo_url": "/static/images/people/alana_haim.jpg"}, {"name": "Albana Agaj", "slug": "albana_agaj", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Aleksandr Filippenko", "slug": "aleksandr_filippenko", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Aleksandr Kuznetsov", "slug": "aleksandr_kuznetsov", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, @@ -4585,7 +4027,7 @@ {"name": "Bally Gill", "slug": "bally_gill", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Barbara Auer", "slug": "barbara_auer", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Barbie Ferreira", "slug": "barbie_ferreira", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Barry Keoghan", "slug": "barry_keoghan", "bio": "Irish actor", "birthplace": "Dublin, Ireland", "photo_url": ""}, + {"name": "Barry Keoghan", "slug": "barry_keoghan", "bio": "Irish actor", "birthplace": "Dublin, Ireland", "photo_url": "/static/images/people/barry_keoghan.jpg"}, {"name": "Basil Joseph", "slug": "basil_joseph", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Beanie Feldstein", "slug": "beanie_feldstein", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Bella Ramsey", "slug": "bella_ramsey", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, @@ -4672,8 +4114,8 @@ {"name": "Corbin Bernsen", "slug": "corbin_bernsen", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Corey Hawkins", "slug": "corey_hawkins", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Courteney Cox", "slug": "courteney_cox", "bio": "American actress", "birthplace": "Birmingham, Alabama, USA", "photo_url": ""}, - {"name": "Daisy Ridley", "slug": "daisy_ridley", "bio": "English actress", "birthplace": "London, England, UK", "photo_url": ""}, - {"name": "Dan Stevens", "slug": "dan_stevens", "bio": "British actor", "birthplace": "Croydon, London, UK", "photo_url": ""}, + {"name": "Daisy Ridley", "slug": "daisy_ridley", "bio": "English actress", "birthplace": "London, England, UK", "photo_url": "/static/images/people/daisy_ridley.jpg"}, + {"name": "Dan Stevens", "slug": "dan_stevens", "bio": "British actor", "birthplace": "Croydon, London, UK", "photo_url": "/static/images/people/dan_stevens.jpg"}, {"name": "Daniel Craig", "slug": "daniel_craig", "bio": "English actor", "birthplace": "Chester, England, UK", "photo_url": ""}, {"name": "Dave Bautista", "slug": "dave_bautista", "bio": "American actor", "birthplace": "Washington, D.C., USA", "photo_url": ""}, {"name": "Dave Franco", "slug": "dave_franco", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, @@ -4709,7 +4151,7 @@ {"name": "Elena Sofia Ricci", "slug": "elena_sofia_ricci", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Elham Ehsas", "slug": "elham_ehsas", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Elijah Williams", "slug": "elijah_williams", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Elle Fanning", "slug": "elle_fanning", "bio": "American actress", "birthplace": "Conyers, Georgia, USA", "photo_url": ""}, + {"name": "Elle Fanning", "slug": "elle_fanning", "bio": "American actress", "birthplace": "Conyers, Georgia, USA", "photo_url": "/static/images/people/elle_fanning.jpg"}, {"name": "Emily Bader", "slug": "emily_bader", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Emily Hampshire", "slug": "emily_hampshire", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Emma Frances Chamberlain", "slug": "emma_frances_chamberlain", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, @@ -4721,9 +4163,9 @@ {"name": "Erika Alexander", "slug": "erika_alexander", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Eszter Tompa", "slug": "eszter_tompa", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Eugene Ace Banks", "slug": "eugene_ace_banks", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Eva De Dominici", "slug": "eva_de_dominici", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Eva De Dominici", "slug": "eva_de_dominici", "bio": "Actor and performer", "birthplace": "", "photo_url": "/static/images/people/eva_de_dominici.jpg"}, {"name": "Eva Melander", "slug": "eva_melander", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Ewan McGregor", "slug": "ewan_mcgregor", "bio": "Scottish actor", "birthplace": "Perth, Scotland, UK", "photo_url": ""}, + {"name": "Ewan McGregor", "slug": "ewan_mcgregor", "bio": "Scottish actor", "birthplace": "Perth, Scotland, UK", "photo_url": "/static/images/people/ewan_mcgregor.jpg"}, {"name": "Eylul Guven", "slug": "eylul_guven", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Fatma Hassona", "slug": "fatma_hassona", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Felicity Jones", "slug": "felicity_jones", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, @@ -4739,7 +4181,7 @@ {"name": "Garrett Wareing", "slug": "garrett_wareing", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Geppi Cucciari", "slug": "geppi_cucciari", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Geraldine Singer", "slug": "geraldine_singer", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Gerard Butler", "slug": "gerard_butler", "bio": "Scottish actor", "birthplace": "Paisley, Scotland, UK", "photo_url": ""}, + {"name": "Gerard Butler", "slug": "gerard_butler", "bio": "Scottish actor", "birthplace": "Paisley, Scotland, UK", "photo_url": "/static/images/people/gerard_butler.jpg"}, {"name": "Gia Crovatin", "slug": "gia_crovatin", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Gil Angelo Anfone", "slug": "gil_angelo_anfone", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Glenn Close", "slug": "glenn_close", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, @@ -4754,7 +4196,7 @@ {"name": "Hal Cumpston", "slug": "hal_cumpston", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Haley Lu Richardson", "slug": "haley_lu_richardson", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Halle Bailey", "slug": "halle_bailey", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Halle Berry", "slug": "halle_berry", "bio": "American actress", "birthplace": "Cleveland, Ohio, USA", "photo_url": ""}, + {"name": "Halle Berry", "slug": "halle_berry", "bio": "American actress", "birthplace": "Cleveland, Ohio, USA", "photo_url": "/static/images/people/halle_berry.jpg"}, {"name": "Hannah Emily Anderson", "slug": "hannah_emily_anderson", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Hannah Gross", "slug": "hannah_gross", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Haocun Liu", "slug": "haocun_liu", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, @@ -4766,7 +4208,7 @@ {"name": "Heather Graham", "slug": "heather_graham", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Henrietta Amevor", "slug": "henrietta_amevor", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Henry Cavill", "slug": "henry_cavill", "bio": "British actor", "birthplace": "Jersey, Channel Islands", "photo_url": ""}, - {"name": "Henry Czerny", "slug": "henry_czerny", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Henry Czerny", "slug": "henry_czerny", "bio": "Actor and performer", "birthplace": "", "photo_url": "/static/images/people/henry_czerny.jpg"}, {"name": "Henry Winkler", "slug": "henry_winkler", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Hilary Swank", "slug": "hilary_swank", "bio": "American actress", "birthplace": "Lincoln, Nebraska, USA", "photo_url": ""}, {"name": "Hiroyuki Sanada", "slug": "hiroyuki_sanada", "bio": "Japanese actor", "birthplace": "Tokyo, Japan", "photo_url": ""}, @@ -4774,7 +4216,7 @@ {"name": "Hong Chau", "slug": "hong_chau", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Humberto Restrepo", "slug": "humberto_restrepo", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Hunter Schafer", "slug": "hunter_schafer", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Ian McDiarmid", "slug": "ian_mcdiarmid", "bio": "Scottish actor", "birthplace": "Carnoustie, Scotland, UK", "photo_url": ""}, + {"name": "Ian McDiarmid", "slug": "ian_mcdiarmid", "bio": "Scottish actor", "birthplace": "Carnoustie, Scotland, UK", "photo_url": "/static/images/people/ian_mcdiarmid.jpg"}, {"name": "Ian McKellen", "slug": "ian_mckellen", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Idris Elba", "slug": "idris_elba", "bio": "English actor", "birthplace": "Hackney, London, UK", "photo_url": ""}, {"name": "Ike Barinholtz", "slug": "ike_barinholtz", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, @@ -4790,7 +4232,7 @@ {"name": "Jack Quaid", "slug": "jack_quaid", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Jack Stone", "slug": "jack_stone", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Jackson Tozer", "slug": "jackson_tozer", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Jacob Elordi", "slug": "jacob_elordi", "bio": "Australian actor", "birthplace": "Brisbane, Australia", "photo_url": ""}, + {"name": "Jacob Elordi", "slug": "jacob_elordi", "bio": "Australian actor", "birthplace": "Brisbane, Australia", "photo_url": "/static/images/people/jacob_elordi.jpg"}, {"name": "Jake Gyllenhaal", "slug": "jake_gyllenhaal", "bio": "American actor", "birthplace": "Los Angeles, California, USA", "photo_url": ""}, {"name": "James Corden", "slug": "james_corden", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "James Downey", "slug": "james_downey", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, @@ -4816,7 +4258,7 @@ {"name": "Jeffrey A. Hunter", "slug": "jeffrey_a_hunter", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Jeffrey Donovan", "slug": "jeffrey_donovan", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Jeffrey Wright", "slug": "jeffrey_wright", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Jenna Ortega", "slug": "jenna_ortega", "bio": "American actress", "birthplace": "Coachella Valley, California, USA", "photo_url": ""}, + {"name": "Jenna Ortega", "slug": "jenna_ortega", "bio": "American actress", "birthplace": "Coachella Valley, California, USA", "photo_url": "/static/images/people/jenna_ortega.jpg"}, {"name": "Jennifer Aniston", "slug": "jennifer_aniston", "bio": "American actress", "birthplace": "Sherman Oaks, California, USA", "photo_url": ""}, {"name": "Jennifer Jason Leigh", "slug": "jennifer_jason_leigh", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Jeremy Holm", "slug": "jeremy_holm", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, @@ -4827,14 +4269,14 @@ {"name": "Jessica Gunning", "slug": "jessica_gunning", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Jessica Harper", "slug": "jessica_harper", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Jessica Hunt", "slug": "jessica_hunt", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Jessica McNamee", "slug": "jessica_mcnamee", "bio": "Australian actress", "birthplace": "Sydney, Australia", "photo_url": ""}, - {"name": "Jessie Buckley", "slug": "jessie_buckley", "bio": "Irish actress", "birthplace": "Killarney, Ireland", "photo_url": ""}, + {"name": "Jessica McNamee", "slug": "jessica_mcnamee", "bio": "Australian actress", "birthplace": "Sydney, Australia", "photo_url": "/static/images/people/jessica_mcnamee.jpg"}, + {"name": "Jessie Buckley", "slug": "jessie_buckley", "bio": "Irish actress", "birthplace": "Killarney, Ireland", "photo_url": "/static/images/people/jessie_buckley.jpg"}, {"name": "Jimmy Tatro", "slug": "jimmy_tatro", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Jo Lopez", "slug": "jo_lopez", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Joan Chen", "slug": "joan_chen", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Joe Taslim", "slug": "joe_taslim", "bio": "Indonesian actor", "birthplace": "Palembang, Indonesia", "photo_url": ""}, {"name": "Joel Edgerton", "slug": "joel_edgerton", "bio": "Australian actor", "birthplace": "Sydney, Australia", "photo_url": ""}, - {"name": "John Boyega", "slug": "john_boyega", "bio": "British actor", "birthplace": "Peckham, London, UK", "photo_url": ""}, + {"name": "John Boyega", "slug": "john_boyega", "bio": "British actor", "birthplace": "Peckham, London, UK", "photo_url": "/static/images/people/john_boyega.jpg"}, {"name": "John Bubniak", "slug": "john_bubniak", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "John Paul Sneed", "slug": "john_paul_sneed", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "John Travolta", "slug": "john_travolta", "bio": "American actor", "birthplace": "Englewood, New Jersey, USA", "photo_url": ""}, @@ -4853,7 +4295,7 @@ {"name": "José Felipe Auzmendi", "slug": "josé_felipe_auzmendi", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Joël Cudennec", "slug": "joël_cudennec", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "JT Schaeffer", "slug": "jt_schaeffer", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Judd Hirsch", "slug": "judd_hirsch", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Judd Hirsch", "slug": "judd_hirsch", "bio": "Actor and performer", "birthplace": "", "photo_url": "/static/images/people/judd_hirsch.jpg"}, {"name": "Jude Law", "slug": "jude_law", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Judy Greer", "slug": "judy_greer", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Julia Louis-Dreyfus", "slug": "julia_louis_dreyfus", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, @@ -4882,7 +4324,7 @@ {"name": "Keana Lyn", "slug": "keana_lyn", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Keke Palmer", "slug": "keke_palmer", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Kelly Calwill", "slug": "kelly_calwill", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Kelly Marie Tran", "slug": "kelly_marie_tran", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Kelly Marie Tran", "slug": "kelly_marie_tran", "bio": "Actor and performer", "birthplace": "", "photo_url": "/static/images/people/kelly_marie_tran.jpg"}, {"name": "Kelly McGillis", "slug": "kelly_mcgillis", "bio": "American actress", "birthplace": "Newport Beach, California, USA", "photo_url": ""}, {"name": "Kenneth Choi", "slug": "kenneth_choi", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Kensho Ono", "slug": "kensho_ono", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, @@ -4911,7 +4353,7 @@ {"name": "Leonora Pitts", "slug": "leonora_pitts", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Lesley Sharp", "slug": "lesley_sharp", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Leslie Garza", "slug": "leslie_garza", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Lewis Tan", "slug": "lewis_tan", "bio": "British actor", "birthplace": "Manchester, England, UK", "photo_url": ""}, + {"name": "Lewis Tan", "slug": "lewis_tan", "bio": "British actor", "birthplace": "Manchester, England, UK", "photo_url": "/static/images/people/lewis_tan.jpg"}, {"name": "Liam Culbertson", "slug": "liam_culbertson", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Liam Serg", "slug": "liam_serg", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Lilah Pate", "slug": "lilah_pate", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, @@ -4933,7 +4375,7 @@ {"name": "Luna Blaise", "slug": "luna_blaise", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Lunetta Savino", "slug": "lunetta_savino", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Mahavir Bhullar", "slug": "mahavir_bhullar", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Mahershala Ali", "slug": "mahershala_ali", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Mahershala Ali", "slug": "mahershala_ali", "bio": "Actor and performer", "birthplace": "", "photo_url": "/static/images/people/mahershala_ali.jpg"}, {"name": "Malhar Thakar", "slug": "malhar_thakar", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Mallori Johnson", "slug": "mallori_johnson", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Mamoudou Athie", "slug": "mamoudou_athie", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, @@ -4949,7 +4391,7 @@ {"name": "Mari Yamamoto", "slug": "mari_yamamoto", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Mark Coles Smith", "slug": "mark_coles_smith", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Mark O'Brien", "slug": "mark_obrien", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Mark Wahlberg", "slug": "mark_wahlberg", "bio": "American actor", "birthplace": "Boston, Massachusetts, USA", "photo_url": ""}, + {"name": "Mark Wahlberg", "slug": "mark_wahlberg", "bio": "American actor", "birthplace": "Boston, Massachusetts, USA", "photo_url": "/static/images/people/mark_wahlberg.jpg"}, {"name": "Marley Aliah", "slug": "marley_aliah", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Martin Short", "slug": "martin_short", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Mary McDonnell", "slug": "mary_mcdonnell", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, @@ -4970,7 +4412,7 @@ {"name": "Megan Suri", "slug": "megan_suri", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Mehcad Brooks", "slug": "mehcad_brooks", "bio": "American actor", "birthplace": "Austin, Texas, USA", "photo_url": ""}, {"name": "Melissa Villaseñor", "slug": "melissa_villaseñor", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Meryl Streep", "slug": "meryl_streep", "bio": "American actress", "birthplace": "Summit, New Jersey, USA", "photo_url": ""}, + {"name": "Meryl Streep", "slug": "meryl_streep", "bio": "American actress", "birthplace": "Summit, New Jersey, USA", "photo_url": "/static/images/people/meryl_streep.jpg"}, {"name": "Mia Goth", "slug": "mia_goth", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Michael Abbott Jr.", "slug": "michael_abbott_jr", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Michael Johnston", "slug": "michael_johnston", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, @@ -4993,7 +4435,7 @@ {"name": "Miriam Socarrás", "slug": "miriam_socarrás", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Mohana Krishnan", "slug": "mohana_krishnan", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Molly Gordon", "slug": "molly_gordon", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Molly Shannon", "slug": "molly_shannon", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Molly Shannon", "slug": "molly_shannon", "bio": "Actor and performer", "birthplace": "", "photo_url": "/static/images/people/molly_shannon.jpg"}, {"name": "Morgan Jay", "slug": "morgan_jay", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Mrs. Dunn", "slug": "mrs_dunn", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Myha'la Herrold", "slug": "myhala_herrold", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, @@ -5032,7 +4474,7 @@ {"name": "Paul Donnelly", "slug": "paul_donnelly", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Paul Gordon", "slug": "paul_gordon", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Paul Grimstad", "slug": "paul_grimstad", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Paul Mescal", "slug": "paul_mescal", "bio": "Irish actor", "birthplace": "Maynooth, Ireland", "photo_url": ""}, + {"name": "Paul Mescal", "slug": "paul_mescal", "bio": "Irish actor", "birthplace": "Maynooth, Ireland", "photo_url": "/static/images/people/paul_mescal.jpg"}, {"name": "Paul Tylak", "slug": "paul_tylak", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Paula Beer", "slug": "paula_beer", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Percy Hynes White", "slug": "percy_hynes_white", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, @@ -5056,7 +4498,7 @@ {"name": "Rebecca Hall", "slug": "rebecca_hall", "bio": "English actress", "birthplace": "London, England, UK", "photo_url": ""}, {"name": "Rebecca Marder", "slug": "rebecca_marder", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Reena Jolly", "slug": "reena_jolly", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Regina Hall", "slug": "regina_hall", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Regina Hall", "slug": "regina_hall", "bio": "Actor and performer", "birthplace": "", "photo_url": "/static/images/people/regina_hall.jpg"}, {"name": "Regé-Jean Page", "slug": "regé_jean_page", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Renee Elise Goldsberry", "slug": "renee_elise_goldsberry", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Richard Forsgren", "slug": "richard_forsgren", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, @@ -5088,7 +4530,7 @@ {"name": "Sam Nivola", "slug": "sam_nivola", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Sam Richardson", "slug": "sam_richardson", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Sam Rockwell", "slug": "sam_rockwell", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Samara Weaving", "slug": "samara_weaving", "bio": "Australian actress", "birthplace": "Adelaide, Australia", "photo_url": ""}, + {"name": "Samara Weaving", "slug": "samara_weaving", "bio": "Australian actress", "birthplace": "Adelaide, Australia", "photo_url": "/static/images/people/samara_weaving.jpg"}, {"name": "Sameera Reddy", "slug": "sameera_reddy", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Samuel L. Jackson", "slug": "samuel_l_jackson", "bio": "American actor", "birthplace": "Washington, D.C., USA", "photo_url": ""}, {"name": "Sandra Bullock", "slug": "sandra_bullock", "bio": "American actress", "birthplace": "Arlington, Virginia, USA", "photo_url": ""}, @@ -5130,7 +4572,7 @@ {"name": "Sophie Telegadis", "slug": "sophie_telegadis", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Sophie Thatcher", "slug": "sophie_thatcher", "bio": "American actress", "birthplace": "Chicago, Illinois, USA", "photo_url": ""}, {"name": "Spike Jonze", "slug": "spike_jonze", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Stanley Tucci", "slug": "stanley_tucci", "bio": "American actor and filmmaker", "birthplace": "Peekskill, New York, USA", "photo_url": ""}, + {"name": "Stanley Tucci", "slug": "stanley_tucci", "bio": "American actor and filmmaker", "birthplace": "Peekskill, New York, USA", "photo_url": "/static/images/people/stanley_tucci.jpg"}, {"name": "Starletta DuPois", "slug": "starletta_dupois", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Stefania Casini", "slug": "stefania_casini", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Stefano Accorsi", "slug": "stefano_accorsi", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, @@ -5155,7 +4597,7 @@ {"name": "Teerawat Mulvilai", "slug": "teerawat_mulvilai", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Teri Polo", "slug": "teri_polo", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Tessa Thompson", "slug": "tessa_thompson", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Teyana Taylor", "slug": "teyana_taylor", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Teyana Taylor", "slug": "teyana_taylor", "bio": "Actor and performer", "birthplace": "", "photo_url": "/static/images/people/teyana_taylor.jpg"}, {"name": "Thanapob Leeratanakachorn", "slug": "thanapob_leeratanakachorn", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Thaneth Warakulnukroh", "slug": "thaneth_warakulnukroh", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Theo James", "slug": "theo_james", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, @@ -5197,11 +4639,11 @@ {"name": "Victoria Pedretti", "slug": "victoria_pedretti", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Viggo Mortensen", "slug": "viggo_mortensen", "bio": "Danish-American actor", "birthplace": "New York City, New York, USA", "photo_url": ""}, {"name": "Vijay Raaz", "slug": "vijay_raaz", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Vince Vaughn", "slug": "vince_vaughn", "bio": "American actor", "birthplace": "Minneapolis, Minnesota, USA", "photo_url": ""}, + {"name": "Vince Vaughn", "slug": "vince_vaughn", "bio": "American actor", "birthplace": "Minneapolis, Minnesota, USA", "photo_url": "/static/images/people/vince_vaughn.jpg"}, {"name": "Vinicio Marchioni", "slug": "vinicio_marchioni", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Vinny Kress", "slug": "vinny_kress", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Viola Davis", "slug": "viola_davis", "bio": "American actress", "birthplace": "St. Matthews, South Carolina, USA", "photo_url": ""}, - {"name": "Vivica A. Fox", "slug": "vivica_a_fox", "bio": "American actress", "birthplace": "South Bend, Indiana, USA", "photo_url": ""}, + {"name": "Vivica A. Fox", "slug": "vivica_a_fox", "bio": "American actress", "birthplace": "South Bend, Indiana, USA", "photo_url": "/static/images/people/vivica_a_fox.jpg"}, {"name": "Vytautas Kaniusonis", "slug": "vytautas_kaniusonis", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Wamiqa Gabbi", "slug": "wamiqa_gabbi", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Wayne Duvall", "slug": "wayne_duvall", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, @@ -5221,10 +4663,12 @@ {"name": "Zach Galifianakis", "slug": "zach_galifianakis", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Zachary Amos", "slug": "zachary_amos", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Zarin Shihab", "slug": "zarin_shihab", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, - {"name": "Zazie Beetz", "slug": "zazie_beetz", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Zazie Beetz", "slug": "zazie_beetz", "bio": "Actor and performer", "birthplace": "", "photo_url": "/static/images/people/zazie_beetz.jpg"}, {"name": "Zen Gesner", "slug": "zen_gesner", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Zoe Winters", "slug": "zoe_winters", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, {"name": "Zosia Mamet", "slug": "zosia_mamet", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Trevor Dawkins", "slug": "trevor_dawkins", "bio": "Actor and performer", "birthplace": "", "photo_url": ""}, + {"name": "Ahmed Ahmed", "slug": "ahmed_ahmed", "bio": "Actor, comedian, and performer", "birthplace": "", "photo_url": ""}, ] @@ -6659,8 +6103,6 @@ {"movie_slug": "suburban_fury", "person_slug": "ben_affleck", "character": "", "order": 2}, {"movie_slug": "wuthering_heights_2026", "person_slug": "margot_robbie", "character": "Catherine Earnshaw", "order": 1}, {"movie_slug": "wuthering_heights_2026", "person_slug": "jacob_elordi", "character": "Heathcliff", "order": 2}, - {"movie_slug": "the_crash_2026", "person_slug": "austin_butler", "character": "", "order": 1}, - {"movie_slug": "the_crash_2026", "person_slug": "pedro_pascal", "character": "", "order": 2}, {"movie_slug": "weapons", "person_slug": "pedro_pascal", "character": "", "order": 1}, {"movie_slug": "weapons", "person_slug": "florence_pugh", "character": "", "order": 2}, {"movie_slug": "weapons", "person_slug": "catherine_zeta_jones", "character": "", "order": 3}, @@ -6669,16 +6111,11 @@ {"movie_slug": "merrily_we_roll_along", "person_slug": "paul_mescal", "character": "", "order": 1}, {"movie_slug": "merrily_we_roll_along", "person_slug": "ben_platt", "character": "", "order": 2}, {"movie_slug": "merrily_we_roll_along", "person_slug": "beanie_feldstein", "character": "", "order": 3}, - {"movie_slug": "sleeping_dog", "person_slug": "russell_crowe", "character": "", "order": 1}, - {"movie_slug": "sleeping_dog", "person_slug": "karen_gillan", "character": "", "order": 2}, {"movie_slug": "beast_2026", "person_slug": "aaron_taylor_johnson", "character": "", "order": 1}, {"movie_slug": "faces_of_death_2026", "person_slug": "jenna_ortega", "character": "", "order": 1}, {"movie_slug": "faces_of_death_2026", "person_slug": "barbie_ferreira", "character": "", "order": 2}, {"movie_slug": "swapped_2026", "person_slug": "zendaya", "character": "", "order": 1}, {"movie_slug": "swapped_2026", "person_slug": "anne_hathaway", "character": "", "order": 2}, - {"movie_slug": "in_the_grey", "person_slug": "henry_cavill", "character": "", "order": 1}, - {"movie_slug": "in_the_grey", "person_slug": "jake_gyllenhaal", "character": "", "order": 2}, - {"movie_slug": "in_the_grey", "person_slug": "eiza_gonzalez", "character": "", "order": 3}, {"movie_slug": "dracula_2025_2", "person_slug": "jacob_elordi", "character": "Dracula", "order": 1}, {"movie_slug": "dracula_2025_2", "person_slug": "lily_rose_depp", "character": "", "order": 2}, {"movie_slug": "cold_storage_2026", "person_slug": "mark_wahlberg", "character": "", "order": 1}, @@ -6926,8 +6363,6 @@ {"movie_slug": "the_stranger_2025", "person_slug": "denis_déon", "character": "Le patron de Meursault", "order": 17}, {"movie_slug": "the_stranger_2025", "person_slug": "théo_costa_marini", "character": "L'agent de police", "order": 18}, {"movie_slug": "the_stranger_2025", "person_slug": "brahim_bihi", "character": "Le gardien-chef", "order": 19}, - {"movie_slug": "the_roast_of_kevin_hart", "person_slug": "shane_gillis", "character": "Host", "order": 1}, - {"movie_slug": "the_roast_of_kevin_hart", "person_slug": "kevin_hart", "character": "Self", "order": 2}, {"movie_slug": "the_rip", "person_slug": "steven_yeun", "character": "", "order": 1}, {"movie_slug": "the_rip", "person_slug": "teyana_taylor", "character": "Detective Numa Baptiste", "order": 2}, {"movie_slug": "the_rip", "person_slug": "kyle_chandler", "character": "", "order": 3}, @@ -6953,14 +6388,6 @@ {"movie_slug": "you_me_and_tuscany", "person_slug": "paolo_sassanelli", "character": "Vincenzo", "order": 8}, {"movie_slug": "you_me_and_tuscany", "person_slug": "aziza_scott", "character": "Claire", "order": 9}, {"movie_slug": "you_me_and_tuscany", "person_slug": "mrs_dunn", "character": "", "order": 10}, - {"movie_slug": "the_butchers_blade", "person_slug": "fengchao_liu", "character": "", "order": 1}, - {"movie_slug": "the_butchers_blade", "person_slug": "shanshan_chunyu", "character": "", "order": 2}, - {"movie_slug": "the_butchers_blade", "person_slug": "fufu_yuan", "character": "", "order": 3}, - {"movie_slug": "100_dates_in_dallas", "person_slug": "jeff_brock", "character": "", "order": 1}, - {"movie_slug": "100_dates_in_dallas", "person_slug": "tracey_birdsall", "character": "Amy", "order": 2}, - {"movie_slug": "100_dates_in_dallas", "person_slug": "colton_tapp", "character": "Keith", "order": 3}, - {"movie_slug": "100_dates_in_dallas", "person_slug": "candice_fawcett", "character": "Marit", "order": 4}, - {"movie_slug": "100_dates_in_dallas", "person_slug": "gil_angelo_anfone", "character": "Dogmud Bartender", "order": 5}, {"movie_slug": "mercy_2026", "person_slug": "chris_pratt", "character": "", "order": 1}, {"movie_slug": "mercy_2026", "person_slug": "rebecca_ferguson", "character": "", "order": 2}, {"movie_slug": "mercy_2026", "person_slug": "kali_reis", "character": "", "order": 3}, @@ -7000,10 +6427,6 @@ {"movie_slug": "yes_2025", "person_slug": "naama_preis", "character": "Leah", "order": 3}, {"movie_slug": "yes_2025", "person_slug": "alexey_serebryakov", "character": "Big Billionaire", "order": 4}, {"movie_slug": "yes_2025", "person_slug": "sharon_alexander", "character": "", "order": 5}, - {"movie_slug": "they_wait_in_shadows", "person_slug": "jessica_hunt", "character": "", "order": 1}, - {"movie_slug": "they_wait_in_shadows", "person_slug": "ross_alan_doney", "character": "", "order": 2}, - {"movie_slug": "they_wait_in_shadows", "person_slug": "simon_berry", "character": "", "order": 3}, - {"movie_slug": "they_wait_in_shadows", "person_slug": "charlie_bentley", "character": "", "order": 4}, {"movie_slug": "hallow_road", "person_slug": "rosamund_pike", "character": "", "order": 1}, {"movie_slug": "hallow_road", "person_slug": "matthew_rhys", "character": "", "order": 2}, {"movie_slug": "hallow_road", "person_slug": "megan_mcdonnell", "character": "Alice", "order": 3}, @@ -7058,68 +6481,11 @@ {"movie_slug": "rental_family", "person_slug": "mari_yamamoto", "character": "", "order": 3}, {"movie_slug": "rental_family", "person_slug": "shannon_gorman", "character": "", "order": 4}, {"movie_slug": "rental_family", "person_slug": "akira_emoto", "character": "", "order": 5}, - {"movie_slug": "mobile_suit_gundam_hathaway_the_sorcery_of_nymph_circe", "person_slug": "kensho_ono", "character": "Hathaway Noa", "order": 1}, - {"movie_slug": "mobile_suit_gundam_hathaway_the_sorcery_of_nymph_circe", "person_slug": "junichi_suwabe", "character": "Kenneth Sleg", "order": 2}, - {"movie_slug": "mobile_suit_gundam_hathaway_the_sorcery_of_nymph_circe", "person_slug": "soma_saito", "character": "Lane Aim", "order": 3}, - {"movie_slug": "mobile_suit_gundam_hathaway_the_sorcery_of_nymph_circe", "person_slug": "yui_ishikawa", "character": "", "order": 4}, - {"movie_slug": "mobile_suit_gundam_hathaway_the_sorcery_of_nymph_circe", "person_slug": "fukushi_ochiai", "character": "Raymond Cain", "order": 5}, {"movie_slug": "decorado_2025", "person_slug": "asier_hormaza", "character": "Arnold", "order": 1}, {"movie_slug": "decorado_2025", "person_slug": "aintzane_gamiz", "character": "María", "order": 2}, {"movie_slug": "decorado_2025", "person_slug": "kandido_uranga", "character": "Búho Gigante", "order": 3}, {"movie_slug": "decorado_2025", "person_slug": "mikel_garmendia", "character": "Capataz", "order": 4}, {"movie_slug": "decorado_2025", "person_slug": "josé_felipe_auzmendi", "character": "Carlos", "order": 5}, - {"movie_slug": "been_here_stay_here", "person_slug": "james_eskridge", "character": "Self", "order": 1}, - {"movie_slug": "been_here_stay_here", "person_slug": "cameron_evans", "character": "", "order": 2}, - {"movie_slug": "i_dont_speak_english_2026", "person_slug": "nathan_smith_jones", "character": "", "order": 1}, - {"movie_slug": "i_dont_speak_english_2026", "person_slug": "jorge_cervera_jr", "character": "Jorge", "order": 2}, - {"movie_slug": "i_dont_speak_english_2026", "person_slug": "leslie_garza", "character": "Lourdes", "order": 3}, - {"movie_slug": "i_dont_speak_english_2026", "person_slug": "christopher_robin_miller", "character": "", "order": 4}, - {"movie_slug": "i_dont_speak_english_2026", "person_slug": "graciela_beltrán", "character": "Marielena", "order": 5}, - {"movie_slug": "i_dont_speak_english_2026", "person_slug": "lilly_melgar", "character": "Marta", "order": 6}, - {"movie_slug": "i_dont_speak_english_2026", "person_slug": "liam_culbertson", "character": "", "order": 7}, - {"movie_slug": "aakhri_sawal", "person_slug": "sanjay_dutt", "character": "", "order": 1}, - {"movie_slug": "aakhri_sawal", "person_slug": "amit_sadh", "character": "", "order": 2}, - {"movie_slug": "aakhri_sawal", "person_slug": "namashi_chakraborthy", "character": "", "order": 3}, - {"movie_slug": "aakhri_sawal", "person_slug": "sameera_reddy", "character": "", "order": 4}, - {"movie_slug": "aakhri_sawal", "person_slug": "neetu_chandra", "character": "", "order": 5}, - {"movie_slug": "aakhri_sawal", "person_slug": "tridha_choudhury", "character": "", "order": 6}, - {"movie_slug": "pati_patni_aur_woh_do", "person_slug": "wamiqa_gabbi", "character": "Patni", "order": 1}, - {"movie_slug": "pati_patni_aur_woh_do", "person_slug": "rakul_preet_singh", "character": "Nilofer Khan", "order": 2}, - {"movie_slug": "pati_patni_aur_woh_do", "person_slug": "ayushmann_khurrana", "character": "Pati, Prajapati Pandey", "order": 3}, - {"movie_slug": "pati_patni_aur_woh_do", "person_slug": "sheeba_chaddha", "character": "", "order": 4}, - {"movie_slug": "pati_patni_aur_woh_do", "person_slug": "sara_ali_khan", "character": "Chanchal Kumari", "order": 5}, - {"movie_slug": "pati_patni_aur_woh_do", "person_slug": "vijay_raaz", "character": "", "order": 6}, - {"movie_slug": "pati_patni_aur_woh_do", "person_slug": "ayesha_raza_mishra", "character": "", "order": 7}, - {"movie_slug": "pati_patni_aur_woh_do", "person_slug": "tigmanshu_dhulia", "character": "Gajraj Tiwari", "order": 8}, - {"movie_slug": "pati_patni_aur_woh_do", "person_slug": "ravi_kumar", "character": "", "order": 9}, - {"movie_slug": "shera_2026", "person_slug": "sonal_chauhan", "character": "", "order": 1}, - {"movie_slug": "shera_2026", "person_slug": "manav_vij", "character": "", "order": 2}, - {"movie_slug": "shera_2026", "person_slug": "hashneen_chauhan", "character": "", "order": 3}, - {"movie_slug": "shera_2026", "person_slug": "yograj_singh", "character": "Pali", "order": 4}, - {"movie_slug": "shera_2026", "person_slug": "mahavir_bhullar", "character": "", "order": 5}, - {"movie_slug": "shera_2026", "person_slug": "rose_j_kaur", "character": "", "order": 6}, - {"movie_slug": "shera_2026", "person_slug": "victor_john", "character": "", "order": 7}, - {"movie_slug": "shera_2026", "person_slug": "guru_bamrah", "character": "", "order": 8}, - {"movie_slug": "being_towards_death", "person_slug": "long_jiang", "character": "", "order": 1}, - {"movie_slug": "being_towards_death", "person_slug": "chaoyue_yang", "character": "", "order": 2}, - {"movie_slug": "vanishing_point_2026", "person_slug": "ryan_zheng", "character": "", "order": 1}, - {"movie_slug": "vanishing_point_2026", "person_slug": "haocun_liu", "character": "", "order": 2}, - {"movie_slug": "vanishing_point_2026", "person_slug": "roy_chiu", "character": "", "order": 3}, - {"movie_slug": "dharpakad_2026", "person_slug": "malhar_thakar", "character": "", "order": 1}, - {"movie_slug": "dharpakad_2026", "person_slug": "shruhad_goswami", "character": "", "order": 2}, - {"movie_slug": "dharpakad_2026", "person_slug": "prashant_barot", "character": "", "order": 3}, - {"movie_slug": "dharpakad_2026", "person_slug": "pratik_rathod", "character": "", "order": 4}, - {"movie_slug": "saptadingar_guptodhon", "person_slug": "abir_chatterjee", "character": "", "order": 1}, - {"movie_slug": "saptadingar_guptodhon", "person_slug": "arjun_chakrabarty", "character": "", "order": 2}, - {"movie_slug": "saptadingar_guptodhon", "person_slug": "ishaa_saha", "character": "", "order": 3}, - {"movie_slug": "saptadingar_guptodhon", "person_slug": "kaushik_ganguly", "character": "", "order": 4}, - {"movie_slug": "athiradi", "person_slug": "basil_joseph", "character": "", "order": 1}, - {"movie_slug": "athiradi", "person_slug": "tovino_thomas", "character": "", "order": 2}, - {"movie_slug": "athiradi", "person_slug": "zarin_shihab", "character": "", "order": 3}, - {"movie_slug": "karuppu", "person_slug": "suriya", "character": "", "order": 1}, - {"movie_slug": "karuppu", "person_slug": "swasika", "character": "", "order": 2}, - {"movie_slug": "karuppu", "person_slug": "trisha_krishnan", "character": "", "order": 3}, - {"movie_slug": "enhypen_immersion_in_cinemas", "person_slug": "enhypen", "character": "Self", "order": 1}, {"movie_slug": "apex_2026", "person_slug": "charlize_theron", "character": "Sasha", "order": 1}, {"movie_slug": "apex_2026", "person_slug": "taron_egerton", "character": "Ben", "order": 2}, {"movie_slug": "apex_2026", "person_slug": "eric_bana", "character": "Tommy", "order": 3}, @@ -7201,25 +6567,6 @@ {"movie_slug": "the_sheep_detectives", "person_slug": "conleth_hill", "character": "Ham Gilyard", "order": 16}, {"movie_slug": "the_sheep_detectives", "person_slug": "mandeep_dhillon", "character": "Postwoman Jo", "order": 17}, {"movie_slug": "marty_life_is_short", "person_slug": "martin_short", "character": "Self", "order": 1}, - {"movie_slug": "my_dearest_assassin", "person_slug": "pimchanok_luevisadpaibul", "character": "", "order": 1}, - {"movie_slug": "my_dearest_assassin", "person_slug": "thanapob_leeratanakachorn", "character": "", "order": 2}, - {"movie_slug": "my_dearest_assassin", "person_slug": "toni_rakkaen", "character": "", "order": 3}, - {"movie_slug": "my_dearest_assassin", "person_slug": "kessarin_ektawatkul", "character": "", "order": 4}, - {"movie_slug": "my_dearest_assassin", "person_slug": "chanudom_suksathit", "character": "", "order": 5}, - {"movie_slug": "my_dearest_assassin", "person_slug": "sivakorn_adulsuttikul", "character": "", "order": 6}, - {"movie_slug": "my_dearest_assassin", "person_slug": "chartayodom_hiranyasthiti", "character": "", "order": 7}, - {"movie_slug": "my_dearest_assassin", "person_slug": "teerawat_mulvilai", "character": "", "order": 8}, - {"movie_slug": "my_dearest_assassin", "person_slug": "chanudom_suksatit", "character": "", "order": 9}, - {"movie_slug": "my_dearest_assassin", "person_slug": "win_sakulsaengprapha", "character": "", "order": 10}, - {"movie_slug": "my_dearest_assassin", "person_slug": "natthaya_ongsritragul", "character": "", "order": 11}, - {"movie_slug": "je_mappelle_agneta", "person_slug": "eva_melander", "character": "Agneta", "order": 1}, - {"movie_slug": "je_mappelle_agneta", "person_slug": "claes_månsson", "character": "Einar", "order": 2}, - {"movie_slug": "je_mappelle_agneta", "person_slug": "jérémie_covillault", "character": "Fabien", "order": 3}, - {"movie_slug": "je_mappelle_agneta", "person_slug": "björn_kjellman", "character": "Magnus", "order": 4}, - {"movie_slug": "je_mappelle_agneta", "person_slug": "richard_forsgren", "character": "Paul", "order": 5}, - {"movie_slug": "je_mappelle_agneta", "person_slug": "anne_marie_ponsot", "character": "Bonibelle", "order": 6}, - {"movie_slug": "je_mappelle_agneta", "person_slug": "alain_doutey", "character": "Henri", "order": 7}, - {"movie_slug": "je_mappelle_agneta", "person_slug": "måns_molin", "character": "Young Einar", "order": 8}, {"movie_slug": "spositions", "person_slug": "michael_kunicki", "character": "Mike Alvarado", "order": 1}, {"movie_slug": "spositions", "person_slug": "vinny_kress", "character": "Vinny", "order": 2}, {"movie_slug": "spositions", "person_slug": "travis", "character": "", "order": 3}, @@ -7231,21 +6578,6 @@ {"movie_slug": "spositions", "person_slug": "ben_gojer", "character": "", "order": 9}, {"movie_slug": "marc_by_sofia", "person_slug": "marc_jacobs", "character": "Self", "order": 1}, {"movie_slug": "marc_by_sofia", "person_slug": "spike_jonze", "character": "Self", "order": 2}, - {"movie_slug": "cotton_candy_bubble_gum", "person_slug": "morgan_jay", "character": "Angel", "order": 1}, - {"movie_slug": "cotton_candy_bubble_gum", "person_slug": "r_marcus_taylor", "character": "Capital Gainz", "order": 2}, - {"movie_slug": "cotton_candy_bubble_gum", "person_slug": "jack_stone", "character": "Nate", "order": 3}, - {"movie_slug": "cotton_candy_bubble_gum", "person_slug": "ben_scattone", "character": "Jason", "order": 4}, - {"movie_slug": "cotton_candy_bubble_gum", "person_slug": "mildred_marie_langford", "character": "Dolores", "order": 5}, - {"movie_slug": "cotton_candy_bubble_gum", "person_slug": "rodney_j_hobbs", "character": "Randy", "order": 6}, - {"movie_slug": "cotton_candy_bubble_gum", "person_slug": "jecobi_swain", "character": "", "order": 7}, - {"movie_slug": "an_enemy_within", "person_slug": "william_moseley", "character": "", "order": 1}, - {"movie_slug": "an_enemy_within", "person_slug": "patrick_baladi", "character": "", "order": 2}, - {"movie_slug": "an_enemy_within", "person_slug": "kim_spearman", "character": "", "order": 3}, - {"movie_slug": "an_enemy_within", "person_slug": "alexander_lincoln", "character": "", "order": 4}, - {"movie_slug": "an_enemy_within", "person_slug": "tristan_gemmill", "character": "", "order": 5}, - {"movie_slug": "an_enemy_within", "person_slug": "kate_isitt", "character": "", "order": 6}, - {"movie_slug": "an_enemy_within", "person_slug": "toyin_omari_kinch", "character": "", "order": 7}, - {"movie_slug": "an_enemy_within", "person_slug": "frances_wilding", "character": "", "order": 8}, {"movie_slug": "balls_up_2026", "person_slug": "mark_wahlberg", "character": "Brad", "order": 1}, {"movie_slug": "balls_up_2026", "person_slug": "paul_walter_hauser", "character": "Elijah", "order": 2}, {"movie_slug": "balls_up_2026", "person_slug": "isabella_costa", "character": "", "order": 3}, @@ -7264,7 +6596,6 @@ {"movie_slug": "balls_up_2026", "person_slug": "henrietta_amevor", "character": "Monique", "order": 16}, {"movie_slug": "balls_up_2026", "person_slug": "abe_farrelly", "character": "Steve", "order": 17}, {"movie_slug": "balls_up_2026", "person_slug": "ryan_shelton", "character": "Raoul", "order": 18}, - {"movie_slug": "lisa_ann_walter_it_was_an_accident", "person_slug": "lisa_ann_walter", "character": "Self", "order": 1}, {"movie_slug": "one_battle_after_another", "person_slug": "sean_penn", "character": "Col. Steven J. Lockjaw", "order": 1}, {"movie_slug": "one_battle_after_another", "person_slug": "chase_infiniti", "character": "Willa", "order": 2}, {"movie_slug": "one_battle_after_another", "person_slug": "benicio_del_toro", "character": "Sensei Sergio St. Carlos", "order": 3}, @@ -7287,14 +6618,22 @@ {"movie_slug": "undertone", "person_slug": "michèle_duquet", "character": "Mama", "order": 2}, {"movie_slug": "undertone", "person_slug": "keana_lyn", "character": "", "order": 3}, {"movie_slug": "undertone", "person_slug": "jeff_yung", "character": "", "order": 4}, - {"movie_slug": "voices_carry_2025", "person_slug": "gia_crovatin", "character": "", "order": 1}, - {"movie_slug": "voices_carry_2025", "person_slug": "jeremy_holm", "character": "", "order": 2}, - {"movie_slug": "voices_carry_2025", "person_slug": "dwayne_hill", "character": "", "order": 3}, - {"movie_slug": "voices_carry_2025", "person_slug": "geraldine_singer", "character": "", "order": 4}, - {"movie_slug": "voices_carry_2025", "person_slug": "robert_aberdeen", "character": "", "order": 5}, - {"movie_slug": "voices_carry_2025", "person_slug": "jeff_ayars", "character": "", "order": 6}, - {"movie_slug": "sofia_2025", "person_slug": "megan_gage", "character": "", "order": 1}, - {"movie_slug": "sofia_2025", "person_slug": "joseph_william_evans", "character": "", "order": 2}, + # Cast for previously no-cast movies + {"movie_slug": "a_great_awakening", "person_slug": "john_paul_sneed", "character": "", "order": 1}, + {"movie_slug": "a_great_awakening", "person_slug": "jonathan_blair", "character": "", "order": 2}, + {"movie_slug": "a_great_awakening", "person_slug": "josh_bates", "character": "", "order": 3}, + {"movie_slug": "a_great_awakening", "person_slug": "alana_gerlach", "character": "", "order": 4}, + {"movie_slug": "a_great_awakening", "person_slug": "russell_dean_schultz", "character": "", "order": 5}, + {"movie_slug": "spositions", "person_slug": "michael_kunicki", "character": "", "order": 1}, + {"movie_slug": "spositions", "person_slug": "vinny_kress", "character": "", "order": 2}, + {"movie_slug": "spositions", "person_slug": "trevor_dawkins", "character": "", "order": 3}, + {"movie_slug": "spositions", "person_slug": "kaylyn_carter", "character": "", "order": 4}, + {"movie_slug": "spositions", "person_slug": "jeffrey_a_hunter", "character": "", "order": 5}, + {"movie_slug": "buffet_infinity", "person_slug": "kevin_singh", "character": "", "order": 1}, + {"movie_slug": "buffet_infinity", "person_slug": "ahmed_ahmed", "character": "", "order": 2}, + {"movie_slug": "buffet_infinity", "person_slug": "brandon_vanderwall", "character": "", "order": 3}, + {"movie_slug": "buffet_infinity", "person_slug": "ben_bauce", "character": "", "order": 4}, + {"movie_slug": "buffet_infinity", "person_slug": "allison_bench", "character": "", "order": 5}, ] diff --git a/sites/rotten_tomatoes/static/css/style.css b/sites/rotten_tomatoes/static/css/style.css index 6750e060..6b44668f 100644 --- a/sites/rotten_tomatoes/static/css/style.css +++ b/sites/rotten_tomatoes/static/css/style.css @@ -107,8 +107,13 @@ img { max-width: 100%; height: auto; } .where-to-watch h3 { font-size: 14px; margin-bottom: 6px; } .platform-badge { display: inline-block; background: var(--rt-dark); color: #FFF; padding: 4px 12px; border-radius: 20px; font-size: 13px; font-weight: 600; } -.movie-details-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; font-size: 14px; } -.detail-label { font-weight: 600; color: var(--text-light); } +.movie-details-grid.movie-info-box { display: flex; flex-direction: column; gap: 0; font-size: 14px; margin-top: 20px; border-top: 2px solid var(--text); padding-top: 12px; } +.info-box-title { font-size: 22px; font-weight: 700; margin: 0 0 12px 0; color: var(--text); } +.movie-info-box .detail-item { display: flex; flex-direction: column; padding: 10px 0; border-bottom: 1px solid #e8e8e8; } +.movie-info-box .detail-label { font-size: 12px; font-weight: 600; color: var(--text-light); text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 2px; } +.movie-info-box .detail-value { font-size: 14px; color: var(--text); line-height: 1.5; } +.movie-info-box .detail-value a { color: var(--text); text-decoration: underline; } +.movie-info-box .detail-value a:hover { color: var(--rt-red); } /* ── Consensus ── */ .consensus-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; } @@ -120,6 +125,7 @@ img { max-width: 100%; height: auto; } .cast-card { display: block; width: 100px; text-align: center; color: var(--text); } .cast-card:hover { text-decoration: none; } .cast-card img { width: 80px; height: 80px; border-radius: 50%; object-fit: cover; background: var(--bg-alt); } +.cast-placeholder { width: 80px; height: 80px; border-radius: 50%; background: var(--bg-alt, #E0E0E0); display: flex; align-items: center; justify-content: center; font-size: 32px; margin: 0 auto; } .cast-name { font-size: 12px; font-weight: 600; margin-top: 6px; } .cast-character { font-size: 11px; color: var(--text-light); } @@ -241,3 +247,60 @@ img { max-width: 100%; height: auto; } .what-to-know h2 { margin-bottom: 16px; } .cast-section { margin: 32px 0; } .cast-section h2 { margin-bottom: 16px; } + + +/* ── Profile Pages ── */ +.profile-page { max-width: 900px; margin: 0 auto; } +.profile-page h1 { margin-bottom: 8px; } + +.profile-header { display: flex; gap: 24px; align-items: center; margin-bottom: 24px; padding: 24px; background: var(--bg-alt); border-radius: var(--radius); } +.profile-avatar { width: 80px; height: 80px; border-radius: 50%; background: var(--rt-dark); color: #FFF; display: flex; align-items: center; justify-content: center; font-size: 36px; font-weight: 700; flex-shrink: 0; } +.profile-info h1 { font-size: 24px; margin-bottom: 4px; } +.profile-email { color: var(--text-light); font-size: 14px; } +.profile-joined { color: var(--text-light); font-size: 13px; margin-bottom: 8px; } + +.profile-tabs { display: flex; gap: 0; border-bottom: 2px solid var(--border); margin-bottom: 24px; } +.profile-tab { padding: 12px 20px; font-size: 14px; font-weight: 600; color: var(--text-light); border-bottom: 3px solid transparent; margin-bottom: -2px; transition: all 0.15s; } +.profile-tab:hover { color: var(--text); text-decoration: none; } +.profile-tab.active { color: var(--rt-red); border-bottom-color: var(--rt-red); } + +.profile-stats { display: flex; gap: 16px; margin-top: 24px; } +.stat-card { flex: 1; text-align: center; padding: 20px; background: var(--bg-alt); border-radius: var(--radius); } +.stat-card .stat-number { font-size: 32px; font-weight: 700; color: var(--rt-dark); } +.stat-card .stat-label { font-size: 13px; color: var(--text-light); text-transform: uppercase; margin-top: 4px; } + +/* ── Edit Profile ── */ +.edit-form-container { max-width: 500px; margin-top: 24px; } +.edit-form .form-group { margin-bottom: 16px; } +.form-hint { display: block; font-size: 12px; color: var(--text-light); margin-top: 4px; } +.form-actions { display: flex; gap: 12px; margin-top: 24px; } + +/* ── User Star Ratings ── */ +.movie-card-rated { text-align: center; } +.user-star-rating { margin-top: 6px; font-size: 14px; color: #F5C518; letter-spacing: 1px; } +.user-star-rating .rating-value { color: var(--text-light); font-size: 12px; margin-left: 4px; } + +/* ── User Reviews ── */ +.user-review-card { display: flex; gap: 16px; padding: 16px; background: var(--bg-alt); border-radius: var(--radius); margin-bottom: 12px; } +.review-poster { width: 60px; height: 90px; border-radius: 4px; object-fit: cover; flex-shrink: 0; } +.review-movie-link { flex-shrink: 0; } +.review-body { flex: 1; } +.review-movie-title { font-weight: 700; font-size: 16px; color: var(--text); display: block; margin-bottom: 6px; } +.review-movie-title:hover { color: var(--rt-red); } +.review-body .review-text { font-size: 14px; line-height: 1.5; margin: 8px 0; } +.review-date { font-size: 12px; color: var(--text-light); } +.delete-review-form { margin-top: 6px; } +.delete-review-btn { background: none; border: 1px solid #ddd; border-radius: 4px; padding: 3px 10px; font-size: 12px; color: var(--text-light); cursor: pointer; transition: all 0.15s; } +.delete-review-btn:hover { border-color: #e74c3c; color: #e74c3c; } + +/* ── Watchlist Badge (on cards) ── */ +.movie-card-wrapper { display: flex; flex-direction: column; align-items: center; width: 160px; min-width: 160px; flex: 0 0 160px; } +.movie-card-wrapper .movie-card { flex: 1; display: flex; flex-direction: column; width: 160px; } +.movie-card-wrapper .card-title { flex: 1; min-height: 36px; } +.watchlist-badge { display: inline-block; margin-top: 8px; padding: 6px 16px; border: 1.5px solid var(--border); border-radius: 20px; font-size: 12px; font-weight: 600; color: var(--text-light); background: transparent; cursor: pointer; transition: all 0.15s; text-align: center; text-decoration: none; white-space: nowrap; } +.watchlist-badge:hover { border-color: var(--rt-red); color: var(--rt-red); text-decoration: none; } +.watchlist-badge.added { border-color: var(--fresh); color: var(--fresh); cursor: default; } +.watchlist-inline-form { margin: 0; padding: 0; } + +/* Grid wrapper fix for browse page with watchlist buttons */ +.movie-grid .movie-card-wrapper { width: auto; min-width: auto; } diff --git a/sites/rotten_tomatoes/static/icons/placeholder.png b/sites/rotten_tomatoes/static/icons/placeholder.png index 1caee266338d2c7d385755b663df8ed1852c10ad..f18db6de6c7f82c0e55d563b6c1637935df3bab1 100644 GIT binary patch literal 862 zcmeAS@N?(olHy`uVBq!ia0vp^3xN0o2NRIwQ2x=&z`(5P>EaktG3V_$MotC;fg>A! zh5rm%wn(PO&2dLfZ>fUbwZTYNMv`^*9UiVC(MQ$#PjOY-5-f zg)XJ{MTneposV^#t!RiyZ~|fVCST*GkbvNDB4}DdEoajw$bLvpA*%?^cfo1A(%hebsgVvO4Z`OhJhCKBf@=rS|ddv JwJiVX-4A{YJBk1R diff --git a/sites/rotten_tomatoes/static/icons/placeholder.svg b/sites/rotten_tomatoes/static/icons/placeholder.svg new file mode 100644 index 00000000..1caee266 --- /dev/null +++ b/sites/rotten_tomatoes/static/icons/placeholder.svg @@ -0,0 +1 @@ +No Image diff --git a/sites/rotten_tomatoes/tasks.jsonl b/sites/rotten_tomatoes/tasks.jsonl index 788c37a9..68523ceb 100644 --- a/sites/rotten_tomatoes/tasks.jsonl +++ b/sites/rotten_tomatoes/tasks.jsonl @@ -1,20 +1,20 @@ -{"task_id": "rt_001", "instruction": "Find the Tomatometer score of 'Avengers: Endgame'", "expected_answer": "94%", "category": "information_retrieval"} -{"task_id": "rt_002", "instruction": "What is the audience score for 'Dune: Part Two'?", "expected_answer": "95%", "category": "information_retrieval"} -{"task_id": "rt_003", "instruction": "Search for 'Oppenheimer' and find its director", "expected_answer": "Christopher Nolan", "category": "information_retrieval"} -{"task_id": "rt_004", "instruction": "What is the critics consensus for 'Parasite'?", "expected_answer": "An urgent, brilliantly layered look at timely social themes, Parasite finds writer-director Bong Joon Ho in near-total command of his craft.", "category": "information_retrieval"} -{"task_id": "rt_005", "instruction": "Find out which streaming platform has 'Godzilla Minus One'", "expected_answer": "Netflix", "category": "information_retrieval"} -{"task_id": "rt_006", "instruction": "What is the box office gross for 'Barbie'?", "expected_answer": "$636.2M", "category": "information_retrieval"} -{"task_id": "rt_007", "instruction": "Is 'The Dark Knight' Certified Fresh?", "expected_answer": "Yes", "category": "information_retrieval"} -{"task_id": "rt_008", "instruction": "What character does Tom Cruise play in 'Top Gun: Maverick'?", "expected_answer": "Pete 'Maverick' Mitchell", "category": "information_retrieval"} -{"task_id": "rt_009", "instruction": "Find the runtime of 'Everything Everywhere All at Once'", "expected_answer": "2h 12m", "category": "information_retrieval"} -{"task_id": "rt_010", "instruction": "Who directed 'The Wild Robot'?", "expected_answer": "Christopher Sanders", "category": "information_retrieval"} -{"task_id": "rt_011", "instruction": "Create an account with email 'newuser@test.com', name 'Test User', and password 'SecurePass99!'", "expected_answer": "account_created", "category": "account_management"} -{"task_id": "rt_012", "instruction": "Log in with email 'alice.j@test.com' and password 'TestPass123!'", "expected_answer": "login_success", "category": "account_management"} -{"task_id": "rt_013", "instruction": "After logging in as alice_jones, add 'Sinners' to the watchlist", "expected_answer": "added_to_watchlist", "category": "user_action"} -{"task_id": "rt_014", "instruction": "After logging in as bob_clark, rate 'Superman' 4 out of 5 stars", "expected_answer": "rating_submitted", "category": "user_action"} -{"task_id": "rt_015", "instruction": "Find all movies with a Tomatometer score of 99% or higher", "expected_answer": "Godzilla Minus One, Parasite, The Perfect Neighbor, Pillion", "category": "browse_filter"} -{"task_id": "rt_016", "instruction": "Browse Horror movies available to stream", "expected_answer": "list_of_horror_movies", "category": "browse_filter"} -{"task_id": "rt_017", "instruction": "Compare the Tomatometer and audience scores of 'Inside Out 2'", "expected_answer": "Tomatometer: 91%, Audience: 94%", "category": "information_retrieval"} -{"task_id": "rt_018", "instruction": "Find movies directed by Christopher Nolan on the site", "expected_answer": "The Dark Knight, Oppenheimer, Interstellar", "category": "information_retrieval"} -{"task_id": "rt_019", "instruction": "What is the PG rating for 'Deadpool & Wolverine'?", "expected_answer": "R", "category": "information_retrieval"} -{"task_id": "rt_020", "instruction": "After logging in as carol_davis, check her watchlist and find all movies on it", "expected_answer": "Barbie, Everything Everywhere All at Once, The Substance, Nosferatu", "category": "user_action"} +{"web_name": "RottenTomatoes", "id": "RottenTomatoes--0", "ques": "Browse movies at home filtered by the Sci-Fi genre. Find the movie with the highest audience score among the results, navigate to its detail page, and report the name of its director.", "web": "http://localhost:40015/", "upstream_url": "https://www.rottentomatoes.com/"} +{"web_name": "RottenTomatoes", "id": "RottenTomatoes--1", "ques": "Search for 'Parasite' and go to its movie page. What is the difference between the Tomatometer score and the audience score?", "web": "http://localhost:40015/", "upstream_url": "https://www.rottentomatoes.com/"} +{"web_name": "RottenTomatoes", "id": "RottenTomatoes--2", "ques": "Search for 'knives out' and find the Knives Out sequel/mystery movie on the site. What streaming platform is it available on?", "web": "http://localhost:40015/", "upstream_url": "https://www.rottentomatoes.com/"} +{"web_name": "RottenTomatoes", "id": "RottenTomatoes--3", "ques": "Go to the Oppenheimer movie page and find who produced it. One of the producers also produced The Dark Knight and another well-known movie on this site. Search for and visit that third movie's page \u2014 what is its Tomatometer score?", "web": "http://localhost:40015/", "upstream_url": "https://www.rottentomatoes.com/"} +{"web_name": "RottenTomatoes", "id": "RottenTomatoes--4", "ques": "Browse movies at home and filter by the Animation genre and Certified Fresh. How many movies match these filters?", "web": "http://localhost:40015/", "upstream_url": "https://www.rottentomatoes.com/"} +{"web_name": "RottenTomatoes", "id": "RottenTomatoes--5", "ques": "Search for 'Cold Storage' and 'Jurassic World Rebirth' and visit both movie pages. Look at the Movie Info section \u2014 who is the screenwriter they have in common? What is the Tomatometer score difference between these two movies?", "web": "http://localhost:40015/", "upstream_url": "https://www.rottentomatoes.com/"} +{"web_name": "RottenTomatoes", "id": "RottenTomatoes--6", "ques": "Browse movies at home filtered to Disney+ platform, then filtered to Max platform. Compare the number of Certified Fresh movies available on each. Which platform has more Certified Fresh titles, and how many does each have?", "web": "http://localhost:40015/", "upstream_url": "https://www.rottentomatoes.com/"} +{"web_name": "RottenTomatoes", "id": "RottenTomatoes--7", "ques": "Go to Timoth\u00e9e Chalamet's celebrity page and find all movies in his filmography. Then check which of those movies are Certified Fresh by visiting each movie's detail page. How many are Certified Fresh?", "web": "http://localhost:40015/", "upstream_url": "https://www.rottentomatoes.com/"} +{"web_name": "RottenTomatoes", "id": "RottenTomatoes--8", "ques": "Register a new account with email testreviewer@test.com, name 'Test Reviewer', and password ReviewPass456!. After registering, verify you can access the account page.", "web": "http://localhost:40015/", "upstream_url": "https://www.rottentomatoes.com/"} +{"web_name": "RottenTomatoes", "id": "RottenTomatoes--9", "ques": "Log in as bob.c@test.com (password: TestPass123!), go to the account settings, and change the display name to 'Robert Clark'. Verify the name was updated on the account page.", "web": "http://localhost:40015/", "upstream_url": "https://www.rottentomatoes.com/"} +{"web_name": "RottenTomatoes", "id": "RottenTomatoes--10", "ques": "Log in as bob.c@test.com (password: TestPass123!), search for 'Parasite', navigate to its movie page, and add it to your watchlist. Then go to the watchlist page and verify 'Parasite' appears there. How many total movies are now in Bob's watchlist?", "web": "http://localhost:40015/", "upstream_url": "https://www.rottentomatoes.com/"} +{"web_name": "RottenTomatoes", "id": "RottenTomatoes--11", "ques": "Log in as david.k@test.com (password: TestPass123!), go to the watchlist page, and remove 'Deadpool & Wolverine' from the watchlist. How many movies remain in David's watchlist after removal?", "web": "http://localhost:40015/", "upstream_url": "https://www.rottentomatoes.com/"} +{"web_name": "RottenTomatoes", "id": "RottenTomatoes--12", "ques": "Log in as carol.d@test.com (password: TestPass123!). Search for 'Dune: Part Two', add it to your watchlist. Then search for 'Oppenheimer' and add that to your watchlist too. Go to the watchlist page \u2014 how many total movies are in Carol's watchlist now?", "web": "http://localhost:40015/", "upstream_url": "https://www.rottentomatoes.com/"} +{"web_name": "RottenTomatoes", "id": "RottenTomatoes--13", "ques": "Log in as alice.j@test.com (password: TestPass123!), search for 'The Dark Knight', go to its movie page, and give it a rating of 5 out of 5 stars. Then navigate to the 'My Ratings' page and verify the rating appears there.", "web": "http://localhost:40015/", "upstream_url": "https://www.rottentomatoes.com/"} +{"web_name": "RottenTomatoes", "id": "RottenTomatoes--14", "ques": "Log in as carol.d@test.com (password: TestPass123!) and navigate to the 'My Ratings' page. How many movies has Carol rated, and what score did she give to 'Oddity'?", "web": "http://localhost:40015/", "upstream_url": "https://www.rottentomatoes.com/"} +{"web_name": "RottenTomatoes", "id": "RottenTomatoes--15", "ques": "Log in as carol.d@test.com (password: TestPass123!), navigate to the 'Dune: Part Two' movie page, and submit an audience review with the text 'A visually stunning sequel that surpasses the original in every way' and a score of 5 out of 5. Then check the 'My Reviews' page to confirm it was saved.", "web": "http://localhost:40015/", "upstream_url": "https://www.rottentomatoes.com/"} +{"web_name": "RottenTomatoes", "id": "RottenTomatoes--16", "ques": "Log in as david.k@test.com (password: TestPass123!), go to the 'Superman' movie page, and write an audience review saying 'James Gunn delivers a fresh take on the Man of Steel' with a rating of 4 out of 5. After submitting, reload the page and verify your review appears in the audience reviews section.", "web": "http://localhost:40015/", "upstream_url": "https://www.rottentomatoes.com/"} +{"web_name": "RottenTomatoes", "id": "RottenTomatoes--17", "ques": "Compare 'Superman' and 'The Fantastic Four: First Steps' by visiting both movie pages. Which one has a higher Tomatometer score, and by how many percentage points?", "web": "http://localhost:40015/", "upstream_url": "https://www.rottentomatoes.com/"} +{"web_name": "RottenTomatoes", "id": "RottenTomatoes--18", "ques": "Search for 'Avengers: Endgame' and look at its Movie Info section to find the producer. Then search for other movies by that same producer on this site. Among all movies produced by this person, which one has the highest audience score, and what is it?", "web": "http://localhost:40015/", "upstream_url": "https://www.rottentomatoes.com/"} +{"web_name": "RottenTomatoes", "id": "RottenTomatoes--19", "ques": "Register a new account with email filmfan@test.com and password FilmFan123!. Then search for 'Inside Out 2', navigate to its page, add it to your watchlist, and give it a rating of 5 stars. Finally, go to your watchlist page to confirm it was added. How many items are in your watchlist?", "web": "http://localhost:40015/", "upstream_url": "https://www.rottentomatoes.com/"} diff --git a/sites/rotten_tomatoes/templates/account.html b/sites/rotten_tomatoes/templates/account.html new file mode 100644 index 00000000..76313a4c --- /dev/null +++ b/sites/rotten_tomatoes/templates/account.html @@ -0,0 +1,33 @@ +{% extends "base.html" %} +{% block title %}My Profile | Rotten Tomatoes{% endblock %} +{% block content %} +
+
+
{{ current_user.name[0]|upper }}
+
+

{{ current_user.name }}

+

{{ current_user.email }}

+

Member since {{ current_user.created_at.strftime('%B %Y') }}

+ Edit Profile +
+
+ + {% set active_tab = 'profile' %} + {% include 'profile_tabs.html' %} + +
+
+
{{ rating_count }}
+
Ratings
+
+
+
{{ review_count }}
+
Reviews
+
+
+
{{ watchlist_count }}
+
Watchlist
+
+
+
+{% endblock %} diff --git a/sites/rotten_tomatoes/templates/account_edit.html b/sites/rotten_tomatoes/templates/account_edit.html new file mode 100644 index 00000000..0e1a2dee --- /dev/null +++ b/sites/rotten_tomatoes/templates/account_edit.html @@ -0,0 +1,29 @@ +{% extends "base.html" %} +{% block title %}Edit Profile | Rotten Tomatoes{% endblock %} +{% block content %} +
+

Edit Profile

+ + {% set active_tab = 'profile' %} + {% include 'profile_tabs.html' %} + +
+
+ +
+ + +
+
+ + + Email cannot be changed. +
+
+ + Cancel +
+
+
+
+{% endblock %} diff --git a/sites/rotten_tomatoes/templates/base.html b/sites/rotten_tomatoes/templates/base.html index 12027315..07cafdc6 100644 --- a/sites/rotten_tomatoes/templates/base.html +++ b/sites/rotten_tomatoes/templates/base.html @@ -17,10 +17,11 @@