About • Features • FAQ • Contributing • Setup • Built With • License
Browse your favorite movies/tv and find the perfect watch for any occasion, personalized with recommendations based on what you’ve enjoyed.
Like what you see? Please consider giving Peri a GitHub star ⭐, it will help a lot!
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.
- 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
- 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.
- 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.
- 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.
- 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.
- 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.
- Yes! Head down to the contributing section to learn more about how you can help!
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.
- Clone the repo
git clone https://github.com/asecco/peri.git
cd peri
- Install the dependencies
yarn install
- Open the
.env
file in the root directory and replace thePLACE_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
- Start the development server
yarn run dev
This project is licensed under the MIT License - see the LICENSE file for details.