Skip to content
/ peri Public

Browse your favorite movies/tv and find the perfect watch for any occasion, personalized with recommendations based on what you’ve enjoyed.

License

Notifications You must be signed in to change notification settings

asecco/peri

Repository files navigation

Project logo

Peri

Last Commit GitHub stars GitHub Issues

AboutFeaturesFAQContributingSetupBuilt WithLicense


Browse your favorite movies/tv and find the perfect watch for any occasion, personalized with recommendations based on what you’ve enjoyed.

demo

Like what you see? Please consider giving Peri a GitHub star ⭐, it will help a lot!

About

Peri was originally designed to be similar to a modern streaming media service UI, being inspired by platforms such as Plex and Hulu. Peri includes no streaming functionality and serves as an extensive database of films and tv series, allowing you to browse and garner information on whichever type of media you desire.

Features

  • Personalized recommendations
  • Modern UI and fully mobile responsive
  • Direct links to legal streaming options(Netflix, Prime Video, Apple TV, etc.)
  • Embedded trailers
  • Comment section for reviewing/discussing with the community
  • Search functionality with autocomplete suggestions
  • Unique collections allowing you to create your own lists and share them with others
  • Lazy loading
  • Local storage for saving favorites
  • Server-side rendering via Next.js

Frequently Asked Questions

What is the purpose of Peri, and why should I use it?

  • I've always wanted Peri to be a great resource for avid movie/tv fans like myself to browse different content and find what they desire. In today's world, there are dozens of different streaming services with varying amounts of content. This can make it troublesome to know where to look, and that's where Peri comes in!
  • Peri's recommendations are personalized based on what you've enjoyed in the past, and the site is designed to be as simple and easy to use as possible. The site is also consistently updated and I'm always looking for ways to improve the overall feel and functionality.

Can I use Peri without creating an account?

  • Yes! I want to keep this site as simple and convenient for all users, so you are never required to register an account or give any personal information.
  • For the community discussion/review section, there is an optional field for your email, but you're not required to give one to post. While this is great for preserving anonymity for users, in order to prevent spam and inappropriate posts, a moderator will have to approve the post before it gets displayed to everyone on the site.

I use Trakt, is there a way for me to import my existing data to Peri?

  • Yes, there is support for importing your Trakt movies/shows that you've rated into Peri favorites. You can export your data by being a Trakt VIP member or by using amazing tools like this.
  • Peri currently supports importing TXT/JSON files in the following format:
[
  {
    "rated_at": "2023-07-16T15:47:24.000Z",
    "rating": 8,
    "type": "movie",
    "movie": {
      "title": "Pulp Fiction",
      "year": 1994,
      "ids": {
        "trakt": 554,
        "slug": "pulp-fiction-1994",
        "imdb": "tt0110912",
        "tmdb": 680
      }
    }
  },
]
  • Any movie/show that you've rated an 8 or greater will be imported.

My favorites disappeared, what happened to them?

  • Instead of opting for a more traditional account creation process, I use your browser's local storage to store the favorites. This is better for simplicity's sake and overall convenience for users.
  • If you recently lost your favorites, you likely switched your browser/device or cleared your browser's cache. Unfortunately, there is not currently a way of retrieving the lost data.

Can I ask for new features or suggest any improvements for Peri?

  • Definitely! I would love to hear any feedback from the community on ways to improve the site.
  • To get started, head over to the discussion section and start a new thread.

Can I contribute to this project?

  • Yes! Head down to the contributing section to learn more about how you can help!

Contributing

I would love to expand upon this project over time with continuous updates to ensure it remains up-to-date and a great resource for movie fans.

Pull requests are welcome for simple bug fixes and general improvements! Head over to the issues section to see if there is anything currently open, and head down to the setup section to get your development environment configured.

If you want to contribute new features or drastically change a current feature. Please open a discussion before working on it, to ensure this is a change that I feel is properly suited for this project.

upates2 updates

Setup

  1. Clone the repo
git clone https://github.com/asecco/peri.git
cd peri
  1. Install the dependencies
yarn install
  1. Open the .env file in the root directory and replace the PLACE_KEY_HERE placeholders with your API keys after registering on TMDB, Watchmode, and YouTube. All API keys are free to obtain with limits. The TMDB key is the only one that is absolutely required for the majority of the project's features to function locally without errors.
NEXT_PUBLIC_API_KEY = PLACE_KEY_HERE
WATCHMODE_API_KEY = PLACE_KEY_HERE
YOUTUBE_API_KEY = PLACE_KEY_HERE
  1. Start the development server
yarn run dev

Built With

  • React
  • Next.js
  • Tailwind CSS
  • Postgres

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

Browse your favorite movies/tv and find the perfect watch for any occasion, personalized with recommendations based on what you’ve enjoyed.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project