/flixquest

Open-source Android app made with Flutter with functionality of watching movies and tv series for free.

Primary LanguageDartGNU General Public License v3.0GPL-3.0

Consumet

FlixQuest (Formerly Cinemax)

Android app built using Flutter that let's you stream movies and TV shows for free!

📱 Screenshots (currently showing old screenshots, will update later)

Screenshot 2 Screenshot 1 Screenshot 3
Screenshot 1 Screenshot 2 Screenshot 3
Screenshot 1 Screenshot 1 Screenshot 1
Screenshot 1 Screenshot 1 Screenshot 1

🔐 Replacing API keys

You need to use your own TMDB, Opensubtitles and Mixpanel API keys. Create a .env file in the root directory of the project and create fields TMDB_API_KEY, MIXPANEL_API_KEY and OPENSUBTITLES_API_KEY and assign a value to them with your own keys.

Mixpanel is used for general analytics thus can be removed, same goes for opensutitles but TMDB API key is necessary.

API keys can be found at: https://developer.themoviedb.org/v3/reference/intro/authentication#api-key-quick-start

https://mixpanel.com

https://www.opensubtitles.com/consumers

🕷️ Using self-hosted scraper instances

This repo uses the Consumet API and FlixQuest API to scrape streaming links of movies and TV shows.
You need to have your own instance running on free services like Vercel or Render

In the .env file you created (follow the above "Replacing API keys" section if you don't have an .env file), add FLIXQUEST_API_URL and CONSUMET_URL fields and add your FlixQuest API and Consumet API instances respectively.

After that your env file should look like this:

TMDB_API_KEY="your_tmdb_api_key"
MIXPANEL_API_KEY="your_mixpanel_api_key"
OPENSUBTITLES_API_KEY="your_opensubtitles_api_key"
CONSUMET_URL="https://your-consumet-instance.someserver.com/"
FLIXQUEST_API_URL="https://your-flixquest-api-instance.someserver.com/"

🔥 Firebase dependencies

The repo uses Firebase remote config to update different URL's and general values that needs to be updated dynamically without updating the app. You can remove the code if you want static values for some of the fields.

This repo also uses Firebase Database to store data of registered users and to sync bookmarks between SQLite and well, you guessed it Firestore Database. You can also remove this code, it'll work just fine.

▶️ Adding custom better_player package

This repo uses customized better_player package which can be found at github.com/beamlakaschalew/flixquest-betterplayer

Clone the repo to your machine and edit the location of the better_player package that is found in the project's pubspec.yaml to wherever the package is located.
Also alternatively you can just use the git url like so:

better_player:
    git:
        url: https://github.com/BeamlakAschalew/flixquest-betterplayer.git

😇 Contributing

Whether you have ideas, translations, design changes, code cleaning, or real heavy code changes, help is always welcome. The more is done the better it gets!

If creating a pull request, please make sure to format your code.

If opening an issue without following the issue template, we will ignore the issue and force close it.

⚠️ Disclaimer

The developers of this application does not have any affiliation with the content providers like TMDB or third party websites.

FlixQuest does not host any content on the app, and has no control over what media is put up or taken down.

In case of copyright infringement, please directly contact the responsible parties or the streaming websites.

It merely scrapes 3rd-party websites that are publicly accessable via any regular web browser and third-party APIs

Buy me a coffee if you like my work!

buy me a coffee

🙏 Credits

Basic UI and TMDB API integration from: Matinee


GNU, but for Entertainment

2024 ツ BeamlakAschalew