This comprehensive guide will walk you through the entire setup process, from installation to deployment.
Before you begin, ensure you have the following installed on your system:
| Software | Minimum Version | Download Link | Purpose |
|---|---|---|---|
| Node.js (Optional) | v14.0.0+ | nodejs.org | JavaScript runtime (for dev tools) |
| Git | v2.0+ | git-scm.com | Version control |
| Code Editor | Any | VS Code (recommended) | Development |
| Modern Browser | Latest | Chrome, Firefox, Safari, or Edge | Testing |
- Live Server (VS Code Extension) β Best for development
- Prettier β Code formatting
- ESLint β JavaScript linting
- GitLens β Enhanced Git integration
You'll need a free TMDB API key to fetch movie data.
- Create an account at themoviedb.org
- Verify your email address
- Navigate to Settings β API
- Request an API key (choose "Developer" option)
- Fill out the application form (you can use placeholder URLs for a personal project)
- Copy your API key once approved (usually instant)
# Using HTTPS
git clone https://github.com/mujeebdev3/NetflixClone.git
# Navigate into the project directory
cd netflix-cloneAfter cloning, your directory should look like this:
netflix-clone/
βββ index.html
βββ css/
βββ js/
βββ pages/
βββ assets/
βββ docs/
βββ README.md
If you want to use advanced development tools:
# Initialize npm (optional)
npm init -y
# Install development dependencies (optional)
npm install --save-dev http-serverNote: This project uses vanilla JavaScript with no build process, so npm is optional. You can skip this step if you're using Live Server or Python's HTTP server.
-
Install Live Server Extension
- Open VS Code
- Go to Extensions (Ctrl+Shift+X / Cmd+Shift+X)
- Search for "Live Server"
- Install by Ritwick Dey
-
Start the Server
- Right-click on
index.html - Select "Open with Live Server"
- Your browser will automatically open at
http://localhost:5500
- Right-click on
-
Auto-Reload
- Any changes you make will automatically reload the page
Python 3:
python -m http.server 8000Python 2:
python -m SimpleHTTPServer 8000Then open http://localhost:8000 in your browser.
# Install http-server globally (one-time)
npm install -g http-server
# Run the server
http-server -p 8000
# Or use npx (no installation needed)
npx http-server -p 8000Then open http://localhost:8000 in your browser.
php -S localhost:8000Then open http://localhost:8000 in your browser.
Symptoms:
- Broken image icons
- Alt text showing instead of images
Solutions:
- Check your internet connection
- Verify API key is working
- Check browser console for specific errors
- Clear browser cache (Ctrl+Shift+R / Cmd+Shift+R)
Symptoms:
- Right-click menu doesn't show "Open with Live Server"
- Server won't start
Solutions:
- Ensure Live Server extension is installed and enabled
- Restart VS Code
- Check if another process is using port 5500
- Try a different port in Live Server settings
# Create a new feature branch
git checkout -b feature/movie-search
# Make changes and commit
git add .
git commit -m "feat: add movie search functionality"
# Push to remote
git push origin feature/movie-search
# Create pull request on GitHubFollow Conventional Commits:
feat: add new feature
fix: bug fix
docs: documentation changes
style: formatting, missing semicolons, etc.
refactor: code restructuring
test: adding tests
chore: maintenance tasks
feature/feature-name # New features
bugfix/issue-description # Bug fixes
hotfix/critical-bug # Urgent fixes
docs/documentation-update # Documentation
Before submitting a PR, ensure:
- Code follows BEM naming convention (CSS)
- ES6+ syntax used consistently
- No console.log statements in production code
- Comments added for complex logic
- Tested in Chrome, Firefox, and Safari
- Responsive design verified on mobile
- Accessibility tested with keyboard navigation
- No ESLint errors or warnings
- Documentation updated (if needed)
- JavaScript.info β Modern JavaScript tutorial
- CSS-Tricks β CSS techniques and guides
- Web.dev β Web development best practices
- π Read the README.md for project overview
- π Check existing issues
- π¬ Start a discussion
Happy Coding! π