base on Popcorn Time™ puts everything in one place. Your favorite platforms, your shows, your movies-ready when you are. <div align="center">
<img align="center" width="128px" src="crates/popcorntime-tauri/icons/release/
[email protected]" />
<h1 align="center"><b>Popcorn Time™</b></h1>
<p align="center">
Watch Movies, TV Shows and more...
<br />
<a href="https://popcorntime.app"><strong>popcorntime.app</strong></a>
<br />
<br />
(Unstable Nightly releases can be found <a href="https://popcorntime.app/download#nightly">here</a>)
</p>

[![Lint Rust][b-lr]][l-lr] [![Lint TS][b-lt]][l-lt] [![Test TS][b-tt]][l-tt] [![Test Rust][b-tr]][l-tr]
<br/>
[![Discord][b-ds]][l-ds] [![FB][b-fb]][l-fb] [![DEEPWIKI][b-dw]][l-dw]
</div>
[b-lr]: https://github.com/popcorntime/popcorntime/actions/workflows/lint-rust.yaml/badge.svg?branch=dev
[l-lr]: https://github.com/popcorntime/popcorntime/actions/workflows/lint-rust.yaml
[b-lt]: https://github.com/popcorntime/popcorntime/actions/workflows/lint-ts.yaml/badge.svg?branch=dev
[l-lt]: https://github.com/popcorntime/popcorntime/actions/workflows/lint-ts.yaml
[b-tt]: https://github.com/popcorntime/popcorntime/actions/workflows/test-ts.yaml/badge.svg?branch=dev
[l-tt]: https://github.com/popcorntime/popcorntime/actions/workflows/test-ts.yaml
[b-tr]: https://github.com/popcorntime/popcorntime/actions/workflows/test-rust.yaml/badge.svg?branch=dev
[l-tr]: https://github.com/popcorntime/popcorntime/actions/workflows/test-rust.yaml
[b-fb]: https://img.shields.io/badge/Facebook-blue?logo=facebook&logoColor=white
[l-fb]: https://facebook.com/popcorntimetv
[b-dw]: https://deepwiki.com/badge.svg
[l-dw]: https://deepwiki.com/popcorntime/popcorntime
[b-ds]: https://img.shields.io/discord/1419277122987491401?label=Discord&color=5865F2
[l-ds]: https://discord.gg/c57nkpMzW6
This is a **complete rebuild of Popcorn Time**. Not a fork, not a patch - a fresh start with new goals and a clean foundation. This repository will be the home for ongoing development, documentation, and releases.
#### What's New
- Modern, safer, and legal
- Cross-platform: desktop, mobile, and TV
- Open source and community driven
- Weekly published databases for developers and researchers - [issue #3113](https://github.com/popcorntime/popcorntime/issues/3115)
- Local media playback, not just links (soon)
## How Does Popcorn Time Differ?
Other platforms like JustWatch or Reelgood act as directories. They show you where content might be, but they don't let you do much beyond clicking through to a service.
Popcorn Time is different:
- The code is public, built by and for the community
- Our catalog is released weekly as [Parquet](https://parquet.apache.org/) datasets for developers and researchers
- You can play your own files, not just follow links
- Features and direction come from contributors, not corporate agendas
- We share strong, growing databases with everyone - we're not here to monetize discovery like the big guys
## Tech
Popcorn Time is a [Tauri](https://tauri.app/)-based application. Its UI is written in [React](https://react.dev/) using [TypeScript](https://www.typescriptlang.org) and its backend is written in [Rust](https://www.rust-lang.org/).
## Bugs and Feature Requests
If you have a bug or feature request, feel free to open an [issue](https://github.com/popcorntime/popcorntime/issues/new/choose)
## Contributing
If you'd like to help, check out [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines on how to get started.
If you want to skip right to getting the code to actually compile, take a look at the [DEVELOPMENT.md](DEVELOPMENT.md) file.
## Sponsors
Support Popcorn Time and get your logo here and on the [official site](https://popcorntime.app).
[Become a sponsor](https://github.com/sponsors/popcorntime).
This is a community-driven project. Your contributions let us spend more time building and improving Popcorn Time.
", Assign "at most 3 tags" to the expected json: {"id":"5596","tags":[]} "only from the tags list I provide: [{"id":77,"name":"3d"},{"id":89,"name":"agent"},{"id":17,"name":"ai"},{"id":54,"name":"algorithm"},{"id":24,"name":"api"},{"id":44,"name":"authentication"},{"id":3,"name":"aws"},{"id":27,"name":"backend"},{"id":60,"name":"benchmark"},{"id":72,"name":"best-practices"},{"id":39,"name":"bitcoin"},{"id":37,"name":"blockchain"},{"id":1,"name":"blog"},{"id":45,"name":"bundler"},{"id":58,"name":"cache"},{"id":21,"name":"chat"},{"id":49,"name":"cicd"},{"id":4,"name":"cli"},{"id":64,"name":"cloud-native"},{"id":48,"name":"cms"},{"id":61,"name":"compiler"},{"id":68,"name":"containerization"},{"id":92,"name":"crm"},{"id":34,"name":"data"},{"id":47,"name":"database"},{"id":8,"name":"declarative-gui "},{"id":9,"name":"deploy-tool"},{"id":53,"name":"desktop-app"},{"id":6,"name":"dev-exp-lib"},{"id":59,"name":"dev-tool"},{"id":13,"name":"ecommerce"},{"id":26,"name":"editor"},{"id":66,"name":"emulator"},{"id":62,"name":"filesystem"},{"id":80,"name":"finance"},{"id":15,"name":"firmware"},{"id":73,"name":"for-fun"},{"id":2,"name":"framework"},{"id":11,"name":"frontend"},{"id":22,"name":"game"},{"id":81,"name":"game-engine "},{"id":23,"name":"graphql"},{"id":84,"name":"gui"},{"id":91,"name":"http"},{"id":5,"name":"http-client"},{"id":51,"name":"iac"},{"id":30,"name":"ide"},{"id":78,"name":"iot"},{"id":40,"name":"json"},{"id":83,"name":"julian"},{"id":38,"name":"k8s"},{"id":31,"name":"language"},{"id":10,"name":"learning-resource"},{"id":33,"name":"lib"},{"id":41,"name":"linter"},{"id":28,"name":"lms"},{"id":16,"name":"logging"},{"id":76,"name":"low-code"},{"id":90,"name":"message-queue"},{"id":42,"name":"mobile-app"},{"id":18,"name":"monitoring"},{"id":36,"name":"networking"},{"id":7,"name":"node-version"},{"id":55,"name":"nosql"},{"id":57,"name":"observability"},{"id":46,"name":"orm"},{"id":52,"name":"os"},{"id":14,"name":"parser"},{"id":74,"name":"react"},{"id":82,"name":"real-time"},{"id":56,"name":"robot"},{"id":65,"name":"runtime"},{"id":32,"name":"sdk"},{"id":71,"name":"search"},{"id":63,"name":"secrets"},{"id":25,"name":"security"},{"id":85,"name":"server"},{"id":86,"name":"serverless"},{"id":70,"name":"storage"},{"id":75,"name":"system-design"},{"id":79,"name":"terminal"},{"id":29,"name":"testing"},{"id":12,"name":"ui"},{"id":50,"name":"ux"},{"id":88,"name":"video"},{"id":20,"name":"web-app"},{"id":35,"name":"web-server"},{"id":43,"name":"webassembly"},{"id":69,"name":"workflow"},{"id":87,"name":"yaml"}]" returns me the "expected json"