Skip to content

A Netflix clone built with Next.js 13, Prisma, MongoDB, NextAuth.

Notifications You must be signed in to change notification settings

cahyawibawa/nextflix

Repository files navigation

Nextflix is a Netflix clone built with Next.js, Tailwind CSS, and Prisma. It is a full-stack application that allows users to watch movies and series. It also allows users to create an account and login to their account.

Home-Netflix Netflix signin

Scripts

The following scripts are available:

  • dev: runs Next.js development server.
  • build: builds the application for production usage.
  • start: starts a Next.js production server.
  • lint: runs ESLint configured with rules for Next.js.

Technologies

  • Tailwind CSS: tailwind for styling.
  • Next.js: Next.js for SSR.
  • Material-UI: for the UI Modal.
  • Next Auth: Next Auth is an open source authentication and authorization system for Next.js applications.
  • Prisma: Prisma is an open-source ORM for Node.js and TypeScript. It makes it easy to query databases with mongoDB
  • mongoDB: mongoDB is a cross-platform document-oriented database program. Classified as a NoSQL database program, mongoDB uses JSON-like documents with schema.
  • NextAuth Prisma Adapter: NextAuth Prisma Adapter is an adapter for NextAuth.js that uses Prisma as the database.
  • Prisma Schema: Prisma Schema is a declarative data modeling language that is used to define your database schema. It is used by Prisma to generate the database client and to perform migrations. in this project, it is used to generate the database client .
  • Prisma Client: Prisma Client is an auto-generated and type-safe query builder for Node.js & TypeScript. It allows you to read and write data in your database and exposes a clean API to do so.
  • bcrypt: bcrypt is a password-hashing function designed by Niels Provos and David Mazières, based on the Blowfish cipher and presented at USENIX in 1999.
  • Lodash: Lodash is a JavaScript library which provides utility functions for common programming tasks using the functional programming paradigm.
  • React Player : React Player is a React component for playing a variety of URLs, including file paths, YouTube, Facebook, Twitch, SoundCloud, Streamable, Vimeo, Wistia, Mixcloud, and DailyMotion.
  • Recoil : Recoil is a state management library for React apps.
  • SWR : SWR is a React Hooks library for remote data fetching.
  • TypeScript: version 4.9.5.

Features

  • login and signup Google and Github accont

  • authentication with NextAuth

TODO

  • add more features like search, filter, and more
  • add watchlist and favorite list so users can add movies and series to their watchlist and favorite list