├── .gitignore ├── README.md ├── assets ├── ai │ ├── lg.ai │ ├── md.ai │ ├── sm.ai │ ├── xl.ai │ └── xs.ai ├── css │ └── style.css ├── images │ ├── avatar.jpg │ ├── better-call-saul.jpg │ ├── capitao-america-o-primeiro-vingador.jpg │ ├── eu-sou-a-lenda.jpg │ ├── full-banner.jpg │ ├── greys-anatomy.jpg │ ├── guardios-da-galaxia-banner.webp │ ├── guardios-da-galaxia.jpg │ ├── hamburger.gif │ ├── header_gradient.png │ ├── homem-de-ferro-2.jpg │ ├── homem-de-ferro.jpg │ ├── logo.png │ ├── nosso-planeta.jpg │ ├── o-menino-que-descobriu-o-vento.jpg │ ├── the-rain.jpg │ ├── thor-o-mundo-sombrio.jpg │ └── vingadores-era-de-ultron.jpg ├── package-lock.json └── videos │ ├── Iron Man 2 Official Trailer #1 (2010) - Marvel Movie HD.mp4 │ ├── capitao_america_guerra_civil_1080p.mp4 │ ├── capitao_america_o_primeiro_vingador_trailer__360p.mp4 │ ├── homem_de_ferro_3_trailer_oficial_1080p.mp4 │ └── trailer_guardioes_da_galaxia_1080p.mp4 ├── favicon.ico ├── index.html ├── package-lock.json ├── package.json └── style.css /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | lerna-debug.log* 8 | 9 | # Diagnostic reports (https://nodejs.org/api/report.html) 10 | report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json 11 | 12 | # Runtime data 13 | pids 14 | *.pid 15 | *.seed 16 | *.pid.lock 17 | 18 | # Directory for instrumented libs generated by jscoverage/JSCover 19 | lib-cov 20 | 21 | # Coverage directory used by tools like istanbul 22 | coverage 23 | *.lcov 24 | 25 | # nyc test coverage 26 | .nyc_output 27 | 28 | # Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) 29 | .grunt 30 | 31 | # Bower dependency directory (https://bower.io/) 32 | bower_components 33 | 34 | # node-waf configuration 35 | .lock-wscript 36 | 37 | # Compiled binary addons (https://nodejs.org/api/addons.html) 38 | build/Release 39 | 40 | # Dependency directories 41 | node_modules/ 42 | jspm_packages/ 43 | 44 | # TypeScript v1 declaration files 45 | typings/ 46 | 47 | # TypeScript cache 48 | *.tsbuildinfo 49 | 50 | # Optional npm cache directory 51 | .npm 52 | 53 | # Optional eslint cache 54 | .eslintcache 55 | 56 | # Optional REPL history 57 | .node_repl_history 58 | 59 | # Output of 'npm pack' 60 | *.tgz 61 | 62 | # Yarn Integrity file 63 | .yarn-integrity 64 | 65 | # dotenv environment variables file 66 | .env 67 | .env.test 68 | 69 | # parcel-bundler cache (https://parceljs.org/) 70 | .cache 71 | 72 | # next.js build output 73 | .next 74 | 75 | # nuxt.js build output 76 | .nuxt 77 | 78 | # vuepress build output 79 | .vuepress/dist 80 | 81 | # Serverless directories 82 | .serverless/ 83 | 84 | # FuseBox cache 85 | .fusebox/ 86 | 87 | # DynamoDB Local files 88 | .dynamodb/ -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Netflix Clone 2 | 3 | O projeto Netflix clone é educacional e foi desenvolvido como parte do curso online Bootstrap 4 - Curso Completo com 6 Projetos reais que será lançado em breve e usado na [playlist de Angular 8 no canal da Hcode no YouTube](https://www.youtube.com/playlist?list=PL-u8JWLN6xasUXsbNeDZSMQTq5T4_Utko). 4 | 5 |  -------------------------------------------------------------------------------- /assets/ai/lg.ai: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/ai/lg.ai -------------------------------------------------------------------------------- /assets/ai/md.ai: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/ai/md.ai -------------------------------------------------------------------------------- /assets/ai/sm.ai: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/ai/sm.ai -------------------------------------------------------------------------------- /assets/ai/xl.ai: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/ai/xl.ai -------------------------------------------------------------------------------- /assets/ai/xs.ai: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/ai/xs.ai -------------------------------------------------------------------------------- /assets/css/style.css: -------------------------------------------------------------------------------- 1 | body { 2 | background-color: #1B1B1B!important; 3 | padding-top: 60px; 4 | } 5 | .backdrop { 6 | background-color: rgba(0,0,0,.4); 7 | position: fixed; 8 | top: 60px; 9 | left: 0; 10 | right: 0; 11 | bottom: 0; 12 | z-index: 999; 13 | } 14 | .navbar { 15 | z-index: 1000; 16 | } 17 | .navbar.bg-dark { 18 | background-color: rgba(0,0,0,.6)!important; 19 | } 20 | .navbar .form-control { 21 | background-color: #1B1B1B!important; 22 | color: #FFF; 23 | border-color: #FFF; 24 | border-radius: 0; 25 | max-width: 115px; 26 | line-height: 28px; 27 | height: 28px; 28 | } 29 | .navbar img { 30 | height: 24px; 31 | } 32 | .navbar ul.sidebar { 33 | color: #999898; 34 | max-width: 250px; 35 | background-color: #1B1B1B!important; 36 | position: absolute; 37 | top: 60px; 38 | left: -250px; 39 | height: calc(100vh - 60px); 40 | overflow-y: auto; 41 | transition: all 0.1s ease-out; 42 | opacity: .5; 43 | } 44 | .navbar.sidebar-open ul { 45 | left: 0; 46 | opacity: 1; 47 | } 48 | .navbar ul li { 49 | padding: .3em 1em; 50 | } 51 | .navbar ul li.divider { 52 | border-bottom: #999898 1px solid; 53 | margin: .3em auto; 54 | } 55 | .navbar-dark .navbar-toggler { 56 | color: #FFF; 57 | border: none; 58 | padding-left: 0; 59 | padding-right: 0; 60 | } 61 | .media-avatar img { 62 | height: 38px; 63 | } 64 | .full-banner { 65 | background-image: url('../images/full-banner.jpg'); 66 | min-height: 120px; 67 | background-size: contain; 68 | background-repeat: no-repeat; 69 | background-position: right; 70 | } 71 | .full-banner small { 72 | color: #999898; 73 | } 74 | .full-banner .btn-primary { 75 | background-color: #E30F19; 76 | border-radius: 0; 77 | border: none; 78 | min-width: 100px; 79 | } 80 | .list-titles img { 81 | min-width: 160px; 82 | } 83 | h2 { 84 | color: #e5e5e5; 85 | } 86 | footer { 87 | color: #999898; 88 | } 89 | .title-item { 90 | position: relative; 91 | margin-right: 10px; 92 | } 93 | .title-item img { 94 | width: 100%; 95 | } 96 | .title-item video { 97 | width: 100%; 98 | display: none; 99 | position: absolute; 100 | top: 0; 101 | left: 0; 102 | } 103 | .title-item:hover .items { 104 | opacity: 1; 105 | } 106 | .title-item:hover img { 107 | opacity: 0; 108 | } 109 | .title-item:hover video { 110 | display: block; 111 | } 112 | .title-item .items { 113 | position: absolute; 114 | bottom: 0; 115 | left: 0; 116 | right: 0; 117 | color: #fff; 118 | height: 100%; 119 | padding: 10px; 120 | background: -prefix-linear-gradient(top, rgba(0,0,0,.1), rgba(0,0,0,.7)); 121 | background: linear-gradient(to bottom, rgba(0,0,0,.1), rgba(0,0,0,.7)); 122 | display: flex; 123 | align-items: flex-end; 124 | transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1); 125 | opacity: 0; 126 | } 127 | .title-item h2 { 128 | color: #fff; 129 | font-size: 20px; 130 | margin: 5px auto; 131 | } 132 | .title-item .btn-play { 133 | background: none; 134 | border: #fff 2px solid; 135 | border-radius: 16px; 136 | display: flex; 137 | justify-content: center; 138 | align-items: center; 139 | width: 32px; 140 | height: 32px; 141 | } 142 | .title-item .btn-play i { 143 | color: red; 144 | } 145 | .title-item ul { 146 | display: flex; 147 | flex-direction: row; 148 | justify-content: flex-start; 149 | list-style: none; 150 | padding: 0; 151 | margin: 0; 152 | } 153 | .title-item ul li { 154 | margin-right: 10px; 155 | } 156 | .relevance { 157 | color: #3FAD56; 158 | font-weight: bold; 159 | } 160 | .age { 161 | padding: 2px; 162 | font-weight: bold; 163 | display: flex; 164 | justify-content: center; 165 | align-items: center; 166 | width: 24px; 167 | font-size: 12px; 168 | height: 24px; 169 | border-radius: 2px; 170 | color: #FFF; 171 | } 172 | .age-free { 173 | background-color: rgb(0, 156, 76); 174 | } 175 | .age-free:before { 176 | content: 'L'; 177 | } 178 | .age-12 { 179 | background-color: #CDA521; 180 | color: #000; 181 | } 182 | .age-12:before { 183 | content: '12'; 184 | } 185 | .age-14 { 186 | background-color: rgb(231, 121, 43); 187 | } 188 | .age-14:before { 189 | content: '14'; 190 | } 191 | .age-16 { 192 | background-color: rgb(215, 38, 45); 193 | } 194 | .age-16:before { 195 | content: '16'; 196 | } 197 | .age-18 { 198 | background-color: rgb(19, 17, 17); 199 | } 200 | .age-18:before { 201 | content: '18'; 202 | } 203 | .parts { 204 | font-weight: bold; 205 | } 206 | @media (min-width: 576px) { 207 | .full-banner { 208 | min-height: 256px; 209 | } 210 | .navbar .form-control { 211 | max-width: 180px; 212 | } 213 | } 214 | @media (min-width: 768px) { 215 | .full-banner .d-flex { 216 | align-items: center; 217 | } 218 | } 219 | @media (min-width: 992px) { 220 | body { 221 | padding-top: 0; 222 | } 223 | .navbar.bg-dark { 224 | background-color: transparent!important; 225 | background-image: url('../images/header_gradient.png'); 226 | background-repeat: repeat-x; 227 | } 228 | .full-banner { 229 | min-height: 50vh; 230 | } 231 | .full-banner p { 232 | color: #999898; 233 | max-width: 50vw; 234 | } 235 | .navbar-brand.flex-grow-1 { 236 | flex-grow: initial!important; 237 | } 238 | .navbar ul.nav { 239 | flex-grow: 1!important; 240 | } 241 | .navbar ul.nav .active { 242 | color: #E30F19!important; 243 | font-weight: bold; 244 | } 245 | .navbar img { 246 | height: 34px; 247 | } 248 | } 249 | @media (min-width: 1200px) { 250 | .navbar ul.nav li { 251 | padding: 0; 252 | } 253 | .navbar ul.nav { 254 | color: rgba(255, 255, 255, .5)!important; 255 | } 256 | .navbar ul.nav .active { 257 | color: rgba(255, 255, 255, 1)!important; 258 | font-weight: bold; 259 | } 260 | } -------------------------------------------------------------------------------- /assets/images/avatar.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/images/avatar.jpg -------------------------------------------------------------------------------- /assets/images/better-call-saul.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/images/better-call-saul.jpg -------------------------------------------------------------------------------- /assets/images/capitao-america-o-primeiro-vingador.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/images/capitao-america-o-primeiro-vingador.jpg -------------------------------------------------------------------------------- /assets/images/eu-sou-a-lenda.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/images/eu-sou-a-lenda.jpg -------------------------------------------------------------------------------- /assets/images/full-banner.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/images/full-banner.jpg -------------------------------------------------------------------------------- /assets/images/greys-anatomy.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/images/greys-anatomy.jpg -------------------------------------------------------------------------------- /assets/images/guardios-da-galaxia-banner.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/images/guardios-da-galaxia-banner.webp -------------------------------------------------------------------------------- /assets/images/guardios-da-galaxia.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/images/guardios-da-galaxia.jpg -------------------------------------------------------------------------------- /assets/images/hamburger.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/images/hamburger.gif -------------------------------------------------------------------------------- /assets/images/header_gradient.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/images/header_gradient.png -------------------------------------------------------------------------------- /assets/images/homem-de-ferro-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/images/homem-de-ferro-2.jpg -------------------------------------------------------------------------------- /assets/images/homem-de-ferro.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/images/homem-de-ferro.jpg -------------------------------------------------------------------------------- /assets/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/images/logo.png -------------------------------------------------------------------------------- /assets/images/nosso-planeta.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/images/nosso-planeta.jpg -------------------------------------------------------------------------------- /assets/images/o-menino-que-descobriu-o-vento.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/images/o-menino-que-descobriu-o-vento.jpg -------------------------------------------------------------------------------- /assets/images/the-rain.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/images/the-rain.jpg -------------------------------------------------------------------------------- /assets/images/thor-o-mundo-sombrio.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/images/thor-o-mundo-sombrio.jpg -------------------------------------------------------------------------------- /assets/images/vingadores-era-de-ultron.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/images/vingadores-era-de-ultron.jpg -------------------------------------------------------------------------------- /assets/package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "requires": true, 3 | "lockfileVersion": 1, 4 | "dependencies": { 5 | "bootstrap": { 6 | "version": "4.3.1", 7 | "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-4.3.1.tgz", 8 | "integrity": "sha512-rXqOmH1VilAt2DyPzluTi2blhk17bO7ef+zLLPlWvG494pDxcM234pJ8wTc/6R40UWizAIIMgxjvxZg5kmsbag==" 9 | }, 10 | "jquery": { 11 | "version": "3.4.1", 12 | "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.4.1.tgz", 13 | "integrity": "sha512-36+AdBzCL+y6qjw5Tx7HgzeGCzC81MDDgaUP8ld2zhx58HdqXGoBd+tHdrBMiyjGQs0Hxs/MLZTu/eHNJJuWPw==" 14 | } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /assets/videos/Iron Man 2 Official Trailer #1 (2010) - Marvel Movie HD.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/videos/Iron Man 2 Official Trailer #1 (2010) - Marvel Movie HD.mp4 -------------------------------------------------------------------------------- /assets/videos/capitao_america_guerra_civil_1080p.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/videos/capitao_america_guerra_civil_1080p.mp4 -------------------------------------------------------------------------------- /assets/videos/capitao_america_o_primeiro_vingador_trailer__360p.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/videos/capitao_america_o_primeiro_vingador_trailer__360p.mp4 -------------------------------------------------------------------------------- /assets/videos/homem_de_ferro_3_trailer_oficial_1080p.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/videos/homem_de_ferro_3_trailer_oficial_1080p.mp4 -------------------------------------------------------------------------------- /assets/videos/trailer_guardioes_da_galaxia_1080p.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/assets/videos/trailer_guardioes_da_galaxia_1080p.mp4 -------------------------------------------------------------------------------- /favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hcodebr/netflix-layout-clone/5ae8c01a9e84345f4af1590b68fbf2bfdcc0a6a4/favicon.ico -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | 5 | 6 | 7 |