• Stars
    star
    467
  • Rank 93,935 (Top 2 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created over 3 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A Next.js Movies App

next-movies

This is a Movies App built using Next.js, React and The Movie Database (TMDB) API.

Demo

A live deployment of this app is available to try it out.

Contributing

Contributions are always welcome!

For large changes, please file an issue to discuss your proposed changes with us before working on a PR :)

Installation

Clone and install the dependencies for next-movies locally:

  git clone https://github.com/tastejs/next-movies.git
  cd next-movies 
  npm install

Quick setup

  1. Take a copy of .env.local.example and re-name to .env.local
  2. Get your TMDb API key
  3. Get your TMDB API read access token
  4. Enter the details into the .env.local file

Running locally

  • npm run dev: dev build
  • npm run build: production build
  • npm run static-build: production static build
  • npm run start: start the project
  • npm run vercel-deploy: deploy to vercel
  • npm run netlify-deploy: deploy to netlify
  • npm run analyze: bundle analysis
  • (analyze:server and analyze:browser are available too)

Tech Stack

Built with:

  • Next.js
  • Redux and Redux Thunk
  • react-glider
  • react-lazyload
  • react-modal-video
  • react-scroll
  • react-select-search
  • redaxios
  • use-dark-mode
  • @artsy/fresnel
  • @loadable/component

next/image

In most cases, we strongly recommend using the next/image component for optimizing how you load images. For the next-movies app, there are a few app-specific reasons we currently don't use the component. Using react-lazyload, we lazy-load the entire MovieListItem component (for example), where elements like the movie name and star ratings don't load until they get near the viewport. This behavior is currently not possible with next/image. In the future, there may be more "Suspense"-y ways of approaching images in React/Next, which would make this type of pattern more first-class. Until then, check out our approach, but you'll likely be otherwise be able to make next/image work for you.

Authors

Based on the original create-react-app foundation by @fidalgodev.

License

MIT

More Repositories

1

todomvc

Helping you select an MV* framework - Todo apps for React.js, Ember.js, Angular, and many more
JavaScript
28,590
star
2

awesome-app-ideas

List of awesome app ideas
5,350
star
3

hacker-news-pwas

HNPWA - Hacker News readers as Progressive Web Apps 📱
HTML
2,380
star
4

PropertyCross

Helping developers select a framework for cross-platform mobile development.
JavaScript
591
star
5

todomvc-app-template

Template used for creating TodoMVC apps
HTML
473
star
6

angular-movies

A Angular Movies App Optimized for Performance
TypeScript
373
star
7

todomvc-backbone-es6

Backbone TodoMVC rewritten using ES6
JavaScript
234
star
8

todomvc-app-css

CSS for TodoMVC apps
CSS
207
star
9

TasteMusic

Empowering your MDD (Music Driven Development) - Music recommendations by JavaScripters
JavaScript
178
star
10

TasteApp

Taking TodoMVC further.
100
star
11

nuxt-movies

Nuxt.js Movies - a TMDB client optimized for Core Web Vitals
Vue
73
star
12

todomvc-common

Common TodoMVC utilities used in every app
JavaScript
58
star
13

TasteStack

Compare backend implementations in different programming languages.
44
star
14

movies

Movies is a non-trivial learning application
HTML
38
star
15

tastejs.github.com

TasteJS site
HTML
36
star
16

todomvc-api

Validate your TodoMVC API implementation.
JavaScript
23
star
17

sveltekit-movie-app

TMDB movie app using sveltekit
JavaScript
22
star
18

media

TasteJS logo and artwork
13
star
19

TasteLang

TodoMVC for compile-to JavaScript languages
13
star
20

meta

A cozy place to scheme, discuss and eat popsicles. This is where the magic happens.
12
star
21

hn-experiments

HN experiments
HTML
4
star