Catalogs for Movies & Series
Movies & Series, in Frunk.tv, comes with no films or series: it shows the catalogs each user adds. Anyone can publish one. This page explains how: a JSON file that describes it, an SQLite database with the films and their links, and a link to install it. To use Movies & Series, see its guide. For films, series or channels asked for bit by bit from a server, see add-ons: this format is one of their cases.
How it works
- The user opens the catalog's install link, or pastes its address in Movies & Series («+»), in the car or sending it from their phone with a QR code.
- Frunk.tv shows them its name, its description and the domain that publishes it, and asks them to confirm.
- The user's browser downloads the database straight from where you publish it and keeps it; searches run in their browser. Videos play from their links. Nothing goes through Frunk.tv's server.
The manifest
A JSON file served over https with Access-Control-Allow-Origin: * (the user's browser asks for
it, from frunk.tv). GitHub (raw.githubusercontent.com) and GitHub Pages already do.
{
"frunk_catalog": 1,
"name": "My catalog",
"description": "What it has, in a sentence or two.",
"bundle": "catalog.db",
"debrid": false
}
frunk_catalog: the format's version,1.name(up to 60 characters) anddescription(optional, up to 400).bundle: the database, relative to the manifest or absolute. An SQLite database as it is or inside a ZIP.debrid:trueif the links open through the user's own AllDebrid account;false(or nothing) if they are videos that play as they are. Publish only links to content you have the right to share.setup(optional): SQL statements run when the database is opened, to create indexes or views with the schema below. If one of your tables has the name of a view of the schema, name it withmain.inside the view.
The database is unencrypted: a regular SQLite file or standard ZIP, unencrypted. A manifest with other fields from an earlier format version cannot be added.
The database
Frunk.tv reads these tables (or views made in setup):
movies (id, title, year, poster, plot, rating, quality[, category])
movie_links (movie_id, url, quality, audio)
series (id, title, year, poster, plot, rating, quality[, category])
episode_links (series_id, season, episode, url, quality, audio)
poster: a full https URL. Small is better (about 185 pixels wide): in the car, memory counts.url: a full http(s) link, unencrypted. Any link that is not will not be shown.year: a number. The list goes from newest to oldest.category(optional): with two values or more, they show as filters.- Without
seriesthere is no series tab, and the same withmovies. - A big catalog is fine, but the smaller it is, the sooner it downloads and the less memory it takes in the car.
The install link
https://frunk.tv/#/vod/add/ followed by the manifest's address, encoded (in JavaScript,
encodeURIComponent). For instance, Frunk.tv's example catalog:
https://frunk.tv/#/vod/add/https%3A%2F%2Ffrunk.tv%2Fstatic%2Fcatalogs%2Fclasicos.json
If you change the database, change the file: Frunk.tv compares its size and date and tells whoever has it
that there is a new version. If you move the database, change bundle in the manifest.
A full example
«Clásicos de dominio público» (public-domain classics), the example catalog, is an SQLite database with the schema as it is: its manifest and its database. Its films come from the Internet Archive and play straight from there.