Skip to content

thouel/my-trendingvids-webapp

Repository files navigation

my-trendingvids-webapp

NextJS Next-Auth MongoDB Prisma TailwindCss Responsive Github Vercel standard-readme compliant maintained ask Preflight Vercel Production Deployment

A responsive webapp to visualize the current TV shows and movies trends :

  • Shows the trends sorted by genres
  • Save favorite shows in your own-crafted list

Table of Contents

Background

App used to step in dev world. My main focuses were:

  • understand the mechanics of a JS react framework : NextJs v13 with the App router does the trick
  • have a responsive designed web application (for mobile and desktop)
  • have an automatic deployment pipeline
  • store data in a cloud database
  • build a continuous integration & deployment pipeline

Using:

Install

$ npm i react@latest react-dom@latest [email protected]

Test

We use gmail-tester to get signin mails. To set it up or in case you see an invalid_grant error, please follow the steps 2. and 3. of the gmail-tester npm page.

You need to set the credentials.json and token.json files in the directory mail-tester at the root of the application. See mail-tester.example

Usage

We use TMDB API to fetch live data of trending movies and tvshows. You need to get your own API_KEY in order to make it work.

We use MongoDB Atlas as mongodb host. You can get your own and set up the uri.

We use a gmail account to send magic links to the users who want to signin. To set this up, you need to create & use an app password. Preferably, you will use a side-account to do that. Do not use your main. You also can use a custom smtp server.

$ npm run dev

Example

Latest deployment of main branch on Vercel

CI

After each push on main branch, we build, lint, run tests and then build. On success build, we deploy on prod env.

Maintainers

@https://github.com/thouel

License

MIT © 2023 Thibault Houel