Skip to content

Repository files navigation

Katana is a responsive front-end that emulates Netflix's style. The goal of this project is to provide a backend-agnostic front-end for movie & TV discovery & streaming.

More specifically, no matter where your movies are hosted (Google Drive, P2P stream, satellite, etc.) so long as your backend follows the API conventions herein laid out, you can plug-and-play this front-end into your service.

Note that this project is under heavy development, with all interfaces subject to change at any time.

Some Cool Features

  • Responsive and visually appealing interface
  • Highly adaptable and extensible
  • Source components are modularized
  • Everything runs client-side, only API being called to is TMDB
  • Can easily deploy to Heroku

In The Works

  • Stable back-end API specification (in progress)
  • Example back-end framework in Python (mostly done)
  • Source retrieval and rendering from back-end (done!)
  • Chromecast and Airplay support

Building & Running

To build: npm run build

To start: npm run start

Live-reloading is automatically enabled (can be changed in webpack config). React developer tools for Chrome come highly recommended.

Note: You will likely need to disable Firebase Authentication to run locally (or you can modify it to your own project's Firebase config). All details are in src/auth-enabled.js, including the FIREBASE_AUTH_ENABLED setting.

Current Visual State

Tooling Used

  • React.js
  • Webpack
  • Babel
  • Axios

Credits

This project originated as a fork of AndresXI's fantastic project.

Thanks to TheMovieDB's rock-solid API for, even beside their ridiculously comprehensive database, developer-friendly API design, and great CDN's, their CORS support (a highly underrated feature in my opinion!).

About

Netflix, for everything. Supports any backend that follows the API specification.

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages