N0-0NE-Dev / NoFasel

A streaming app with no ADs.
The Unlicense
324 stars 23 forks source link

Improvement Suggestions #9

Closed OshekharO closed 1 year ago

OshekharO commented 1 year ago
  1. Add stylish bottom navigation google_nav_bar
  2. Change the theme color to amoled black: Theme
  3. Shift to Material designe but if it looks ugly ignore this.
  4. Add Anime Section: Anime
  5. Browse movies by popularity, release date or genres
  6. Add hero slider ( trending movies)
  7. For setting & about page: Musify
  8. Implement omdb api to fetch from IMDb: omdbapi
  9. Redesign Video Player.
  10. Movie & Series stream api: sora
  11. Reduce Content Load Time.
  12. Android TV compatible (fire stick).
  13. Add live tv section containing selected tv channels ( I can maintain the m3u8 links for it ) example
  14. Add tmdb api
N0-0NE-Dev commented 1 year ago

Hi @OshekharO, NoFasel is currently undergoing a total UI redesign and a lot of what you suggested will be coming. I will not be using omdb as it has a 1000 requests per day limit. I also won't use Sora or gdriveplayer APIs as they contain ADs.

OshekharO commented 1 year ago

Hi @OshekharO, NoFasel is currently undergoing a total UI redesign and a lot of what you suggested will be coming. I will not be using omdb as it has a 1000 requests per day limit. I also won't use Sora or gdriveplayer APIs as they contain ADs.

You can take inspiration from here also: Dooo / Animite

Also add English and Hindi sources also

OshekharO commented 1 year ago

Here you will get the website for movie, series and animes: https://indexer.is-an.app

N0-0NE-Dev commented 1 year ago

Hey @OshekharO, I took a lot of your suggestions into account for version 1.1.1.

  1. I changed the bottom navigation bar to use react-native-paper which looks better.
  2. The theme is now also improved and more consistent.
  3. Unfortunately react-native-paper does not yet support material you design and implementing it would have been a hassel.
  4. There already is an anime section .
  5. I added the ability to browse by genres.
  6. There is now an auto-scrollling list of some trending movies that appear on the home screen.
  7. I redesigned the settings page, but again it is using react-native-paper.
  8. As I mentioned previously, OMDb has a daily limit, but I implemented TMDb for overview and cast information.
  9. I am seeing if it is possible to make a custom video player using video.js, but this will probably take a while. Feel free to open a new issue for that.
  10. I will not be using sora or other similar embed apis, as they contain ads.
  11. I am thinking about making a python api for the app to speed up the app load time and eliminate the need to download the json files locally. Feel free to open another issue for that as well.
  12. The app is already compatible with android tv, you just need a physical or virtual mouse to control it.
  13. A live tv section will be more hassel than it is worth, people usually only use it for sports.
  14. I did add tmdb api.

Thanks again for your suggestions.

Leichesters commented 1 year ago

@DarkCrypt or @OshekharO do you know if there is an API that allows you to access the links to the movies directly (aka .m3u files)? Sora only seems to be for embedding videos. for react native we need the direct links though.

DarkCrypt commented 1 year ago

@Leichesters Correct, Sora is basically different free providers for video embedding like you said. The only provider on that list that's different is Consumet and maybe Superembed(they do offer an api without embedding but don't provide direct links).

An api provider for direct links sure seems impossible to find, I look all the time and still haven't found anything really. So far Consumet seems to be the best option for no embedding.

Consumet provides direct links correct? This won't work for you in React Native?

Leichesters commented 1 year ago

@DarkCrypt what a bummer that there's only Consumet available :( I wonder how the other providers get their links? Do you know how they do that? If yes we can create our own parser. Consumet does work but it only contains a small portion of movies available. Is there a way to embed the other providers into react native or extract the m3u8 links from them using react Native?

DarkCrypt commented 1 year ago

@Leichesters Consumet doesn't have a lot of providers but 2 providers(FlixHQ and Fmovies) offer 1,000's of movies/tv shows. Fmovies is one of the most used movie sites on the web with millions of users and many sites attempt to clone them. Being able to grab links from these 2 sites is absolutely incredible if you ask me. If you can't grab links to all the content they offer then that would be a bummer.

All the embed sites and most of the streaming apps I've seen use web scraping to get their links. After scraping, they can pipe the video link into a native player or external player. Some have even built their own extractor for this to be possible. Another way they get links is from video storage hosts via api. I'm not sure but this should be possible with React Native?

Leichesters commented 1 year ago

@DarkCrypt thanks, I will check consumet out - After a quick look I couldn't find anything related to Fmovies on their docs though. FlixHQ is listed as a provider, but Fmovies is not.

Do you know how the other sites scrape the links or where they do that? If possible, I'd first try to extract the links myself from the storage hosts directly.

OshekharO commented 1 year ago

@DarkCrypt or @OshekharO do you know if there is an API that allows you to access the links to the movies directly (aka .m3u files)? Sora only seems to be for embedding videos. for react native we need the direct links though.

Well for reference you can check cloudstream extension they extract the direct link from the embed provided by different sites.

OshekharO commented 1 year ago

Also you may take into account this project: https://github.com/koikiss-dev/jimov_api & https://docs.anify.tv ( Good For Anime Contents )

DarkCrypt commented 1 year ago

@Leichesters

After a quick look I couldn't find anything related to Fmovies on their docs though. FlixHQ is listed as a provider, but Fmovies is not.

Looks like Consumet's docs are a little confusing. Fmovies is listed as a provider in some places but not others. You can see it on their Providers-Status page but it says N/A. FlixHQ would still be a great provider.

Do you know how the other sites scrape the links or where they do that? If possible, I'd first try to extract the links myself from the storage hosts directly.

Like OshekharO recommended, you should definitely check out CloudStream's extensions if you're interested in scraping sites. If you can duplicate their process or create something similar, you'll be able to build a badass app and at the same time open the door to providers you choose. You can check out CloudStream's repos on GitHub but I recommend their Codeberg repo for extensions. You might want to check out the other repos they have there as well.