From 3bd09e409c8fad5313c6926bc5eb8350e66a2163 Mon Sep 17 00:00:00 2001 From: AlkenD Date: Mon, 22 Jul 2024 15:45:33 +0530 Subject: [PATCH] feat: react-i18n setup for multi language support --- package.json | 2 + pnpm-lock.yaml | 56 + src/App.tsx | 22 +- src/i18n/enTranslations.ts | 37 + src/i18n/i18n.ts | 18 + src/i18n/index.ts | 1 + src/lib/components/Filters/LibraryFilter.tsx | 10 +- src/lib/components/Navigation/NavBar.tsx | 87 +- src/lib/components/Navigation/Navigation.tsx | 9 +- src/lib/pages/LibraryPage.tsx | 12 +- ts/data/bookmarks.json | 112 ++ ts/{ => data}/collections.json | 0 ts/index.js | 20 +- ts/movies.json | 1486 ------------------ ts/tmp/movies.json | 194 +-- ts/tmp/tv.json | 538 +++---- 16 files changed, 693 insertions(+), 1911 deletions(-) create mode 100644 src/i18n/enTranslations.ts create mode 100644 src/i18n/i18n.ts create mode 100644 src/i18n/index.ts create mode 100644 ts/data/bookmarks.json rename ts/{ => data}/collections.json (100%) delete mode 100644 ts/movies.json diff --git a/package.json b/package.json index 97d92a1..415b8ff 100644 --- a/package.json +++ b/package.json @@ -19,8 +19,10 @@ "@tauri-apps/api": "^1.5.6", "class-variance-authority": "^0.7.0", "framer-motion": "^11.2.10", + "i18next": "^23.12.2", "react": "^18.2.0", "react-dom": "^18.2.0", + "react-i18next": "^15.0.0", "react-router-dom": "^6.23.1", "styled-components": "^6.1.11", "swiper": "^11.1.4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 42d740a..91da15c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -26,12 +26,18 @@ importers: framer-motion: specifier: ^11.2.10 version: 11.2.10(@emotion/is-prop-valid@1.2.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + i18next: + specifier: ^23.12.2 + version: 23.12.2 react: specifier: ^18.2.0 version: 18.3.1 react-dom: specifier: ^18.2.0 version: 18.3.1(react@18.3.1) + react-i18next: + specifier: ^15.0.0 + version: 15.0.0(i18next@23.12.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react-router-dom: specifier: ^6.23.1 version: 6.23.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -191,6 +197,10 @@ packages: resolution: {integrity: sha512-UwgBRMjJP+xv857DCngvqXI3Iq6J4v0wXmwc6sapg+zyhbwmQX67LUEFrkK5tbyJ30jGuG3ZvWpBiB9LCy1kWw==} engines: {node: '>=6.9.0'} + '@babel/runtime@7.24.8': + resolution: {integrity: sha512-5F7SDGs1T72ZczbRwbGO9lQi0NLjQxzl6i4lJxLxfW9U5UluCSyEJeniWvnhl3/euNiqQVbo8zruhsDfid0esA==} + engines: {node: '>=6.9.0'} + '@babel/template@7.24.7': resolution: {integrity: sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig==} engines: {node: '>=6.9.0'} @@ -1293,6 +1303,12 @@ packages: resolution: {integrity: sha512-hyf+1c+gTEo0+xjdYT2e8y4M3HcEy0ARuRZHPRgeRhq/mupkI4j9/qEWVKsyj0se4KhfRnYrld4Tk6z/9veq/Q==} engines: {node: '>=16.0.0'} + html-parse-stringify@3.0.1: + resolution: {integrity: sha512-KknJ50kTInJ7qIScF3jeaFRpMpE8/lfiTdzf/twXyPBLAGrLRTmkz3AdTnKeh40X8k9L2fdYwEp/42WGXIRGcg==} + + i18next@23.12.2: + resolution: {integrity: sha512-XIeh5V+bi8SJSWGL3jqbTEBW5oD6rbP5L+E7dVQh1MNTxxYef0x15rhJVcRb7oiuq4jLtgy2SD8eFlf6P2cmqg==} + ignore@5.3.1: resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} engines: {node: '>= 4'} @@ -1638,6 +1654,19 @@ packages: peerDependencies: react: ^18.3.1 + react-i18next@15.0.0: + resolution: {integrity: sha512-2O3IgF4zivg57Q6p6i+ChDgJ371IDcEWbuWC6gvoh5NbkDMs0Q+O7RPr4v61+Se32E0V+LmtwePAeqWZW0bi6g==} + peerDependencies: + i18next: '>= 23.2.3' + react: '>= 16.8.0' + react-dom: '*' + react-native: '*' + peerDependenciesMeta: + react-dom: + optional: true + react-native: + optional: true + react-reconciler@0.29.2: resolution: {integrity: sha512-zZQqIiYgDCTP/f1N/mAR10nJGrPD2ZR+jDSEsKWJHYC7Cm2wodlwbR3upZRdC3cjIjSlTLNVyO7Iu0Yy7t2AYg==} engines: {node: '>=0.10.0'} @@ -1937,6 +1966,10 @@ packages: terser: optional: true + void-elements@3.1.0: + resolution: {integrity: sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==} + engines: {node: '>=0.10.0'} + webidl-conversions@3.0.1: resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} @@ -2157,6 +2190,10 @@ snapshots: dependencies: regenerator-runtime: 0.14.1 + '@babel/runtime@7.24.8': + dependencies: + regenerator-runtime: 0.14.1 + '@babel/template@7.24.7': dependencies: '@babel/code-frame': 7.24.7 @@ -3239,6 +3276,14 @@ snapshots: hono@4.4.5: {} + html-parse-stringify@3.0.1: + dependencies: + void-elements: 3.1.0 + + i18next@23.12.2: + dependencies: + '@babel/runtime': 7.24.7 + ignore@5.3.1: {} import-fresh@3.3.0: @@ -3522,6 +3567,15 @@ snapshots: react: 18.3.1 scheduler: 0.23.2 + react-i18next@15.0.0(i18next@23.12.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + dependencies: + '@babel/runtime': 7.24.8 + html-parse-stringify: 3.0.1 + i18next: 23.12.2 + react: 18.3.1 + optionalDependencies: + react-dom: 18.3.1(react@18.3.1) + react-reconciler@0.29.2(react@18.3.1): dependencies: loose-envify: 1.4.0 @@ -3819,6 +3873,8 @@ snapshots: '@types/node': 20.14.2 fsevents: 2.3.3 + void-elements@3.1.0: {} + webidl-conversions@3.0.1: {} webpack-sources@3.2.3: {} diff --git a/src/App.tsx b/src/App.tsx index 5567709..a9f3ad8 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,14 +1,17 @@ +import { useEffect } from "react"; +import { useTranslation } from "react-i18next"; +import { RouterProvider, createBrowserRouter } from "react-router-dom"; import HomePage from "./lib/pages/HomePage"; import BrowsePage from "./lib/pages/BrowsePage"; import LibraryPage from "./lib/pages/LibraryPage"; -import { RouterProvider, createBrowserRouter } from "react-router-dom"; +import ErrorPage from "./lib/pages/ErrorPage"; import getItemData from "./lib/api/getItemData"; import Navigation from "./lib/components/Navigation/Navigation"; import MovieInfoPage from "./lib/pages/MovieInfoPage"; import TvInfoPage from "./lib/pages/TvInfoPage"; import getSingleItemData from "./lib/api/getSingleItemData"; +import "./i18n"; import "./index.css"; -import ErrorPage from "./lib/pages/ErrorPage"; const App = () => { const router = createBrowserRouter([ @@ -37,8 +40,12 @@ const App = () => { path: "library", element: , loader: async () => { - const res = await getItemData("movies"); - return res; + const resMovies = await getItemData("movies"); + const resTv = await getItemData("tv"); + return { + movies: resMovies, + tv: resTv, + }; }, }, { @@ -60,6 +67,13 @@ const App = () => { ], }, ]); + + const { i18n } = useTranslation(); + + useEffect(() => { + const lng = navigator.language; + i18n.changeLanguage(lng); + }, []); return ; }; diff --git a/src/i18n/enTranslations.ts b/src/i18n/enTranslations.ts new file mode 100644 index 0000000..57d1023 --- /dev/null +++ b/src/i18n/enTranslations.ts @@ -0,0 +1,37 @@ +const enTranslations = { + nav: { + items: { + home: "Home", + browse: "Browse", + library: "Library", + search: "Search", + }, + userMenu: { + users: "Users", + removeUser: "Remove User", + settings: "Settings", + logout: "Logout", + guest: "Guest", + }, + }, + actions: { + playNow: "Play Now", + trailer: "Trailer", + bookmark: "Bookmark", + info: "Info", + search: "Search", + close: "Close", + open: "Open", + }, + sliders: { + weeklyRecommendation: "Weekly Recommendation", + }, + metadata: { + season: "Season", + seasons: "Seasons", + episode: "Episode", + episodes: "Episodes", + }, +}; + +export default enTranslations; diff --git a/src/i18n/i18n.ts b/src/i18n/i18n.ts new file mode 100644 index 0000000..12c2802 --- /dev/null +++ b/src/i18n/i18n.ts @@ -0,0 +1,18 @@ +import i18n from "i18next"; +import { initReactI18next } from "react-i18next"; +import enTranslations from "./enTranslations"; + +i18n.use(initReactI18next).init({ + resources: { + en: { + translation: enTranslations, + }, + }, + lng: "en", + fallbackLng: "en", + interpolation: { + escapeValue: false, + }, +}); + +export default i18n; diff --git a/src/i18n/index.ts b/src/i18n/index.ts new file mode 100644 index 0000000..1d250ec --- /dev/null +++ b/src/i18n/index.ts @@ -0,0 +1 @@ +export { default as i18n } from "./i18n"; diff --git a/src/lib/components/Filters/LibraryFilter.tsx b/src/lib/components/Filters/LibraryFilter.tsx index ad9ea0a..25d2e10 100644 --- a/src/lib/components/Filters/LibraryFilter.tsx +++ b/src/lib/components/Filters/LibraryFilter.tsx @@ -21,7 +21,7 @@ const SelectMenu = ({ title }: any) => { return ( - +
{title} {selectedPeople.length}
@@ -37,7 +37,7 @@ const SelectMenu = ({ title }: any) => {
@@ -65,11 +65,11 @@ const LibraryFilter = () => { - +
- - + +
diff --git a/src/lib/components/Navigation/NavBar.tsx b/src/lib/components/Navigation/NavBar.tsx index 88bfea3..2352497 100644 --- a/src/lib/components/Navigation/NavBar.tsx +++ b/src/lib/components/Navigation/NavBar.tsx @@ -5,6 +5,7 @@ import { RouteConfig } from "../../types"; import HeroIcon from "../HeroIcon"; import Logo from "../Logo"; import NavbarMenu from "../Menus/NavbarMenu"; +import { useTranslation } from "react-i18next"; interface NavbarProps { routes: RouteConfig[]; @@ -15,47 +16,51 @@ interface SearchProps { setIsSearch: (value: boolean) => void; } -const Search = ({ isSearch, setIsSearch }: SearchProps) => ( - - - - -); +const Search = ({ isSearch, setIsSearch }: SearchProps) => { + const { t } = useTranslation(); + + return ( + + + + + ); +}; const NavBar = ({ routes }: NavbarProps) => { const [isOpen, setIsOpen] = useState(false); diff --git a/src/lib/components/Navigation/Navigation.tsx b/src/lib/components/Navigation/Navigation.tsx index a07b097..fe13f71 100644 --- a/src/lib/components/Navigation/Navigation.tsx +++ b/src/lib/components/Navigation/Navigation.tsx @@ -1,21 +1,24 @@ import { Outlet } from "react-router-dom"; import NavBar from "./NavBar"; +import { useTranslation } from "react-i18next"; const Navigation = () => { + const { t } = useTranslation(); + return ( <> { - const movies = useLoaderData(); + const allData: any = useLoaderData(); + const movies = allData.movies; + const tv = allData.tv; return (
@@ -22,16 +24,16 @@ const LibraryPage = () => {
diff --git a/ts/data/bookmarks.json b/ts/data/bookmarks.json new file mode 100644 index 0000000..e3e26c9 --- /dev/null +++ b/ts/data/bookmarks.json @@ -0,0 +1,112 @@ +{ + "languages": ["English", "Spanish", "Chinese", "Japanese", "Hindi"], + "subtitles": ["English", "Spanish", "Chinese", "Japanese", "Hindi"], + "years": [2000, 2001, 2003, 2005, 2009, 2010], + "countries_of_origin": ["EU", "USA", "JAP", "IN"], + "genres": ["Action", "Adventure", "Horror", "Thriller"], + "types": ["movie", "tv", "music", "other"], + "categories": [ + { + "id": 1234, + "title": "Bookmarks", + "items": [ + { + "id": 1022789, + "type:": "movie", + "title": "Inside Out 2", + "genre": ["Animation", "Family", "Adventure", "Comedy"], + "available_language": ["Eng", "Spanish"], + "available_subtitles": ["Eng", "Spanish"], + "year": 2020, + "airing_status": "Released", + "country_of_origin": "" + } + ] + }, + { + "id": 1234, + "title": "Bookmarks", + "items": [ + { + "id": 1234456, + "type:": "movie", + "title": "Title of the Movie", + "genre": "", + "available_language": ["Eng", "Spanish"], + "available_subtitles": ["Eng", "Spanish"], + "year": 2020, + "airing_status": "Ongoing", + "country_of_origin": "" + } + ] + }, + { + "id": 1234, + "title": "Bookmarks", + "items": [ + { + "id": 1234456, + "type:": "movie", + "title": "Title of the Movie", + "genre": "", + "available_language": ["Eng", "Spanish"], + "available_subtitles": ["Eng", "Spanish"], + "year": 2020, + "airing_status": "Ongoing", + "country_of_origin": "" + } + ] + }, + { + "id": 1234, + "title": "Bookmarks", + "items": [ + { + "id": 1234456, + "type:": "movie", + "title": "Title of the Movie", + "genre": "", + "available_language": ["Eng", "Spanish"], + "available_subtitles": ["Eng", "Spanish"], + "year": 2020, + "airing_status": "Ongoing", + "country_of_origin": "" + } + ] + }, + { + "id": 1234, + "title": "Bookmarks", + "items": [ + { + "id": 1234456, + "type:": "movie", + "title": "Title of the Movie", + "genre": "", + "available_language": ["Eng", "Spanish"], + "available_subtitles": ["Eng", "Spanish"], + "year": 2020, + "airing_status": "Ongoing", + "country_of_origin": "" + } + ] + }, + { + "id": 1234, + "title": "Bookmarks", + "items": [ + { + "id": 1234456, + "type:": "movie", + "title": "Title of the Movie", + "genre": "", + "available_language": ["Eng", "Spanish"], + "available_subtitles": ["Eng", "Spanish"], + "year": 2020, + "airing_status": "Ongoing", + "country_of_origin": "" + } + ] + } + ] +} diff --git a/ts/collections.json b/ts/data/collections.json similarity index 100% rename from ts/collections.json rename to ts/data/collections.json diff --git a/ts/index.js b/ts/index.js index 7233710..d0fb998 100644 --- a/ts/index.js +++ b/ts/index.js @@ -23,7 +23,8 @@ if (!fs.existsSync(TMP_DIR)) { const MOVIES_CACHE_FILE = path.resolve(TMP_DIR, "movies.json"); const TV_CACHE_FILE = path.resolve(TMP_DIR, "tv.json"); -const COLLECTIONS_DATA = path.resolve(__dirname, "collections.json"); +const COLLECTIONS_DATA = path.resolve(__dirname, "data", "collections.json"); +const BOOKMARK_DATA = path.resolve(__dirname, "data", "bookmarks.json"); const TMDB_API_KEY = process.env.TMDB_KEY; @@ -302,6 +303,23 @@ app.get("/image/:imageId", async (req, res) => { } }); +app.get("/bookmark/:bookmarkId", (req, res) => { + const { bookmarkId } = req.params; + try { + const data = fs.readFileSync(COLLECTIONS_DATA, "utf8"); + const bookmarks = JSON.parse(data.data); + const bookmark = bookmarks.find((b) => b.id === bookmarkId); + if (bookmark) { + res.json(bookmark); + } else { + res.status(404).json({ error: "Bookmark not found" }); + } + } catch (error) { + console.error("Error reading collections data:", error); + res.status(500).json({ error: error.message }); + } +}); + app.keepAliveTimeout = 120 * 1000; app.headersTimeout = 125 * 1000; diff --git a/ts/movies.json b/ts/movies.json deleted file mode 100644 index 1f81b8e..0000000 --- a/ts/movies.json +++ /dev/null @@ -1,1486 +0,0 @@ -[ - { - "adult": false, - "backdrop_path": "/zfbjgQE1uSd9wiPTX4VzsLi0rGG.jpg", - "belongs_to_collection": null, - "budget": 25000000, - "genres": [ - { - "id": 18, - "name": "Drama" - }, - { - "id": 80, - "name": "Crime" - } - ], - "homepage": "", - "id": 278, - "imdb_id": "tt0111161", - "origin_country": [ - "US" - ], - "original_language": "en", - "original_title": "The Shawshank Redemption", - "overview": "Imprisoned in the 1940s for the double murder of his wife and her lover, upstanding banker Andy Dufresne begins a new life at the Shawshank prison, where he puts his accounting skills to work for an amoral warden. During his long stretch in prison, Dufresne comes to be admired by the other inmates -- including an older prisoner named Red -- for his integrity and unquenchable sense of hope.", - "popularity": 143.265, - "poster_path": "/9cqNxx0GxF0bflZmeSMuL5tnGzr.jpg", - "production_companies": [ - { - "id": 97, - "logo_path": "/7znWcbDd4PcJzJUlJxYqAlPPykp.png", - "name": "Castle Rock Entertainment", - "origin_country": "US" - } - ], - "production_countries": [ - { - "iso_3166_1": "US", - "name": "United States of America" - } - ], - "release_date": "1994-09-23", - "revenue": 28341469, - "runtime": 142, - "spoken_languages": [ - { - "english_name": "English", - "iso_639_1": "en", - "name": "English" - } - ], - "status": "Released", - "tagline": "Fear can hold you prisoner. Hope can set you free.", - "title": "The Shawshank Redemption", - "video": false, - "vote_average": 8.705, - "vote_count": 26262 - }, - { - "adult": false, - "backdrop_path": "/tmU7GeKVybMWFButWEGl2M4GeiP.jpg", - "belongs_to_collection": { - "id": 230, - "name": "The Godfather Collection", - "poster_path": "/zqV8MGXfpLZiFVObLxpAI7wWonJ.jpg", - "backdrop_path": "/mDMCET9Ens5ANvZAWRpluBsMAtS.jpg" - }, - "budget": 6000000, - "genres": [ - { - "id": 18, - "name": "Drama" - }, - { - "id": 80, - "name": "Crime" - } - ], - "homepage": "http://www.thegodfather.com/", - "id": 238, - "imdb_id": "tt0068646", - "origin_country": [ - "US" - ], - "original_language": "en", - "original_title": "The Godfather", - "overview": "Spanning the years 1945 to 1955, a chronicle of the fictional Italian-American Corleone crime family. When organized crime family patriarch, Vito Corleone barely survives an attempt on his life, his youngest son, Michael steps in to take care of the would-be killers, launching a campaign of bloody revenge.", - "popularity": 132.599, - "poster_path": "/3bhkrj58Vtu7enYsRolD1fZdja1.jpg", - "production_companies": [ - { - "id": 4, - "logo_path": "/gz66EfNoYPqHTYI4q9UEN4CbHRc.png", - "name": "Paramount", - "origin_country": "US" - }, - { - "id": 10211, - "logo_path": null, - "name": "Alfran Productions", - "origin_country": "US" - }, - { - "id": 70, - "logo_path": "/ueaENQkPcy8rlr5fGZVBXKOhlBh.png", - "name": "American Zoetrope", - "origin_country": "US" - } - ], - "production_countries": [ - { - "iso_3166_1": "US", - "name": "United States of America" - } - ], - "release_date": "1972-03-14", - "revenue": 245066411, - "runtime": 175, - "spoken_languages": [ - { - "english_name": "English", - "iso_639_1": "en", - "name": "English" - }, - { - "english_name": "Italian", - "iso_639_1": "it", - "name": "Italiano" - }, - { - "english_name": "Latin", - "iso_639_1": "la", - "name": "Latin" - } - ], - "status": "Released", - "tagline": "An offer you can't refuse.", - "title": "The Godfather", - "video": false, - "vote_average": 8.694, - "vote_count": 19913 - }, - { - "adult": false, - "backdrop_path": "/kGzFbGhp99zva6oZODW5atUtnqi.jpg", - "belongs_to_collection": { - "id": 230, - "name": "The Godfather Collection", - "poster_path": "/zqV8MGXfpLZiFVObLxpAI7wWonJ.jpg", - "backdrop_path": "/mDMCET9Ens5ANvZAWRpluBsMAtS.jpg" - }, - "budget": 13000000, - "genres": [ - { - "id": 18, - "name": "Drama" - }, - { - "id": 80, - "name": "Crime" - } - ], - "homepage": "", - "id": 240, - "imdb_id": "tt0071562", - "origin_country": [ - "US" - ], - "original_language": "en", - "original_title": "The Godfather Part II", - "overview": "In the continuing saga of the Corleone crime family, a young Vito Corleone grows up in Sicily and in 1910s New York. In the 1950s, Michael Corleone attempts to expand the family business into Las Vegas, Hollywood and Cuba.", - "popularity": 119.635, - "poster_path": "/hek3koDUyRQk7FIhPXsa6mT2Zc3.jpg", - "production_companies": [ - { - "id": 4, - "logo_path": "/gz66EfNoYPqHTYI4q9UEN4CbHRc.png", - "name": "Paramount", - "origin_country": "US" - }, - { - "id": 536, - "logo_path": null, - "name": "The Coppola Company", - "origin_country": "US" - }, - { - "id": 70, - "logo_path": "/ueaENQkPcy8rlr5fGZVBXKOhlBh.png", - "name": "American Zoetrope", - "origin_country": "US" - } - ], - "production_countries": [ - { - "iso_3166_1": "US", - "name": "United States of America" - } - ], - "release_date": "1974-12-20", - "revenue": 102600000, - "runtime": 202, - "spoken_languages": [ - { - "english_name": "English", - "iso_639_1": "en", - "name": "English" - }, - { - "english_name": "Italian", - "iso_639_1": "it", - "name": "Italiano" - }, - { - "english_name": "Latin", - "iso_639_1": "la", - "name": "Latin" - }, - { - "english_name": "Spanish", - "iso_639_1": "es", - "name": "Español" - } - ], - "status": "Released", - "tagline": "The rise and fall of the Corleone empire.", - "title": "The Godfather Part II", - "video": false, - "vote_average": 8.577, - "vote_count": 12026 - }, - { - "adult": false, - "backdrop_path": "/zb6fM1CX41D9rF9hdgclu0peUmy.jpg", - "belongs_to_collection": null, - "budget": 22000000, - "genres": [ - { - "id": 18, - "name": "Drama" - }, - { - "id": 36, - "name": "History" - }, - { - "id": 10752, - "name": "War" - } - ], - "homepage": "http://www.schindlerslist.com/", - "id": 424, - "imdb_id": "tt0108052", - "origin_country": [ - "US" - ], - "original_language": "en", - "original_title": "Schindler's List", - "overview": "The true story of how businessman Oskar Schindler saved over a thousand Jewish lives from the Nazis while they worked as slaves in his factory during World War II.", - "popularity": 81.856, - "poster_path": "/sF1U4EUQS8YHUYjNl3pMGNIQyr0.jpg", - "production_companies": [ - { - "id": 56, - "logo_path": "/cEaxANEisCqeEoRvODv2dO1I0iI.png", - "name": "Amblin Entertainment", - "origin_country": "US" - } - ], - "production_countries": [ - { - "iso_3166_1": "US", - "name": "United States of America" - } - ], - "release_date": "1993-12-15", - "revenue": 321365567, - "runtime": 195, - "spoken_languages": [ - { - "english_name": "German", - "iso_639_1": "de", - "name": "Deutsch" - }, - { - "english_name": "Polish", - "iso_639_1": "pl", - "name": "Polski" - }, - { - "english_name": "Hebrew", - "iso_639_1": "he", - "name": "עִבְרִית" - }, - { - "english_name": "English", - "iso_639_1": "en", - "name": "English" - } - ], - "status": "Released", - "tagline": "Whoever saves one life, saves the world entire.", - "title": "Schindler's List", - "video": false, - "vote_average": 8.567, - "vote_count": 15434 - }, - { - "adult": false, - "backdrop_path": "/qqHQsStV6exghCM7zbObuYBiYxw.jpg", - "belongs_to_collection": null, - "budget": 397751, - "genres": [ - { - "id": 18, - "name": "Drama" - } - ], - "homepage": "", - "id": 389, - "imdb_id": "tt0050083", - "origin_country": [ - "US" - ], - "original_language": "en", - "original_title": "12 Angry Men", - "overview": "The defense and the prosecution have rested and the jury is filing into the jury room to decide if a young Spanish-American is guilty or innocent of murdering his father. What begins as an open and shut case soon becomes a mini-drama of each of the jurors' prejudices and preconceptions about the trial, the accused, and each other.", - "popularity": 83.144, - "poster_path": "/ow3wq89wM8qd5X7hWKxiRfsFf9C.jpg", - "production_companies": [ - { - "id": 60, - "logo_path": "/1SEj4nyG3JPBSKBbFhtdcHRaIF9.png", - "name": "United Artists", - "origin_country": "US" - }, - { - "id": 10212, - "logo_path": null, - "name": "Orion-Nova Productions", - "origin_country": "" - } - ], - "production_countries": [ - { - "iso_3166_1": "US", - "name": "United States of America" - } - ], - "release_date": "1957-04-10", - "revenue": 4360000, - "runtime": 97, - "spoken_languages": [ - { - "english_name": "English", - "iso_639_1": "en", - "name": "English" - } - ], - "status": "Released", - "tagline": "Life is in their hands — Death is on their minds!", - "title": "12 Angry Men", - "video": false, - "vote_average": 8.5, - "vote_count": 8295 - }, - { - "adult": false, - "backdrop_path": "/90ez6ArvpO8bvpyIngBuwXOqJm5.jpg", - "belongs_to_collection": null, - "budget": 13200000, - "genres": [ - { - "id": 35, - "name": "Comedy" - }, - { - "id": 18, - "name": "Drama" - }, - { - "id": 10749, - "name": "Romance" - } - ], - "homepage": "", - "id": 19404, - "imdb_id": "tt0112870", - "origin_country": [ - "IN" - ], - "original_language": "hi", - "original_title": "दिलवाले दुल्हनिया ले जायेंगे", - "overview": "Raj is a rich, carefree, happy-go-lucky second generation NRI. Simran is the daughter of Chaudhary Baldev Singh, who in spite of being an NRI is very strict about adherence to Indian values. Simran has left for India to be married to her childhood fiancé. Raj leaves for India with a mission at his hands, to claim his lady love under the noses of her whole family. Thus begins a saga.", - "popularity": 42.957, - "poster_path": "/lfRkUr7DYdHldAqi3PwdQGBRBPM.jpg", - "production_companies": [ - { - "id": 1569, - "logo_path": "/lvzN86o3jrP44DIvn4SMBLOl9PF.png", - "name": "Yash Raj Films", - "origin_country": "IN" - } - ], - "production_countries": [ - { - "iso_3166_1": "IN", - "name": "India" - } - ], - "release_date": "1995-10-20", - "revenue": 100000000, - "runtime": 190, - "spoken_languages": [ - { - "english_name": "Hindi", - "iso_639_1": "hi", - "name": "हिन्दी" - } - ], - "status": "Released", - "tagline": "Come… Fall In love, All Over Again…", - "title": "Dilwale Dulhania Le Jayenge", - "video": false, - "vote_average": 8.537, - "vote_count": 4392 - }, - { - "adult": false, - "backdrop_path": "/mSDsSDwaP3E7dEfUPWy4J0djt4O.jpg", - "belongs_to_collection": null, - "budget": 19000000, - "genres": [ - { - "id": 16, - "name": "Animation" - }, - { - "id": 10751, - "name": "Family" - }, - { - "id": 14, - "name": "Fantasy" - } - ], - "homepage": "http://movies.disney.com/spirited-away", - "id": 129, - "imdb_id": "tt0245429", - "origin_country": [ - "JP" - ], - "original_language": "ja", - "original_title": "千と千尋の神隠し", - "overview": "A young girl, Chihiro, becomes trapped in a strange new world of spirits. When her parents undergo a mysterious transformation, she must call upon the courage she never knew she had to free her family.", - "popularity": 109.644, - "poster_path": "/39wmItIWsg5sZMyRUHLkWBcuVCM.jpg", - "production_companies": [ - { - "id": 10342, - "logo_path": "/eS79pslnoKbWg7t3PMA9ayl0bGs.png", - "name": "Studio Ghibli", - "origin_country": "JP" - } - ], - "production_countries": [ - { - "iso_3166_1": "JP", - "name": "Japan" - } - ], - "release_date": "2001-07-20", - "revenue": 274925095, - "runtime": 125, - "spoken_languages": [ - { - "english_name": "Japanese", - "iso_639_1": "ja", - "name": "日本語" - } - ], - "status": "Released", - "tagline": "", - "title": "Spirited Away", - "video": false, - "vote_average": 8.537, - "vote_count": 15985 - }, - { - "adult": false, - "backdrop_path": "/dqK9Hag1054tghRQSqLSfrkvQnA.jpg", - "belongs_to_collection": { - "id": 263, - "name": "The Dark Knight Collection", - "poster_path": "/ogyw5LTmL53dVxsppcy8Dlm30Fu.jpg", - "backdrop_path": "/xfKot7lqaiW4XpL5TtDlVBA9ei9.jpg" - }, - "budget": 185000000, - "genres": [ - { - "id": 18, - "name": "Drama" - }, - { - "id": 28, - "name": "Action" - }, - { - "id": 80, - "name": "Crime" - }, - { - "id": 53, - "name": "Thriller" - } - ], - "homepage": "https://www.warnerbros.com/movies/dark-knight/", - "id": 155, - "imdb_id": "tt0468569", - "origin_country": [ - "US" - ], - "original_language": "en", - "original_title": "The Dark Knight", - "overview": "Batman raises the stakes in his war on crime. With the help of Lt. Jim Gordon and District Attorney Harvey Dent, Batman sets out to dismantle the remaining criminal organizations that plague the streets. The partnership proves to be effective, but they soon find themselves prey to a reign of chaos unleashed by a rising criminal mastermind known to the terrified citizens of Gotham as the Joker.", - "popularity": 97.883, - "poster_path": "/qJ2tW6WMUDux911r6m7haRef0WH.jpg", - "production_companies": [ - { - "id": 429, - "logo_path": "/2Tc1P3Ac8M479naPp1kYT3izLS5.png", - "name": "DC Comics", - "origin_country": "US" - }, - { - "id": 923, - "logo_path": "/8M99Dkt23MjQMTTWukq4m5XsEuo.png", - "name": "Legendary Pictures", - "origin_country": "US" - }, - { - "id": 9996, - "logo_path": "/3tvBqYsBhxWeHlu62SIJ1el93O7.png", - "name": "Syncopy", - "origin_country": "GB" - }, - { - "id": 118865, - "logo_path": null, - "name": "Isobel Griffiths", - "origin_country": "GB" - }, - { - "id": 174, - "logo_path": "/zhD3hhtKB5qyv7ZeL4uLpNxgMVU.png", - "name": "Warner Bros. Pictures", - "origin_country": "US" - } - ], - "production_countries": [ - { - "iso_3166_1": "GB", - "name": "United Kingdom" - }, - { - "iso_3166_1": "US", - "name": "United States of America" - } - ], - "release_date": "2008-07-16", - "revenue": 1004558444, - "runtime": 152, - "spoken_languages": [ - { - "english_name": "English", - "iso_639_1": "en", - "name": "English" - }, - { - "english_name": "Mandarin", - "iso_639_1": "zh", - "name": "普通话" - } - ], - "status": "Released", - "tagline": "Welcome to a world without rules.", - "title": "The Dark Knight", - "video": false, - "vote_average": 8.516, - "vote_count": 32031 - }, - { - "adult": false, - "backdrop_path": "/TU9NIjwzjoKPwQHoHshkFcQUCG.jpg", - "belongs_to_collection": null, - "budget": 11363000, - "genres": [ - { - "id": 35, - "name": "Comedy" - }, - { - "id": 53, - "name": "Thriller" - }, - { - "id": 18, - "name": "Drama" - } - ], - "homepage": "https://www.parasite-movie.com/", - "id": 496243, - "imdb_id": "tt6751668", - "origin_country": [ - "KR" - ], - "original_language": "ko", - "original_title": "기생충", - "overview": "All unemployed, Ki-taek's family takes peculiar interest in the wealthy and glamorous Parks for their livelihood until they get entangled in an unexpected incident.", - "popularity": 88.51, - "poster_path": "/7IiTTgloJzvGI1TAYymCfbfl3vT.jpg", - "production_companies": [ - { - "id": 4399, - "logo_path": "/rk3kE5QX2dQtH0pPwCHV12qfebg.png", - "name": "Barunson E&A", - "origin_country": "KR" - } - ], - "production_countries": [ - { - "iso_3166_1": "KR", - "name": "South Korea" - } - ], - "release_date": "2019-05-30", - "revenue": 257591776, - "runtime": 133, - "spoken_languages": [ - { - "english_name": "English", - "iso_639_1": "en", - "name": "English" - }, - { - "english_name": "German", - "iso_639_1": "de", - "name": "Deutsch" - }, - { - "english_name": "Korean", - "iso_639_1": "ko", - "name": "한국어/조선말" - } - ], - "status": "Released", - "tagline": "Act like you own the place.", - "title": "Parasite", - "video": false, - "vote_average": 8.51, - "vote_count": 17609 - }, - { - "adult": false, - "backdrop_path": "/vxJ08SvwomfKbpboCWynC3uqUg4.jpg", - "belongs_to_collection": null, - "budget": 60000000, - "genres": [ - { - "id": 14, - "name": "Fantasy" - }, - { - "id": 18, - "name": "Drama" - }, - { - "id": 80, - "name": "Crime" - } - ], - "homepage": "http://thegreenmile.warnerbros.com/", - "id": 497, - "imdb_id": "tt0120689", - "origin_country": [ - "US" - ], - "original_language": "en", - "original_title": "The Green Mile", - "overview": "A supernatural tale set on death row in a Southern prison, where gentle giant John Coffey possesses the mysterious power to heal people's ailments. When the cell block's head guard, Paul Edgecomb, recognizes Coffey's miraculous gift, he tries desperately to help stave off the condemned man's execution.", - "popularity": 92.604, - "poster_path": "/8VG8fDNiy50H4FedGwdSVUPoaJe.jpg", - "production_companies": [ - { - "id": 97, - "logo_path": "/7znWcbDd4PcJzJUlJxYqAlPPykp.png", - "name": "Castle Rock Entertainment", - "origin_country": "US" - }, - { - "id": 3982, - "logo_path": "/bli7HkPOXOEWsDwDK0W7XXfeUU2.png", - "name": "Darkwoods Productions", - "origin_country": "US" - } - ], - "production_countries": [ - { - "iso_3166_1": "US", - "name": "United States of America" - } - ], - "release_date": "1999-12-10", - "revenue": 286801374, - "runtime": 189, - "spoken_languages": [ - { - "english_name": "French", - "iso_639_1": "fr", - "name": "Français" - }, - { - "english_name": "English", - "iso_639_1": "en", - "name": "English" - } - ], - "status": "Released", - "tagline": "Paul Edgecomb didn't believe in miracles. Until the day he met one.", - "title": "The Green Mile", - "video": false, - "vote_average": 8.506, - "vote_count": 16876 - }, - { - "adult": false, - "backdrop_path": "/dIWwZW7dJJtqC6CgWzYkNVKIUm8.jpg", - "belongs_to_collection": null, - "budget": 0, - "genres": [ - { - "id": 16, - "name": "Animation" - }, - { - "id": 10749, - "name": "Romance" - }, - { - "id": 18, - "name": "Drama" - } - ], - "homepage": "https://www.funimationfilms.com/movie/yourname/", - "id": 372058, - "imdb_id": "tt5311514", - "origin_country": [ - "JP" - ], - "original_language": "ja", - "original_title": "君の名は。", - "overview": "High schoolers Mitsuha and Taki are complete strangers living separate lives. But one night, they suddenly switch places. Mitsuha wakes up in Taki’s body, and he in hers. This bizarre occurrence continues to happen randomly, and the two must adjust their lives around each other.", - "popularity": 80.562, - "poster_path": "/q719jXXEzOoYaps6babgKnONONX.jpg", - "production_companies": [ - { - "id": 3756, - "logo_path": "/t38uPdbKmyBB8brKKeTFWIwojRz.png", - "name": "CoMix Wave Films", - "origin_country": "JP" - }, - { - "id": 882, - "logo_path": "/iDw9Xxok1d9WAM2zFicI8p3khTH.png", - "name": "TOHO", - "origin_country": "JP" - }, - { - "id": 2073, - "logo_path": "/tWxRSaKmRJNTcmtlXsmn5R4KOSU.png", - "name": "KADOKAWA", - "origin_country": "JP" - }, - { - "id": 8157, - "logo_path": "/yHOC2PPmj6j2zzRqwdufCZauFxI.png", - "name": "East Japan Marketing & Communications", - "origin_country": "JP" - }, - { - "id": 14602, - "logo_path": "/t9eqx5QCHtu8LxxgYzivqrJAosp.png", - "name": "AMUSE", - "origin_country": "JP" - }, - { - "id": 128617, - "logo_path": null, - "name": "voque ting", - "origin_country": "JP" - }, - { - "id": 104184, - "logo_path": null, - "name": "Lawson Entertainment", - "origin_country": "JP" - } - ], - "production_countries": [ - { - "iso_3166_1": "JP", - "name": "Japan" - } - ], - "release_date": "2016-08-26", - "revenue": 358000000, - "runtime": 106, - "spoken_languages": [ - { - "english_name": "Japanese", - "iso_639_1": "ja", - "name": "日本語" - } - ], - "status": "Released", - "tagline": "Separated by distance, connected by fate.", - "title": "Your Name.", - "video": false, - "vote_average": 8.494, - "vote_count": 11017 - }, - { - "adult": false, - "backdrop_path": "/suaEOtk1N1sgg2MTM7oZd2cfVp3.jpg", - "belongs_to_collection": null, - "budget": 8500000, - "genres": [ - { - "id": 53, - "name": "Thriller" - }, - { - "id": 80, - "name": "Crime" - } - ], - "homepage": "https://www.miramax.com/movie/pulp-fiction/", - "id": 680, - "imdb_id": "tt0110912", - "origin_country": [ - "US" - ], - "original_language": "en", - "original_title": "Pulp Fiction", - "overview": "A burger-loving hit man, his philosophical partner, a drug-addled gangster's moll and a washed-up boxer converge in this sprawling, comedic crime caper. Their adventures unfurl in three stories that ingeniously trip back and forth in time.", - "popularity": 318.958, - "poster_path": "/d5iIlFn5s0ImszYzBPb8JPIfbXD.jpg", - "production_companies": [ - { - "id": 14, - "logo_path": "/m6AHu84oZQxvq7n1rsvMNJIAsMu.png", - "name": "Miramax", - "origin_country": "US" - }, - { - "id": 59, - "logo_path": "/yH7OMeSxhfP0AVM6iT0rsF3F4ZC.png", - "name": "A Band Apart", - "origin_country": "US" - }, - { - "id": 216, - "logo_path": "/iKPzC6YxqNAk6fMoTtFhIF5p6yw.png", - "name": "Jersey Films", - "origin_country": "US" - } - ], - "production_countries": [ - { - "iso_3166_1": "US", - "name": "United States of America" - } - ], - "release_date": "1994-09-10", - "revenue": 213928762, - "runtime": 154, - "spoken_languages": [ - { - "english_name": "English", - "iso_639_1": "en", - "name": "English" - }, - { - "english_name": "Spanish", - "iso_639_1": "es", - "name": "Español" - }, - { - "english_name": "French", - "iso_639_1": "fr", - "name": "Français" - } - ], - "status": "Released", - "tagline": "You won't know the facts until you've seen the fiction.", - "title": "Pulp Fiction", - "video": false, - "vote_average": 8.489, - "vote_count": 27189 - }, - { - "adult": false, - "backdrop_path": "/2u7zbn8EudG6kLlBzUYqP8RyFU4.jpg", - "belongs_to_collection": { - "id": 119, - "name": "The Lord of the Rings Collection", - "poster_path": "/oENY593nKRVL2PnxXsMtlh8izb4.jpg", - "backdrop_path": "/bccR2CGTWVVSZAG0yqmy3DIvhTX.jpg" - }, - "budget": 94000000, - "genres": [ - { - "id": 12, - "name": "Adventure" - }, - { - "id": 14, - "name": "Fantasy" - }, - { - "id": 28, - "name": "Action" - } - ], - "homepage": "http://www.lordoftherings.net", - "id": 122, - "imdb_id": "tt0167260", - "origin_country": [ - "US" - ], - "original_language": "en", - "original_title": "The Lord of the Rings: The Return of the King", - "overview": "As armies mass for a final battle that will decide the fate of the world--and powerful, ancient forces of Light and Dark compete to determine the outcome--one member of the Fellowship of the Ring is revealed as the noble heir to the throne of the Kings of Men. Yet, the sole hope for triumph over evil lies with a brave hobbit, Frodo, who, accompanied by his loyal friend Sam and the hideous, wretched Gollum, ventures deep into the very dark heart of Mordor on his seemingly impossible quest to destroy the Ring of Power.​", - "popularity": 120.107, - "poster_path": "/rCzpDGLbOoPwLjy3OAm5NUPOTrC.jpg", - "production_companies": [ - { - "id": 12, - "logo_path": "/iaYpEp3LQmb8AfAtmTvpqd4149c.png", - "name": "New Line Cinema", - "origin_country": "US" - }, - { - "id": 11, - "logo_path": "/6FAuASQHybRkZUk08p9PzSs9ezM.png", - "name": "WingNut Films", - "origin_country": "NZ" - }, - { - "id": 5237, - "logo_path": "/mlnr7vsBHvLye8oEb5A76C0t8x9.png", - "name": "The Saul Zaentz Company", - "origin_country": "US" - } - ], - "production_countries": [ - { - "iso_3166_1": "NZ", - "name": "New Zealand" - }, - { - "iso_3166_1": "US", - "name": "United States of America" - } - ], - "release_date": "2003-12-01", - "revenue": 1118888979, - "runtime": 201, - "spoken_languages": [ - { - "english_name": "English", - "iso_639_1": "en", - "name": "English" - } - ], - "status": "Released", - "tagline": "There can be no triumph without loss. No victory without suffering. No freedom without sacrifice.", - "title": "The Lord of the Rings: The Return of the King", - "video": false, - "vote_average": 8.481, - "vote_count": 23475 - }, - { - "adult": false, - "backdrop_path": "/qdIMHd4sEfJSckfVJfKQvisL02a.jpg", - "belongs_to_collection": null, - "budget": 55000000, - "genres": [ - { - "id": 35, - "name": "Comedy" - }, - { - "id": 18, - "name": "Drama" - }, - { - "id": 10749, - "name": "Romance" - } - ], - "homepage": "https://www.paramountmovies.com/movies/forrest-gump", - "id": 13, - "imdb_id": "tt0109830", - "origin_country": [ - "US" - ], - "original_language": "en", - "original_title": "Forrest Gump", - "overview": "A man with a low IQ has accomplished great things in his life and been present during significant historic events—in each case, far exceeding what anyone imagined he could do. But despite all he has achieved, his one true love eludes him.", - "popularity": 133.526, - "poster_path": "/arw2vcBveWOVZr6pxd9XTd1TdQa.jpg", - "production_companies": [ - { - "id": 4, - "logo_path": "/gz66EfNoYPqHTYI4q9UEN4CbHRc.png", - "name": "Paramount", - "origin_country": "US" - }, - { - "id": 21920, - "logo_path": null, - "name": "The Steve Tisch Company", - "origin_country": "" - }, - { - "id": 412, - "logo_path": null, - "name": "Wendy Finerman Productions", - "origin_country": "" - } - ], - "production_countries": [ - { - "iso_3166_1": "US", - "name": "United States of America" - } - ], - "release_date": "1994-06-23", - "revenue": 677387716, - "runtime": 142, - "spoken_languages": [ - { - "english_name": "English", - "iso_639_1": "en", - "name": "English" - } - ], - "status": "Released", - "tagline": "The world will never be the same once you've seen it through the eyes of Forrest Gump.", - "title": "Forrest Gump", - "video": false, - "vote_average": 8.476, - "vote_count": 26708 - }, - { - "adult": false, - "backdrop_path": "/Adrip2Jqzw56KeuV2nAxucKMNXA.jpg", - "belongs_to_collection": null, - "budget": 1200000, - "genres": [ - { - "id": 37, - "name": "Western" - } - ], - "homepage": "http://www.mgm.com/#/our-titles/766/The-Good,-the-Bad-and-the-Ugly", - "id": 429, - "imdb_id": "tt0060196", - "origin_country": [ - "IT" - ], - "original_language": "it", - "original_title": "Il buono, il brutto, il cattivo", - "overview": "While the Civil War rages on between the Union and the Confederacy, three men – a quiet loner, a ruthless hitman, and a Mexican bandit – comb the American Southwest in search of a strongbox containing $200,000 in stolen gold.", - "popularity": 90.96, - "poster_path": "/bX2xnavhMYjWDoZp1VM6VnU1xwe.jpg", - "production_companies": [ - { - "id": 60, - "logo_path": "/1SEj4nyG3JPBSKBbFhtdcHRaIF9.png", - "name": "United Artists", - "origin_country": "US" - }, - { - "id": 7508, - "logo_path": null, - "name": "PEA", - "origin_country": "IT" - }, - { - "id": 42498, - "logo_path": null, - "name": "Arturo González Producciones Cinematográficas", - "origin_country": "ES" - }, - { - "id": 47, - "logo_path": "/i7Z9ot2o3N5Sa3HrF09kniFs2y8.png", - "name": "Constantin Film", - "origin_country": "DE" - } - ], - "production_countries": [ - { - "iso_3166_1": "US", - "name": "United States of America" - }, - { - "iso_3166_1": "IT", - "name": "Italy" - }, - { - "iso_3166_1": "ES", - "name": "Spain" - }, - { - "iso_3166_1": "DE", - "name": "Germany" - } - ], - "release_date": "1966-12-22", - "revenue": 38900000, - "runtime": 161, - "spoken_languages": [ - { - "english_name": "Italian", - "iso_639_1": "it", - "name": "Italiano" - } - ], - "status": "Released", - "tagline": "For three men the Civil War wasn't hell. It was practice.", - "title": "The Good, the Bad and the Ugly", - "video": false, - "vote_average": 8.5, - "vote_count": 8309 - }, - { - "adult": false, - "backdrop_path": "/sw7mordbZxgITU877yTpZCud90M.jpg", - "belongs_to_collection": null, - "budget": 25000000, - "genres": [ - { - "id": 18, - "name": "Drama" - }, - { - "id": 80, - "name": "Crime" - } - ], - "homepage": "http://www.warnerbros.com/goodfellas", - "id": 769, - "imdb_id": "tt0099685", - "origin_country": [ - "US" - ], - "original_language": "en", - "original_title": "GoodFellas", - "overview": "The true story of Henry Hill, a half-Irish, half-Sicilian Brooklyn kid who is adopted by neighbourhood gangsters at an early age and climbs the ranks of a Mafia family under the guidance of Jimmy Conway.", - "popularity": 189.33, - "poster_path": "/aKuFiU82s5ISJpGZp7YkIr3kCUd.jpg", - "production_companies": [ - { - "id": 8880, - "logo_path": "/fE7LBw7Jz8R29EABFGCvWNriZxN.png", - "name": "Winkler Films", - "origin_country": "US" - } - ], - "production_countries": [ - { - "iso_3166_1": "US", - "name": "United States of America" - } - ], - "release_date": "1990-09-12", - "revenue": 46800000, - "runtime": 145, - "spoken_languages": [ - { - "english_name": "Italian", - "iso_639_1": "it", - "name": "Italiano" - }, - { - "english_name": "English", - "iso_639_1": "en", - "name": "English" - } - ], - "status": "Released", - "tagline": "Three decades of life in the mafia.", - "title": "GoodFellas", - "video": false, - "vote_average": 8.463, - "vote_count": 12454 - }, - { - "adult": false, - "backdrop_path": "/dlC0ed9Ugh3FzydnkBtV5lRXUu4.jpg", - "belongs_to_collection": null, - "budget": 3700000, - "genres": [ - { - "id": 16, - "name": "Animation" - }, - { - "id": 18, - "name": "Drama" - }, - { - "id": 10752, - "name": "War" - } - ], - "homepage": "https://gkids.com/films/grave-of-the-fireflies", - "id": 12477, - "imdb_id": "tt0095327", - "origin_country": [ - "JP" - ], - "original_language": "ja", - "original_title": "火垂るの墓", - "overview": "In the final months of World War II, 14-year-old Seita and his sister Setsuko are orphaned when their mother is killed during an air raid in Kobe, Japan. After a falling out with their aunt, they move into an abandoned bomb shelter. With no surviving relatives and their emergency rations depleted, Seita and Setsuko struggle to survive.", - "popularity": 0.056, - "poster_path": "/k9tv1rXZbOhH7eiCk378x61kNQ1.jpg", - "production_companies": [ - { - "id": 10342, - "logo_path": "/eS79pslnoKbWg7t3PMA9ayl0bGs.png", - "name": "Studio Ghibli", - "origin_country": "JP" - } - ], - "production_countries": [ - { - "iso_3166_1": "JP", - "name": "Japan" - } - ], - "release_date": "1988-04-16", - "revenue": 516962, - "runtime": 89, - "spoken_languages": [ - { - "english_name": "Japanese", - "iso_639_1": "ja", - "name": "日本語" - } - ], - "status": "Released", - "tagline": "", - "title": "Grave of the Fireflies", - "video": false, - "vote_average": 8.461, - "vote_count": 5270 - }, - { - "adult": false, - "backdrop_path": "/qvZ91FwMq6O47VViAr8vZNQz3WI.jpg", - "belongs_to_collection": null, - "budget": 2000000, - "genres": [ - { - "id": 28, - "name": "Action" - }, - { - "id": 18, - "name": "Drama" - } - ], - "homepage": "", - "id": 346, - "imdb_id": "tt0047478", - "origin_country": [ - "JP" - ], - "original_language": "ja", - "original_title": "七人の侍", - "overview": "A samurai answers a village's request for protection after he falls on hard times. The town needs protection from bandits, so the samurai gathers six others to help him teach the people how to defend themselves, and the villagers provide the soldiers with food.", - "popularity": 57.834, - "poster_path": "/8OKmBV5BUFzmozIC3pPWKHy17kx.jpg", - "production_companies": [ - { - "id": 882, - "logo_path": "/iDw9Xxok1d9WAM2zFicI8p3khTH.png", - "name": "TOHO", - "origin_country": "JP" - } - ], - "production_countries": [ - { - "iso_3166_1": "JP", - "name": "Japan" - } - ], - "release_date": "1954-04-26", - "revenue": 346300, - "runtime": 207, - "spoken_languages": [ - { - "english_name": "Japanese", - "iso_639_1": "ja", - "name": "日本語" - } - ], - "status": "Released", - "tagline": "The Mighty Warriors Who Became the Seven National Heroes of a Small Town", - "title": "Seven Samurai", - "video": false, - "vote_average": 8.456, - "vote_count": 3513 - }, - { - "adult": false, - "backdrop_path": "/k3SBILYxHRgjORb5tbvA5dm2N4h.jpg", - "belongs_to_collection": null, - "budget": 5000000, - "genres": [ - { - "id": 18, - "name": "Drama" - }, - { - "id": 10749, - "name": "Romance" - } - ], - "homepage": "", - "id": 11216, - "imdb_id": "tt0095765", - "origin_country": [ - "IT" - ], - "original_language": "it", - "original_title": "Nuovo Cinema Paradiso", - "overview": "A filmmaker recalls his childhood, when he fell in love with the movies at his village's theater and formed a deep friendship with the theater's projectionist.", - "popularity": 49.853, - "poster_path": "/9JhfVOveaY00o8njQu2Xrp4YWud.jpg", - "production_companies": [ - { - "id": 1583, - "logo_path": "/6EFUenZrAK7IBbirooJ4ZLzJpJ5.png", - "name": "RAI", - "origin_country": "IT" - }, - { - "id": 185850, - "logo_path": null, - "name": "Tre Forum", - "origin_country": "" - }, - { - "id": 7110, - "logo_path": null, - "name": "Les Films Ariane", - "origin_country": "FR" - }, - { - "id": 356, - "logo_path": "/tSJvuFaLIp7l0ONLUiAHA61GbXu.png", - "name": "TF1 Films Production", - "origin_country": "FR" - } - ], - "production_countries": [ - { - "iso_3166_1": "FR", - "name": "France" - }, - { - "iso_3166_1": "IT", - "name": "Italy" - } - ], - "release_date": "1988-11-17", - "revenue": 11990401, - "runtime": 124, - "spoken_languages": [ - { - "english_name": "Italian", - "iso_639_1": "it", - "name": "Italiano" - } - ], - "status": "Released", - "tagline": "An enchanted village. A wonderful friendship. Star-crossed lovers. And the magic of the movies.", - "title": "Cinema Paradiso", - "video": false, - "vote_average": 8.453, - "vote_count": 4208 - }, - { - "adult": false, - "backdrop_path": "/gavyCu1UaTaTNPsVaGXT6pe5u24.jpg", - "belongs_to_collection": null, - "budget": 20000000, - "genres": [ - { - "id": 35, - "name": "Comedy" - }, - { - "id": 18, - "name": "Drama" - } - ], - "homepage": "", - "id": 637, - "imdb_id": "tt0118799", - "origin_country": [ - "IT" - ], - "original_language": "it", - "original_title": "La vita è bella", - "overview": "A touching story of an Italian book seller of Jewish ancestry who lives in his own little fairy tale. His creative and happy life would come to an abrupt halt when his entire family is deported to a concentration camp during World War II. While locked up he tries to convince his son that the whole thing is just a game.", - "popularity": 58.722, - "poster_path": "/74hLDKjD5aGYOotO6esUVaeISa2.jpg", - "production_companies": [ - { - "id": 22117, - "logo_path": null, - "name": "Mario e Vittorio Cecchi Gori - C.E.I.A.D.", - "origin_country": "" - }, - { - "id": 370, - "logo_path": null, - "name": "Melampo Cinematografica", - "origin_country": "IT" - } - ], - "production_countries": [ - { - "iso_3166_1": "IT", - "name": "Italy" - } - ], - "release_date": "1997-12-20", - "revenue": 230098753, - "runtime": 116, - "spoken_languages": [ - { - "english_name": "German", - "iso_639_1": "de", - "name": "Deutsch" - }, - { - "english_name": "Czech", - "iso_639_1": "cs", - "name": "Český" - }, - { - "english_name": "English", - "iso_639_1": "en", - "name": "English" - }, - { - "english_name": "Italian", - "iso_639_1": "it", - "name": "Italiano" - } - ], - "status": "Released", - "tagline": "An unforgettable fable that proves love, family and imagination conquer all.", - "title": "Life Is Beautiful", - "video": false, - "vote_average": 8.452, - "vote_count": 12743 - } -] \ No newline at end of file diff --git a/ts/tmp/movies.json b/ts/tmp/movies.json index 7c6b37f..e956e53 100644 --- a/ts/tmp/movies.json +++ b/ts/tmp/movies.json @@ -23,7 +23,7 @@ "original_language": "en", "original_title": "The Shawshank Redemption", "overview": "Imprisoned in the 1940s for the double murder of his wife and her lover, upstanding banker Andy Dufresne begins a new life at the Shawshank prison, where he puts his accounting skills to work for an amoral warden. During his long stretch in prison, Dufresne comes to be admired by the other inmates -- including an older prisoner named Red -- for his integrity and unquenchable sense of hope.", - "popularity": 129.706, + "popularity": 157.956, "poster_path": "/9cqNxx0GxF0bflZmeSMuL5tnGzr.jpg", "production_companies": [ { @@ -54,7 +54,7 @@ "title": "The Shawshank Redemption", "video": false, "vote_average": 8.706, - "vote_count": 26472 + "vote_count": 26477 }, { "adult": false, @@ -85,7 +85,7 @@ "original_language": "en", "original_title": "The Godfather", "overview": "Spanning the years 1945 to 1955, a chronicle of the fictional Italian-American Corleone crime family. When organized crime family patriarch, Vito Corleone barely survives an attempt on his life, his youngest son, Michael steps in to take care of the would-be killers, launching a campaign of bloody revenge.", - "popularity": 136.041, + "popularity": 136.656, "poster_path": "/3bhkrj58Vtu7enYsRolD1fZdja1.jpg", "production_companies": [ { @@ -137,8 +137,8 @@ "tagline": "An offer you can't refuse.", "title": "The Godfather", "video": false, - "vote_average": 8.693, - "vote_count": 20099 + "vote_average": 8.7, + "vote_count": 20101 }, { "adult": false, @@ -169,7 +169,7 @@ "original_language": "en", "original_title": "The Godfather Part II", "overview": "In the continuing saga of the Corleone crime family, a young Vito Corleone grows up in Sicily and in 1910s New York. In the 1950s, Michael Corleone attempts to expand the family business into Las Vegas, Hollywood and Cuba.", - "popularity": 83.263, + "popularity": 103.989, "poster_path": "/hek3koDUyRQk7FIhPXsa6mT2Zc3.jpg", "production_companies": [ { @@ -227,7 +227,7 @@ "title": "The Godfather Part II", "video": false, "vote_average": 8.577, - "vote_count": 12127 + "vote_count": 12129 }, { "adult": false, @@ -257,7 +257,7 @@ "original_language": "en", "original_title": "Schindler's List", "overview": "The true story of how businessman Oskar Schindler saved over a thousand Jewish lives from the Nazis while they worked as slaves in his factory during World War II.", - "popularity": 129.952, + "popularity": 101.993, "poster_path": "/sF1U4EUQS8YHUYjNl3pMGNIQyr0.jpg", "production_companies": [ { @@ -303,7 +303,7 @@ "title": "Schindler's List", "video": false, "vote_average": 8.567, - "vote_count": 15529 + "vote_count": 15530 }, { "adult": false, @@ -362,7 +362,7 @@ "title": "12 Angry Men", "video": false, "vote_average": 8.545, - "vote_count": 8376 + "vote_count": 8381 }, { "adult": false, @@ -392,7 +392,7 @@ "original_language": "ja", "original_title": "千と千尋の神隠し", "overview": "A young girl, Chihiro, becomes trapped in a strange new world of spirits. When her parents undergo a mysterious transformation, she must call upon the courage she never knew she had to free her family.", - "popularity": 108.507, + "popularity": 135.777, "poster_path": "/39wmItIWsg5sZMyRUHLkWBcuVCM.jpg", "production_companies": [ { @@ -422,8 +422,8 @@ "tagline": "", "title": "Spirited Away", "video": false, - "vote_average": 8.5, - "vote_count": 16130 + "vote_average": 8.537, + "vote_count": 16133 }, { "adult": false, @@ -587,7 +587,7 @@ "title": "The Dark Knight", "video": false, "vote_average": 8.516, - "vote_count": 32223 + "vote_count": 32232 }, { "adult": false, @@ -617,7 +617,7 @@ "original_language": "ko", "original_title": "기생충", "overview": "All unemployed, Ki-taek's family takes peculiar interest in the wealthy and glamorous Parks for their livelihood until they get entangled in an unexpected incident.", - "popularity": 128.599, + "popularity": 97.799, "poster_path": "/7IiTTgloJzvGI1TAYymCfbfl3vT.jpg", "production_companies": [ { @@ -658,7 +658,7 @@ "title": "Parasite", "video": false, "vote_average": 8.509, - "vote_count": 17777 + "vote_count": 17781 }, { "adult": false, @@ -688,7 +688,7 @@ "original_language": "en", "original_title": "The Green Mile", "overview": "A supernatural tale set on death row in a Southern prison, where gentle giant John Coffey possesses the mysterious power to heal people's ailments. When the cell block's head guard, Paul Edgecomb, recognizes Coffey's miraculous gift, he tries desperately to help stave off the condemned man's execution.", - "popularity": 81.704, + "popularity": 83.257, "poster_path": "/8VG8fDNiy50H4FedGwdSVUPoaJe.jpg", "production_companies": [ { @@ -730,7 +730,7 @@ "title": "The Green Mile", "video": false, "vote_average": 8.506, - "vote_count": 16999 + "vote_count": 17003 }, { "adult": false, @@ -760,7 +760,7 @@ "original_language": "ja", "original_title": "君の名は。", "overview": "High schoolers Mitsuha and Taki are complete strangers living separate lives. But one night, they suddenly switch places. Mitsuha wakes up in Taki’s body, and he in hers. This bizarre occurrence continues to happen randomly, and the two must adjust their lives around each other.", - "popularity": 158.492, + "popularity": 127.529, "poster_path": "/q719jXXEzOoYaps6babgKnONONX.jpg", "production_companies": [ { @@ -826,8 +826,8 @@ "tagline": "Separated by distance, connected by fate.", "title": "Your Name.", "video": false, - "vote_average": 8.491, - "vote_count": 11114 + "vote_average": 8.49, + "vote_count": 11115 }, { "adult": false, @@ -905,8 +905,8 @@ "tagline": "You won't know the facts until you've seen the fiction.", "title": "Pulp Fiction", "video": false, - "vote_average": 8.487, - "vote_count": 27386 + "vote_average": 8.488, + "vote_count": 27392 }, { "adult": false, @@ -941,7 +941,7 @@ "original_language": "en", "original_title": "The Lord of the Rings: The Return of the King", "overview": "As armies mass for a final battle that will decide the fate of the world--and powerful, ancient forces of Light and Dark compete to determine the outcome--one member of the Fellowship of the Ring is revealed as the noble heir to the throne of the Kings of Men. Yet, the sole hope for triumph over evil lies with a brave hobbit, Frodo, who, accompanied by his loyal friend Sam and the hideous, wretched Gollum, ventures deep into the very dark heart of Mordor on his seemingly impossible quest to destroy the Ring of Power.​", - "popularity": 178.208, + "popularity": 161.482, "poster_path": "/rCzpDGLbOoPwLjy3OAm5NUPOTrC.jpg", "production_companies": [ { @@ -988,11 +988,11 @@ "title": "The Lord of the Rings: The Return of the King", "video": false, "vote_average": 8.482, - "vote_count": 23636 + "vote_count": 23640 }, { "adult": false, - "backdrop_path": "/mzfx54nfDPTUXZOG48u4LaEheDy.jpg", + "backdrop_path": "/ghgfzbEV7kbpbi1O8eIILKVXEA8.jpg", "belongs_to_collection": null, "budget": 55000000, "genres": [ @@ -1018,7 +1018,7 @@ "original_language": "en", "original_title": "Forrest Gump", "overview": "A man with a low IQ has accomplished great things in his life and been present during significant historic events—in each case, far exceeding what anyone imagined he could do. But despite all he has achieved, his one true love eludes him.", - "popularity": 93.8, + "popularity": 111.57, "poster_path": "/arw2vcBveWOVZr6pxd9XTd1TdQa.jpg", "production_companies": [ { @@ -1061,7 +1061,7 @@ "title": "Forrest Gump", "video": false, "vote_average": 8.475, - "vote_count": 26890 + "vote_count": 26894 }, { "adult": false, @@ -1083,7 +1083,7 @@ "original_language": "it", "original_title": "Il buono, il brutto, il cattivo", "overview": "While the Civil War rages on between the Union and the Confederacy, three men – a quiet loner, a ruthless hitman, and a Mexican bandit – comb the American Southwest in search of a strongbox containing $200,000 in stolen gold.", - "popularity": 86.513, + "popularity": 92.228, "poster_path": "/bX2xnavhMYjWDoZp1VM6VnU1xwe.jpg", "production_companies": [ { @@ -1143,8 +1143,8 @@ "tagline": "For three men the Civil War wasn't hell. It was practice.", "title": "The Good, the Bad and the Ugly", "video": false, - "vote_average": 8.5, - "vote_count": 8379 + "vote_average": 8.465, + "vote_count": 8381 }, { "adult": false, @@ -1170,7 +1170,7 @@ "original_language": "en", "original_title": "GoodFellas", "overview": "The true story of Henry Hill, a half-Irish, half-Sicilian Brooklyn kid who is adopted by neighbourhood gangsters at an early age and climbs the ranks of a Mafia family under the guidance of Jimmy Conway.", - "popularity": 86.067, + "popularity": 75.66, "poster_path": "/aKuFiU82s5ISJpGZp7YkIr3kCUd.jpg", "production_companies": [ { @@ -1206,68 +1206,7 @@ "title": "GoodFellas", "video": false, "vote_average": 8.464, - "vote_count": 12560 - }, - { - "adult": false, - "backdrop_path": "/gwj4R8Uy1GwejKqfofREKI9Jh7L.jpg", - "belongs_to_collection": null, - "budget": 3700000, - "genres": [ - { - "id": 16, - "name": "Animation" - }, - { - "id": 18, - "name": "Drama" - }, - { - "id": 10752, - "name": "War" - } - ], - "homepage": "https://gkids.com/films/grave-of-the-fireflies", - "id": 12477, - "imdb_id": "tt0095327", - "origin_country": [ - "JP" - ], - "original_language": "ja", - "original_title": "火垂るの墓", - "overview": "In the final months of World War II, 14-year-old Seita and his sister Setsuko are orphaned when their mother is killed during an air raid in Kobe, Japan. After a falling out with their aunt, they move into an abandoned bomb shelter. With no surviving relatives and their emergency rations depleted, Seita and Setsuko struggle to survive.", - "popularity": 0.059, - "poster_path": "/k9tv1rXZbOhH7eiCk378x61kNQ1.jpg", - "production_companies": [ - { - "id": 10342, - "logo_path": "/eS79pslnoKbWg7t3PMA9ayl0bGs.png", - "name": "Studio Ghibli", - "origin_country": "JP" - } - ], - "production_countries": [ - { - "iso_3166_1": "JP", - "name": "Japan" - } - ], - "release_date": "1988-04-16", - "revenue": 516962, - "runtime": 89, - "spoken_languages": [ - { - "english_name": "Japanese", - "iso_639_1": "ja", - "name": "日本語" - } - ], - "status": "Released", - "tagline": "", - "title": "Grave of the Fireflies", - "video": false, - "vote_average": 8.5, - "vote_count": 5324 + "vote_count": 12562 }, { "adult": false, @@ -1293,7 +1232,7 @@ "original_language": "es", "original_title": "Cosas imposibles", "overview": "After the death of her abusive husband, Matilde finds her new best friend in Miguel, her young, insecure, and disoriented neighbor.", - "popularity": 19.066, + "popularity": 20.376, "poster_path": "/t2Ew8NZ8Ci2kqmoecZUNQUFDJnQ.jpg", "production_companies": [ { @@ -1362,7 +1301,7 @@ "original_language": "ja", "original_title": "七人の侍", "overview": "A samurai answers a village's request for protection after he falls on hard times. The town needs protection from bandits, so the samurai gathers six others to help him teach the people how to defend themselves, and the villagers provide the soldiers with food.", - "popularity": 40.635, + "popularity": 50.346, "poster_path": "/8OKmBV5BUFzmozIC3pPWKHy17kx.jpg", "production_companies": [ { @@ -1392,8 +1331,69 @@ "tagline": "The Mighty Warriors Who Became the Seven National Heroes of a Small Town", "title": "Seven Samurai", "video": false, + "vote_average": 8.459, + "vote_count": 3560 + }, + { + "adult": false, + "backdrop_path": "/gwj4R8Uy1GwejKqfofREKI9Jh7L.jpg", + "belongs_to_collection": null, + "budget": 3700000, + "genres": [ + { + "id": 16, + "name": "Animation" + }, + { + "id": 18, + "name": "Drama" + }, + { + "id": 10752, + "name": "War" + } + ], + "homepage": "https://gkids.com/films/grave-of-the-fireflies", + "id": 12477, + "imdb_id": "tt0095327", + "origin_country": [ + "JP" + ], + "original_language": "ja", + "original_title": "火垂るの墓", + "overview": "In the final months of World War II, 14-year-old Seita and his sister Setsuko are orphaned when their mother is killed during an air raid in Kobe, Japan. After a falling out with their aunt, they move into an abandoned bomb shelter. With no surviving relatives and their emergency rations depleted, Seita and Setsuko struggle to survive.", + "popularity": 0.069, + "poster_path": "/k9tv1rXZbOhH7eiCk378x61kNQ1.jpg", + "production_companies": [ + { + "id": 10342, + "logo_path": "/eS79pslnoKbWg7t3PMA9ayl0bGs.png", + "name": "Studio Ghibli", + "origin_country": "JP" + } + ], + "production_countries": [ + { + "iso_3166_1": "JP", + "name": "Japan" + } + ], + "release_date": "1988-04-16", + "revenue": 516962, + "runtime": 89, + "spoken_languages": [ + { + "english_name": "Japanese", + "iso_639_1": "ja", + "name": "日本語" + } + ], + "status": "Released", + "tagline": "", + "title": "Grave of the Fireflies", + "video": false, "vote_average": 8.458, - "vote_count": 3559 + "vote_count": 5326 }, { "adult": false, diff --git a/ts/tmp/tv.json b/ts/tmp/tv.json index 95001ce..8975003 100644 --- a/ts/tmp/tv.json +++ b/ts/tmp/tv.json @@ -1,4 +1,138 @@ [ + { + "adult": false, + "backdrop_path": "/9kyyQXy79YRdY5mhrYKyktbFMev.jpg", + "created_by": [ + { + "id": 1754390, + "credit_id": "5db721ba27d9cc001813ccf5", + "name": "Vivienne Medrano", + "original_name": "Vivienne Medrano", + "gender": 1, + "profile_path": null + } + ], + "episode_run_time": [ + 25 + ], + "first_air_date": "2024-01-18", + "genres": [ + { + "id": 16, + "name": "Animation" + }, + { + "id": 35, + "name": "Comedy" + }, + { + "id": 10765, + "name": "Sci-Fi & Fantasy" + } + ], + "homepage": "https://www.amazon.com/dp/B0CLMPQTJ2", + "id": 94954, + "in_production": true, + "languages": [ + "en" + ], + "last_air_date": "2024-02-01", + "last_episode_to_air": { + "id": 4768894, + "name": "The Show Must Go On", + "overview": "All bets are off as the confrontation between the legions of Heaven and Hell begins.", + "vote_average": 7.375, + "vote_count": 8, + "air_date": "2024-02-01", + "episode_number": 8, + "episode_type": "finale", + "production_code": "1BBHH08", + "runtime": 25, + "season_number": 1, + "show_id": 94954, + "still_path": "/mVa6wxS7I7097HyMi1FGe38XrOm.jpg" + }, + "name": "Hazbin Hotel", + "next_episode_to_air": null, + "networks": [ + { + "id": 1024, + "logo_path": "/ifhbNuuVnlwYy5oXA5VIb2YR8AZ.png", + "name": "Prime Video", + "origin_country": "" + } + ], + "number_of_episodes": 8, + "number_of_seasons": 1, + "origin_country": [ + "US" + ], + "original_language": "en", + "original_name": "Hazbin Hotel", + "overview": "In attempt to find a non-violent alternative for reducing Hell's overpopulation, the daughter of Lucifer opens a rehabilitation hotel that offers a group of misfit demons a chance at redemption.", + "popularity": 204.238, + "poster_path": "/rXojaQcxVUubPLSrFV8PD4xdjrs.jpg", + "production_companies": [ + { + "id": 41077, + "logo_path": "/1ZXsGaFPgrgS6ZZGS37AqD5uU12.png", + "name": "A24", + "origin_country": "US" + }, + { + "id": 139412, + "logo_path": "/4HQQR6ySkFByBmCHtZfYXktHkAY.png", + "name": "SpindleHorse Toons", + "origin_country": "US" + }, + { + "id": 30452, + "logo_path": "/zmU1ElCS02iL5N7E5MuY4fV7bCX.png", + "name": "Bento Box Entertainment", + "origin_country": "US" + } + ], + "production_countries": [ + { + "iso_3166_1": "US", + "name": "United States of America" + } + ], + "seasons": [ + { + "air_date": "2019-10-28", + "episode_count": 2, + "id": 199540, + "name": "Specials", + "overview": "", + "poster_path": "/aYApV2vAn2bvY8HbkXHGbmG6FYS.jpg", + "season_number": 0, + "vote_average": 0 + }, + { + "air_date": "2024-01-18", + "episode_count": 8, + "id": 134875, + "name": "Season 1", + "overview": "", + "poster_path": "/u9zmPp8ouqyX2zwXkqM9JzJ4zCO.jpg", + "season_number": 1, + "vote_average": 7.8 + } + ], + "spoken_languages": [ + { + "english_name": "English", + "iso_639_1": "en", + "name": "English" + } + ], + "status": "Returning Series", + "tagline": "", + "type": "Scripted", + "vote_average": 8.955, + "vote_count": 1008 + }, { "adult": false, "backdrop_path": "/96RT2A47UdzWlUfvIERFyBsLhL2.jpg", @@ -233,7 +367,7 @@ "original_language": "ja", "original_name": "葬送のフリーレン", "overview": "After the party of heroes defeated the Demon King, they restored peace to the land and returned to lives of solitude. Generations pass, and the elven mage Frieren comes face to face with humanity’s mortality. She takes on a new apprentice and promises to fulfill old friends’ dying wishes. Can an elven mind make peace with the nature of life and death? Frieren embarks on her quest to find out.", - "popularity": 327.856, + "popularity": 302.09, "poster_path": "/dqZENchTd7lp5zht7BdlqM7RBhD.jpg", "production_companies": [ { @@ -320,140 +454,6 @@ "vote_average": 8.935, "vote_count": 231 }, - { - "adult": false, - "backdrop_path": "/9kyyQXy79YRdY5mhrYKyktbFMev.jpg", - "created_by": [ - { - "id": 1754390, - "credit_id": "5db721ba27d9cc001813ccf5", - "name": "Vivienne Medrano", - "original_name": "Vivienne Medrano", - "gender": 1, - "profile_path": null - } - ], - "episode_run_time": [ - 25 - ], - "first_air_date": "2024-01-18", - "genres": [ - { - "id": 16, - "name": "Animation" - }, - { - "id": 35, - "name": "Comedy" - }, - { - "id": 10765, - "name": "Sci-Fi & Fantasy" - } - ], - "homepage": "https://www.amazon.com/dp/B0CLMPQTJ2", - "id": 94954, - "in_production": true, - "languages": [ - "en" - ], - "last_air_date": "2024-02-01", - "last_episode_to_air": { - "id": 4768894, - "name": "The Show Must Go On", - "overview": "All bets are off as the confrontation between the legions of Heaven and Hell begins.", - "vote_average": 7.375, - "vote_count": 8, - "air_date": "2024-02-01", - "episode_number": 8, - "episode_type": "finale", - "production_code": "1BBHH08", - "runtime": 25, - "season_number": 1, - "show_id": 94954, - "still_path": "/mVa6wxS7I7097HyMi1FGe38XrOm.jpg" - }, - "name": "Hazbin Hotel", - "next_episode_to_air": null, - "networks": [ - { - "id": 1024, - "logo_path": "/ifhbNuuVnlwYy5oXA5VIb2YR8AZ.png", - "name": "Prime Video", - "origin_country": "" - } - ], - "number_of_episodes": 8, - "number_of_seasons": 1, - "origin_country": [ - "US" - ], - "original_language": "en", - "original_name": "Hazbin Hotel", - "overview": "In attempt to find a non-violent alternative for reducing Hell's overpopulation, the daughter of Lucifer opens a rehabilitation hotel that offers a group of misfit demons a chance at redemption.", - "popularity": 204.161, - "poster_path": "/rXojaQcxVUubPLSrFV8PD4xdjrs.jpg", - "production_companies": [ - { - "id": 41077, - "logo_path": "/1ZXsGaFPgrgS6ZZGS37AqD5uU12.png", - "name": "A24", - "origin_country": "US" - }, - { - "id": 139412, - "logo_path": "/4HQQR6ySkFByBmCHtZfYXktHkAY.png", - "name": "SpindleHorse Toons", - "origin_country": "US" - }, - { - "id": 30452, - "logo_path": "/zmU1ElCS02iL5N7E5MuY4fV7bCX.png", - "name": "Bento Box Entertainment", - "origin_country": "US" - } - ], - "production_countries": [ - { - "iso_3166_1": "US", - "name": "United States of America" - } - ], - "seasons": [ - { - "air_date": "2019-10-28", - "episode_count": 2, - "id": 199540, - "name": "Specials", - "overview": "", - "poster_path": "/aYApV2vAn2bvY8HbkXHGbmG6FYS.jpg", - "season_number": 0, - "vote_average": 0 - }, - { - "air_date": "2024-01-18", - "episode_count": 8, - "id": 134875, - "name": "Season 1", - "overview": "", - "poster_path": "/u9zmPp8ouqyX2zwXkqM9JzJ4zCO.jpg", - "season_number": 1, - "vote_average": 7.8 - } - ], - "spoken_languages": [ - { - "english_name": "English", - "iso_639_1": "en", - "name": "English" - } - ], - "status": "Returning Series", - "tagline": "", - "type": "Scripted", - "vote_average": 8.959, - "vote_count": 1006 - }, { "adult": false, "backdrop_path": "/9faGSFi5jam6pDWGNd0p8JcJgXQ.jpg", @@ -521,7 +521,7 @@ "original_language": "en", "original_name": "Breaking Bad", "overview": "Walter White, a New Mexico chemistry teacher, is diagnosed with Stage III cancer and given a prognosis of only two years left to live. He becomes filled with a sense of fearlessness and an unrelenting desire to secure his family's financial future at any cost as he enters the dangerous world of drugs and crime.", - "popularity": 894.59, + "popularity": 1070.931, "poster_path": "/ztkUQFLlC19CCMYHW9o1zWhJRNq.jpg", "production_companies": [ { @@ -632,7 +632,7 @@ "tagline": "Change the equation.", "type": "Scripted", "vote_average": 8.913, - "vote_count": 13850 + "vote_count": 13856 }, { "adult": false, @@ -715,7 +715,7 @@ "original_language": "en", "original_name": "Arcane", "overview": "Amid the stark discord of twin cities Piltover and Zaun, two sisters fight on rival sides of a war between magic technologies and clashing convictions.", - "popularity": 183.008, + "popularity": 126.47, "poster_path": "/fqldf2t8ztc9aiwn3k6mlX3tvRT.jpg", "production_companies": [ { @@ -774,7 +774,7 @@ "tagline": "The hunt is on.", "type": "Scripted", "vote_average": 8.745, - "vote_count": 3866 + "vote_count": 3868 }, { "adult": false, @@ -855,7 +855,7 @@ "original_language": "en", "original_name": "Avatar: The Last Airbender", "overview": "In a war-torn world of elemental magic, a young boy reawakens to undertake a dangerous mystic quest to fulfill his destiny as the Avatar, and bring peace to the world.", - "popularity": 235.395, + "popularity": 205.781, "poster_path": "/v2vn1coUMPKw0GI1KGC5J4IXtqp.jpg", "production_companies": [ { @@ -1038,7 +1038,7 @@ "original_language": "ja", "original_name": "ワンピース", "overview": "Years ago, the fearsome Pirate King, Gol D. Roger was executed leaving a huge pile of treasure and the famous \"One Piece\" behind. Whoever claims the \"One Piece\" will be named the new King of the Pirates.\n\nMonkey D. Luffy, a boy who consumed a \"Devil Fruit,\" decides to follow in the footsteps of his idol, the pirate Shanks, and find the One Piece. It helps, of course, that his body has the properties of rubber and that he's surrounded by a bevy of skilled fighters and thieves to help him along the way.\n\nLuffy will do anything to get the One Piece and become King of the Pirates!", - "popularity": 146.921, + "popularity": 173.793, "poster_path": "/e3NBGiAifW9Xt8xD5tpARskjccO.jpg", "production_companies": [ { @@ -1127,7 +1127,7 @@ "overview": "The Straw Hats, with Kureha's assistant Tony Tony Chopper, finally arrive at Arabasta, which is on the verge of civil war. Vivi must reach the rebels and tell them the real cause behind the conflict, but Crocodile, leader of Baroque Works and one of the Seven Warlords of the Sea, will not just stand by and watch. In the end, Baroque Works, marine forces, pirates, the royal guards, and the rebel army clash in a battle that will determine the fate of the country itself.", "poster_path": "/psjQVMfKxjkiyH9fK9Byo9ynVy9.jpg", "season_number": 4, - "vote_average": 8.7 + "vote_average": 8.6 }, { "air_date": null, @@ -1321,108 +1321,7 @@ "tagline": "Set sail for One Piece!", "type": "Scripted", "vote_average": 8.721, - "vote_count": 4525 - }, - { - "adult": false, - "backdrop_path": "/iDnTAeR2WNA62XQG0ivtteDSjd5.jpg", - "created_by": [], - "episode_run_time": [], - "first_air_date": "2024-03-20", - "genres": [ - { - "id": 16, - "name": "Animation" - }, - { - "id": 10759, - "name": "Action & Adventure" - }, - { - "id": 10765, - "name": "Sci-Fi & Fantasy" - } - ], - "homepage": "https://www.disneyplus.com/series/x-men-97/vc1XIz90ZNH5", - "id": 138502, - "in_production": true, - "languages": [ - "en" - ], - "last_air_date": "2024-05-15", - "last_episode_to_air": { - "id": 5195795, - "name": "Tolerance Is Extinction (3)", - "overview": "The X-Men's dream is put to the test as mutant-human relations reach a tipping point.", - "vote_average": 8.3, - "vote_count": 6, - "air_date": "2024-05-15", - "episode_number": 10, - "episode_type": "finale", - "production_code": "", - "runtime": 43, - "season_number": 1, - "show_id": 138502, - "still_path": "/uuhP8ILtwpIk4edTiZ9Tu6oGQQm.jpg" - }, - "name": "X-Men '97", - "next_episode_to_air": null, - "networks": [ - { - "id": 2739, - "logo_path": "/1edZOYAfoyZyZ3rklNSiUpXX30Q.png", - "name": "Disney+", - "origin_country": "" - } - ], - "number_of_episodes": 10, - "number_of_seasons": 1, - "origin_country": [ - "US" - ], - "original_language": "en", - "original_name": "X-Men '97", - "overview": "The X-Men, a band of mutants who use their uncanny gifts to protect a world that hates and fears them, are challenged like never before, forced to face a dangerous and unexpected new future.", - "popularity": 277.564, - "poster_path": "/9Ycz7yYRf9V4jk3YXwcZhFtbNcF.jpg", - "production_companies": [ - { - "id": 420, - "logo_path": "/hUzeosd33nzE5MCNsZxCGEKTXaQ.png", - "name": "Marvel Studios", - "origin_country": "US" - } - ], - "production_countries": [ - { - "iso_3166_1": "US", - "name": "United States of America" - } - ], - "seasons": [ - { - "air_date": "2024-03-20", - "episode_count": 10, - "id": 219363, - "name": "Season 1", - "overview": "Picking up where 'X-Men' left off, the X-Men are in a period of transition, struggling with the loss of Professor X. And while their world is in a strained state of calm when it comes to mutant-human relations—everyone knows that's likely temporary.", - "poster_path": "/cVlBAB0nFEQxwuyn1mTfrGjqXuw.jpg", - "season_number": 1, - "vote_average": 8.5 - } - ], - "spoken_languages": [ - { - "english_name": "English", - "iso_639_1": "en", - "name": "English" - } - ], - "status": "Returning Series", - "tagline": "New episodes. New era.", - "type": "Scripted", - "vote_average": 8.697, - "vote_count": 374 + "vote_count": 4530 }, { "adult": false, @@ -1512,7 +1411,7 @@ "original_language": "ja", "original_name": "鋼の錬金術師 FULLMETAL ALCHEMIST", "overview": "Disregard for alchemy’s laws ripped half of Edward Elric’s limbs from his body and left his brother Alphonse’s soul clinging to a suit of armor. To restore what was lost, the brothers seek the Philosopher’s Stone. Enemies and allies – the corrupt military, the Homunculi, and foreign alchemists – will alter the Elric brothers course, but their purpose will remain unchanged and their bond unbreakable.", - "popularity": 339.914, + "popularity": 385.739, "poster_path": "/5ZFUEOULaVml7pQuXxhpR2SmVUw.jpg", "production_companies": [ { @@ -1670,7 +1569,7 @@ "original_language": "en", "original_name": "Rick and Morty", "overview": "Rick is a mentally-unbalanced but scientifically gifted old man who has recently reconnected with his family. He spends most of his time involving his young grandson Morty in dangerous, outlandish adventures throughout space and alternate universes. Compounded with Morty's already unstable family life, these events cause Morty much distress at home and school.", - "popularity": 650.938, + "popularity": 601.231, "poster_path": "/gdIrmf2DdY5mgN6ycVP0XlzKzbE.jpg", "production_companies": [ { @@ -1802,8 +1701,109 @@ "status": "Returning Series", "tagline": "Science makes sense, family doesn't.", "type": "Scripted", - "vote_average": 8.699, - "vote_count": 9526 + "vote_average": 8.7, + "vote_count": 9527 + }, + { + "adult": false, + "backdrop_path": "/iDnTAeR2WNA62XQG0ivtteDSjd5.jpg", + "created_by": [], + "episode_run_time": [], + "first_air_date": "2024-03-20", + "genres": [ + { + "id": 16, + "name": "Animation" + }, + { + "id": 10759, + "name": "Action & Adventure" + }, + { + "id": 10765, + "name": "Sci-Fi & Fantasy" + } + ], + "homepage": "https://www.disneyplus.com/series/x-men-97/vc1XIz90ZNH5", + "id": 138502, + "in_production": true, + "languages": [ + "en" + ], + "last_air_date": "2024-05-15", + "last_episode_to_air": { + "id": 5195795, + "name": "Tolerance Is Extinction (3)", + "overview": "The X-Men's dream is put to the test as mutant-human relations reach a tipping point.", + "vote_average": 8.3, + "vote_count": 6, + "air_date": "2024-05-15", + "episode_number": 10, + "episode_type": "finale", + "production_code": "", + "runtime": 43, + "season_number": 1, + "show_id": 138502, + "still_path": "/uuhP8ILtwpIk4edTiZ9Tu6oGQQm.jpg" + }, + "name": "X-Men '97", + "next_episode_to_air": null, + "networks": [ + { + "id": 2739, + "logo_path": "/1edZOYAfoyZyZ3rklNSiUpXX30Q.png", + "name": "Disney+", + "origin_country": "" + } + ], + "number_of_episodes": 10, + "number_of_seasons": 1, + "origin_country": [ + "US" + ], + "original_language": "en", + "original_name": "X-Men '97", + "overview": "The X-Men, a band of mutants who use their uncanny gifts to protect a world that hates and fears them, are challenged like never before, forced to face a dangerous and unexpected new future.", + "popularity": 221.426, + "poster_path": "/9Ycz7yYRf9V4jk3YXwcZhFtbNcF.jpg", + "production_companies": [ + { + "id": 420, + "logo_path": "/hUzeosd33nzE5MCNsZxCGEKTXaQ.png", + "name": "Marvel Studios", + "origin_country": "US" + } + ], + "production_countries": [ + { + "iso_3166_1": "US", + "name": "United States of America" + } + ], + "seasons": [ + { + "air_date": "2024-03-20", + "episode_count": 10, + "id": 219363, + "name": "Season 1", + "overview": "Picking up where 'X-Men' left off, the X-Men are in a period of transition, struggling with the loss of Professor X. And while their world is in a strained state of calm when it comes to mutant-human relations—everyone knows that's likely temporary.", + "poster_path": "/cVlBAB0nFEQxwuyn1mTfrGjqXuw.jpg", + "season_number": 1, + "vote_average": 8.5 + } + ], + "spoken_languages": [ + { + "english_name": "English", + "iso_639_1": "en", + "name": "English" + } + ], + "status": "Returning Series", + "tagline": "New episodes. New era.", + "type": "Scripted", + "vote_average": 8.698, + "vote_count": 376 }, { "adult": false, @@ -1873,7 +1873,7 @@ "original_language": "en", "original_name": "Anne with an E", "overview": "A coming-of-age story about an outsider who, against all odds and numerous challenges, fights for love and acceptance and for her place in the world. The series centers on a young orphaned girl in the late 1890’s, who, after an abusive childhood spent in orphanages and the homes of strangers, is mistakenly sent to live with an elderly woman and her aging brother. Over time, 13-year-old Anne will transform their lives and eventually the small town in which they live with her unique spirit, fierce intellect and brilliant imagination.", - "popularity": 151.918, + "popularity": 187.798, "poster_path": "/6P6tXhjT5tK3qOXzxF9OMLlG7iz.jpg", "production_companies": [ { @@ -2020,7 +2020,7 @@ "original_language": "en", "original_name": "Better Call Saul", "overview": "Six years before Saul Goodman meets Walter White. We meet him when the man who will become Saul Goodman is known as Jimmy McGill, a small-time lawyer searching for his destiny, and, more immediately, hustling to make ends meet. Working alongside, and, often, against Jimmy, is “fixer” Mike Ehrmantraut. The series tracks Jimmy’s transformation into Saul Goodman, the man who puts “criminal” in “criminal lawyer\".", - "popularity": 378.36, + "popularity": 446.031, "poster_path": "/fC2HDm5t0kHl7mTm7jxMR31b7by.jpg", "production_companies": [ { @@ -2141,7 +2141,7 @@ "tagline": "Putting the \"criminal\" in \"criminal lawyer.\"", "type": "Scripted", "vote_average": 8.677, - "vote_count": 4976 + "vote_count": 4978 }, { "adult": false, @@ -2214,7 +2214,7 @@ "original_language": "ko", "original_name": "내 남편과 결혼해줘", "overview": "Kang Ji-won, a terminally ill cancer patient, is killed by her husband and best friend after she witnesses them having an affair. She wakes up 10 years before the incident and decides to seek revenge with the help of Yu Ji-hyuk, a director at the company where she works. Now, she must reclaim her fate and eliminate the trash from her life.", - "popularity": 187.477, + "popularity": 154.751, "poster_path": "/JV3DXl1fITfoyHtyPzNuZyzh8q.jpg", "production_companies": [ { @@ -2264,8 +2264,8 @@ "status": "Ended", "tagline": "A drama about creating a new destiny.", "type": "Scripted", - "vote_average": 8.7, - "vote_count": 336 + "vote_average": 8.674, + "vote_count": 337 }, { "adult": false, @@ -2328,7 +2328,7 @@ "original_language": "en", "original_name": "Chernobyl", "overview": "The true story of one of the worst man-made catastrophes in history: the catastrophic nuclear accident at Chernobyl. A tale of the brave men and women who sacrificed to save Europe from unimaginable disaster.", - "popularity": 103.884, + "popularity": 105.842, "poster_path": "/hlLXt2tOPT6RRnjiUmoxyG1LTFi.jpg", "production_companies": [ { @@ -2382,7 +2382,7 @@ "status": "Ended", "tagline": "What is the cost of lies?", "type": "Miniseries", - "vote_average": 8.7, + "vote_average": 8.673, "vote_count": 6072 }, { @@ -2631,7 +2631,7 @@ "original_language": "ja", "original_name": "鬼滅の刃", "overview": "It is the Taisho Period in Japan. Tanjiro, a kindhearted boy who sells charcoal for a living, finds his family slaughtered by a demon. To make matters worse, his younger sister Nezuko, the sole survivor, has been transformed into a demon herself. Though devastated by this grim reality, Tanjiro resolves to become a “demon slayer” so that he can turn his sister back into a human, and kill the demon that massacred his family.", - "popularity": 215.616, + "popularity": 250.749, "poster_path": "/xUfRZu2mi8jH6SzQEJGP6tjBuYj.jpg", "production_companies": [ { @@ -2731,8 +2731,8 @@ "status": "Returning Series", "tagline": "", "type": "Scripted", - "vote_average": 8.669, - "vote_count": 6230 + "vote_average": 8.668, + "vote_count": 6233 }, { "adult": false, @@ -2816,7 +2816,7 @@ "original_language": "en", "original_name": "The Owl House", "overview": "An animated fantasy-comedy series that follows Luz, a self-assured teenage girl who accidentally stumbles upon a portal to a magical world where she befriends a rebellious witch, Eda, and an adorably tiny warrior, King. Despite not having magical abilities, Luz pursues her dream of becoming a witch by serving as Eda's apprentice at the Owl House and ultimately finds a new family in an unlikely setting.", - "popularity": 133.355, + "popularity": 166.544, "poster_path": "/zhdy3PcNVE15wj1wrxn45ARZBnx.jpg", "production_companies": [ { @@ -2906,7 +2906,7 @@ "tagline": "Us weirdos have to stick together.", "type": "Scripted", "vote_average": 8.667, - "vote_count": 1540 + "vote_count": 1541 }, { "adult": false, @@ -2999,7 +2999,7 @@ "original_language": "ko", "original_name": "환혼", "overview": "A powerful sorceress in a blind woman's body encounters a man from a prestigious family, who wants her help to change his destiny.", - "popularity": 130.442, + "popularity": 124.1, "poster_path": "/q2IiPRSXPOZ6qVRj36WRAYEQyHs.jpg", "production_companies": [ { @@ -3138,7 +3138,7 @@ "original_language": "ja", "original_name": "進撃の巨人", "overview": "Several hundred years ago, humans were nearly exterminated by Titans. Titans are typically several stories tall, seem to have no intelligence, devour human beings and, worst of all, seem to do it for the pleasure rather than as a food source. A small percentage of humanity survived by walling themselves in a city protected by extremely high walls, even taller than the biggest Titans. Flash forward to the present and the city has not seen a Titan in over 100 years. Teenage boy Eren and his foster sister Mikasa witness something horrific as the city walls are destroyed by a Colossal Titan that appears out of thin air. As the smaller Titans flood the city, the two kids watch in horror as their mother is eaten alive. Eren vows that he will murder every single Titan and take revenge for all of mankind.", - "popularity": 150.795, + "popularity": 208.467, "poster_path": "/hTP1DtLGFamjfu8WqjnuQdP1n4i.jpg", "production_companies": [ { @@ -3264,8 +3264,8 @@ "status": "Ended", "tagline": "", "type": "Scripted", - "vote_average": 8.661, - "vote_count": 6174 + "vote_average": 8.7, + "vote_count": 6176 }, { "adult": false, @@ -3342,7 +3342,7 @@ "original_language": "ja", "original_name": "はじめの一歩", "overview": "Makunouchi Ippo is an ordinary high school student in Japan. Since he spends most of his time away from school helping his mother run the family business, he doesn't get to enjoy his younger years like most teenagers. Always a target for bullying at school (the family fishing business grants him a distinct odor), Ippo's life is one of hardship. One of these after-school bullying sessions turns Ippo's life around for the better, as he is saved by a boxer named Takamura. He decides to follow in Takamura's footsteps and train to become a boxer, giving his life direction and purpose. Ippo's path to perfecting his pugilistic prowess is just beginning...", - "popularity": 315.079, + "popularity": 316.016, "poster_path": "/i3U3J2MWovIBZBnZYYiOLBXqNJZ.jpg", "production_companies": [ { @@ -3483,7 +3483,7 @@ "original_language": "en", "original_name": "INVINCIBLE", "overview": "Mark Grayson is a normal teenager except for the fact that his father is the most powerful superhero on the planet. Shortly after his seventeenth birthday, Mark begins to develop powers of his own and enters into his father’s tutelage.", - "popularity": 289.306, + "popularity": 284.077, "poster_path": "/dMOpdkrDC5dQxqNydgKxXjBKyAc.jpg", "production_companies": [ { @@ -3564,7 +3564,7 @@ "tagline": "Almost there.", "type": "Scripted", "vote_average": 8.651, - "vote_count": 4338 + "vote_count": 4340 }, { "adult": false, @@ -3978,7 +3978,7 @@ "original_language": "ja", "original_name": "僕のヒーローアカデミア", "overview": "A superhero-admiring boy without any powers enrolls in a prestigious hero academy and learns what it really means to be a hero.", - "popularity": 184.684, + "popularity": 189.174, "poster_path": "/phuYuzqWW9ru8EA3HVjE9W2Rr3M.jpg", "production_companies": [ {