• Stars
    star
    552
  • Rank 80,595 (Top 2 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created almost 6 years ago
  • Updated 11 months ago

Reviews

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

Repository Details

Netflix UI Clone with React Native & Expo

Netflix: UI Clone with React Native / Expo

web demo: Expo Netflix

follow @calebnance

netflix screens

Table of Contents

Install & Build

First, make sure you have Expo CLI installed: npm install -g expo-cli

Install:

yarn

Run Project Locally:

yarn dev

Features

  • Expo SDK 48
  • iOS, Android and PWA (Progressive Web App)
  • React Navigation v6
  • PropTypes

API Components/Packages Used

  • React Native
    • Animated
    • Alert and Switch
    • Image and ImageBackground
    • Keyboard and TextInput
    • TouchableOpacity and TouchableWithoutFeedback
    • Dimensions, Platform and StatusBar
    • ScrollView and FlatList
    • StyleSheet, Text, and View
  • Expo
    • expo-asset
    • expo-constants
    • expo-font
    • expo-linear-gradient
    • AppLoading
    • ScreenOrientation
  • 3rd Party
    • react-native-appearance
    • react-native-svg
    • react-native-webview

Linting

  • run: yarn lint for a list of linting warnings/error in cli
  • prettier and airbnb config
  • make sure you have prettier package installed:
  • then make sure to enable these options (packages → prettier):
    • eslint integration
    • stylelint integration
    • automatic format on save (toggle format on save)
  • be aware of the .prettierignore file

Expo Web

Currently Expo Web support is not production ready, but if you want to see how this project looks on the web as a PWA (Progressive Web App)... using react-native-web and react-dom.

PWA: Expo Netflix looks best on a mobile device, but not bad on desktop!

Dev with Expo Web

  • Remove node_modules if they exist: rm -rf nodes_modules
  • Install/Re-install: yarn
  • Start development: yarn web or expo start --web
  • Build PWA: yarn web-build or expo build:web

a couple manual changes within index.html i found needed to be made so far:

  • to make splash screen work: "mobile-web-app-capable" => "apple-mobile-web-app-capable"
  • status bar transparent: apple-mobile-web-app-status-bar-style="default" => "black-translucent"
  • no white background: add background color within body{background-color: #121212; ...}
  • check output meta: double image meta tags
  • check output js: double/triple js packages

Release Notes

version 0.0.2 (current)

  • upgraded to Expo SDK 48
  • upgraded to Expo SDK 47
  • upgraded to Expo SDK 46
  • upgraded to Expo SDK 45
  • upgraded to Expo SDK 44
  • upgraded to Expo SDK 43
  • upgraded to React Navigation v6
  • upgraded to React Navigation v5
  • upgraded to Expo SDK 42
  • upgraded to Expo SDK 41
  • upgraded to Expo SDK 40
  • upgraded to Expo SDK 39
  • upgraded to Expo SDK 38
  • upgraded to Expo SDK 37
  • upgraded to React Navigation v4
  • upgraded to Expo SDK 36
  • upgraded to Expo SDK 35
  • Expo Web support
  • upgraded to Expo SDK 34
  • upgraded to Expo SDK 33
  • Home Top Navbar
    • show/hide on scroll
    • start of stack navigation in nav bar
    • TV Shows, Movies and My List screens
    • start of mock data and images for shows/movies
  • More Stack
    • menu list (scrollable) created, with current version on screen
    • app settings
      • start of section headings
      • displays current phone model name (ios only, for now)
      • delete all downloads (mock alert)
      • storage bar styled: device storage space, netflix (downloaded) space used, and free space (all mock data)
    • privacy now opens a modal with WebView that opens Help Netflix - Privacy page
    • sign out now opens an alert with selectable options
    • manage profiles
      • modal popup with edit overlay
      • modal add profile with for kids switch
  • Modal Video player screen added
    • on open (mount), screen orientation changes to landscape
    • on close (unmount), screen orientation changes back to portrait

version 0.0.1

  • iOS and Android
  • Tab Navigation
    • Home
      • simple banner (bandersnatch)
      • add to my list
      • simple wireframe with FlatList (horizontal scroll)
    • Search
      • simple animation onFocus and onBlur of search input
      • autofocus on first render
    • My Downloads
    • More
      • simple account profiles layout
  • Chrome Cast modal screen

screen grab of netflix clone

More Repositories

1

expo-spotify

Spotify UI Clone with React Native & Expo
JavaScript
566
star
2

expo-uber

Uber UI Clone with React Native & Expo
JavaScript
441
star
3

expo-disneyplus

Disney+ UI Clone with React Native & Expo
JavaScript
303
star
4

expo-slack

Slack UI Clone with React Native & Expo
JavaScript
102
star
5

expo-multi-screen-starter

react native / expo / react navigation v6
JavaScript
83
star
6

expo-neumorphism

neumorphism with expo / react native || web support => https://expo-neumorphism.vercel.app
JavaScript
69
star
7

expo-starter

Expo starter with React Navigation v6 and Context
JavaScript
25
star
8

expo-wordscapes

wordscapes clone with expo / react native
JavaScript
16
star
9

expo-playground

react native / expo api playground
JavaScript
15
star
10

expo-arkit

expo / arkit / prettier
JavaScript
8
star
11

expo-burger-king

JavaScript
7
star
12

blog-calebnance_phaser-tutorials

phaser tutorial series code
JavaScript
5
star
13

figma-plugin-react-starter

Figma Plugin Starter: React + Webpack 5 + SCSS
JavaScript
4
star
14

table-tennis-manager

*this is old code - keep track of games played, points scored, and ranking system for selected date range.
PHP
4
star
15

expo-single-screen-starter

expo / prettier / jest
JavaScript
4
star
16

black-mirror-nosedive-app

NoseDive - Black Mirror - React Web App
JavaScript
4
star
17

expo-audio-video

expo / react native / prettier
JavaScript
3
star
18

react-native-phaser

Expo SDK 32.0 - Phaser
JavaScript
3
star
19

expo-manager

a desktop application to help manage your expo projects
JavaScript
2
star
20

feather-ssg

feather static site generator
JavaScript
2
star
21

rabbit-hole-ui

JavaScript
2
star
22

black-rabbit-os

automated joomla installable component creator from a simple form, no coding needed.
PHP
2
star
23

rnmacosnintendoswitch

Objective-C
1
star
24

jekyll_blog-calebnance

jekyll / scss / pwa
JavaScript
1
star
25

expo-file-system-navigator

JavaScript
1
star
26

hello-world-component

generated by black-rabbit-os
PHP
1
star
27

kids-see-ghosts

moving around, just moving around...
CSS
1
star
28

figma-plugin-layer-node-inspect

JavaScript
1
star