| title | Frontend & AI Agent YouTube Series — Master Checklist |
|---|---|
| description | All topic checklists organized by series, for video/short planning |
- Core Language & Markup
- React
- Performance & Optimization
- Browser & Security Internals
- Networking & Backend-Adjacent
- Coding & Machine Coding Practice
- System Design
- Interview Prep & Patterns
- Tooling & Process
- AI Agents
- What You Might Have Missed
- Understand scope
- Closures
- Hoisting
- Event loop
- Call stack
- Promises
- Async/await
- Debounce
- Throttle
- Higher-order functions
- Map/filter/reduce
- Currying
- Prototypes
thiskeyword- Bind/call/apply
- Shallow vs deep copy
- Event delegation
- Memoization
- Generators
- Modules (ESM)
- Destructuring
- Spread/rest operators
- Optional chaining
- Nullish coalescing
- Web API
- Type annotations
- Primitive types
- Arrays and tuples
- Union types
- Intersection types
- Literal types
- Type aliases
- Interfaces
- Optional properties
- Readonly properties
- Enums
- Any vs unknown
- Void and never
- Type assertions
- Functions with types
- Optional parameters
- Default parameters
- Rest parameters
- Generics basics
- Generic constraints
- Utility types — Partial
- Utility types — Pick
- Utility types — Omit
- Utility types — Record
- Utility types — Required
- Utility types — Readonly
keyofoperatortypeofoperatorextendskeyword- Conditional types
- Mapped types
- Type guards
- Custom type guards
- Discriminated unions
- Classes with TypeScript
- Abstract classes
- Access modifiers
- Declaration files (.d.ts)
- Module augmentation
- TS config optimization
- Strict mode
inferkeyword- Template literal types
- Advanced generics
- Common TypeScript interview questions
- HTML document structure
- Semantic HTML
- Head vs body
- Meta tags
- SEO basics
- Heading hierarchy (h1–h6)
- Text elements
- Lists (ul, ol, dl)
- Links and navigation
- Images and alt text
- Audio tag
- Video tag
- Tables
- Forms basics
- Input types
- Labels and accessibility
- Validation attributes
- Button types
- Iframes
- Data attributes
- Block vs inline elements
- Div vs span
- HTML entities
- Accessibility basics (ARIA)
- Lazy loading images
- Responsive images (picture, srcset)
- Preload resources
- Favicon setup
- Open Graph meta tags
- Canonical tags
- Local storage basics
- Session storage basics
- Drag and drop API
- Web Workers basics
- Canvas basics
- SVG basics
- Geolocation API
- Browser storage APIs
- Web Components basics
- Common HTML interview questions
- Selectors
- Specificity
- Box model
- Display properties
- Positioning
- Flexbox
- Grid
- Units (px/rem/em/vw)
- Responsive design
- Media queries
- Pseudo classes
- Pseudo elements
- Transitions
- Animations
- Transform
- Variables
- Custom properties
- z-index
- Overflow
- Modern layouts
clamp()- Container queries
- CSS functions
- Accessibility styles
- Performance optimization
- JSX basics
- Components
- Props
- State
- Event handling
- Conditional rendering
- Lists + keys
useState()useEffect()useRef()useMemo()useCallback()memo()- Context API
- Custom hooks
- Controlled forms
- Lifting state up
- Prop drilling solutions
- Error boundaries
- Lazy loading
- Suspense
- Code splitting
- React Router
- State management
- Performance optimization
- Local state
- Lift state up
- Context API
- Reducers
- Global state
- State normalization
- Derived state
- Server state
- Optimistic updates
- Caching strategy
- Lazy load images
- Use WebP / AVIF images
- Compress images before upload
- Responsive images (srcset)
- Minify CSS, JS, HTML
- Enable Gzip/Brotli compression
- Code splitting
- Route-based lazy loading
- Tree shaking (remove unused code)
- Remove unused CSS
- Reduce bundle size
- Use CDN
- Cache static assets
- Cache API responses
- Preload critical resources
- Prefetch future resources
- Preconnect third-party domains
- Avoid render-blocking resources
- Inline critical CSS
- Use async / defer scripts
- Debounce search/API calls
- Throttle scroll/resize events
- Virtualize large lists
- Pagination or infinite scrolling
- Avoid unnecessary re-renders
- Use
memo()carefully - Use
useMemo()carefully - Use
useCallback()carefully - Reduce DOM size
- Optimize animations (transform, opacity)
- Use CSS animations over JS when possible
- Avoid layout thrashing
- Reduce expensive calculations
- Web Workers for heavy tasks
- Optimize fonts
- Preload fonts
- Use
font-display: swap - Reduce third-party scripts
- Reduce API requests
- Use skeleton loaders
- Server-side rendering (SSR) when useful
- Static site generation (SSG) when useful
- Use Edge caching
- Measure Core Web Vitals
- Profile with Google Lighthouse
- Analyze using Chrome DevTools
- Measure before optimizing
- Minify CSS, JS, HTML
- Tree shaking (remove unused code)
- Code splitting
- Route-based lazy loading
- Dynamic imports
- Reduce bundle size
- Remove unused dependencies
- Import only what you use
- Replace heavy libraries with lighter alternatives
- Analyze bundle size regularly
- Compress images before upload
- Use WebP / AVIF images
- Responsive images (srcset)
- Lazy load images
- Optimize SVGs
- Inline small SVG/icons
- Optimize videos before upload
- Stream videos instead of loading fully
- Optimize fonts
- Use
font-display: swap - Preload fonts
- Use variable fonts when possible
- Remove unused CSS
- Purge utility CSS in production
- Inline critical CSS
- Avoid render-blocking assets
- Use async/defer scripts
- Enable Gzip/Brotli compression
- Cache static assets
- Use CDN
- Preconnect third-party domains
- Prefetch future resources
- Preload critical resources
- Reduce third-party scripts
- Reduce API payload size
- Use Edge caching
- Measure with bundle analyzer
- Test with Lighthouse
- Profile using DevTools
- Measure before optimizing
Note: Sections 3.1 and 3.2 overlap heavily (images, fonts, CDN, caching, compression, "measure before optimizing"). Consider merging into a single "Performance & Optimization" series with two angles — runtime performance (3.1) and build/bundle performance (3.2) — to avoid duplicate videos.
- Critical rendering path
- DOM tree
- CSSOM
- Render tree
- Reflow vs repaint
- Browser storage
- Cookies
- LocalStorage
- SessionStorage
- IndexedDB
- Event loop
- Microtask vs macrotask
- Garbage collection
- Web Workers
- Service Workers
- CORS
- Same-origin policy
- Browser caching
- Hydration
- XSS
- CSRF
- CORS
- Content Security Policy
- JWT storage
- Cookie security flags
- HTTPS
- Input sanitization
- Rate limiting basics
- API key exposure mistakes
- Avoid
dangerouslySetInnerHTML - Dependency vulnerabilities
- REST basics
- HTTP methods
- Status codes
- Headers
- Query params
- Authentication
- Authorization
- JWT
- Refresh tokens
- GraphQL basics
- WebSockets
- Polling
- SSE
- Retry mechanism
- Request cancellation
- Optimistic updates
- API caching
- Polyfill
map() - Polyfill
filter() - Polyfill
reduce() - Polyfill
forEach() - Polyfill
find() - Polyfill
some() - Polyfill
every() - Polyfill
flat() - Polyfill
flatMap() - Polyfill
bind() - Polyfill
call() - Polyfill
apply() - Polyfill
Object.create() - Polyfill
Promise.all() - Polyfill
Promise.allSettled() - Polyfill
Promise.race() - Polyfill
Promise.any() - Polyfill
debounce() - Polyfill
throttle() - Polyfill
once() - Polyfill
memoize() - Polyfill
curry() - Polyfill
pipe() - Polyfill
compose() - Polyfill
Array.from()
- Array flattening
- Deep clone object
- Nested object flattening
- Debounce implementation
- Throttle implementation
- Currying function
- Memoization function
- Promise chaining implementation
- Promise pool (limit concurrency)
- Event emitter implementation
- LRU cache implementation
- Infinite currying (
sum(1)(2)(3)) - Group array by property
- Remove duplicates from array
- Find missing number
- First non-repeating character
- Anagram checker
- Frequency counter pattern
- Two sum problem
- Merge intervals
- Rotate array
- Move zeros to end
- Deep object comparison
- Implement
JSON.stringify()(basic) - Retry failed API requests
- Nested comments tree build
- Virtual DOM (basic implementation)
- Custom
setTimeout() - Custom Promise implementation
- Async task scheduler
- Todo app
- Accordion
- Modal / Popup
- Tabs component
- Dropdown / Select
- Multi-select dropdown
- Search autocomplete
- Debounced search
- Infinite scrolling
- Pagination component
- Image carousel
- Image slider with autoplay
- Star rating component
- Progress bar
- Toast notification system
- Snackbar system
- OTP input component
- Password strength checker
- Form validation system
- Dynamic form builder
- File upload component
- Drag & drop upload
- Kanban board
- Nested comments system
- Chat UI
- Live typing indicator
- Poll component
- Quiz application
- Stopwatch
- Countdown timer
- Digital clock
- Calculator
- Memory game
- Tic-Tac-Toe
- Snake game
- Expense tracker
- Weather dashboard
- E-commerce product listing
- Shopping cart
- Mini dashboard with charts
- Theme switcher (dark/light)
- Sidebar navigation
- Breadcrumb component
- Stepper component
- Data table with sorting/filtering
- Virtualized list
- Folder explorer
- File explorer
- Code editor (basic)
- URL shortener UI
Pull these forward in your upload schedule — they convert best for interview-prep audiences:
- Search autocomplete
- Nested comments
- Infinite scroll
- File explorer
- Kanban board
- Data table
- Toast system
- Virtualized list
- Debounced search
- Shopping cart
Note: "File explorer" and "Folder explorer" in 6.3 are effectively the same build — merge into one video unless you want to differentiate (read-only viewer vs. full CRUD explorer).
- Requirement gathering
- Component architecture
- Folder structure
- State management
- API layer
- Authentication
- Pagination
- Caching
- Error handling
- Loading states
- Search optimization
- Performance optimization
- Code splitting
- SSR vs CSR
- SSG
- Accessibility
- Logging
- Analytics
- Monitoring
- Deployment
Use 7.1 as the framework and apply it to each of these as a worked example:
- Design YouTube
- Design Netflix
- Design WhatsApp Web
- Design Google Docs
- Design Instagram feed
- Design URL shortener
- Design notification system
- Design chat app
- Design autocomplete system
- Design analytics dashboard
- HTML basics
- CSS box model
- Flexbox
- Grid
- Positioning
- Specificity
- Event bubbling
- Event capturing
- Closures
- Hoisting
- Event loop
- Promise chain
- Async/await
- Debounce vs throttle
- Shallow vs deep copy
- call/apply/bind
- Polyfills
- DOM manipulation
- Virtual DOM
- React lifecycle
- Hooks
- Memoization
- Browser rendering process
- CORS
- System design basics
Note: This list is essentially a "best of" rollup of sections 1.1, 1.4, 4.1, and 7.1 — good as a single capstone/recap video or a rapid-fire short series rather than 25 new long-form videos.
- Singleton
- Factory
- Observer
- Pub/Sub
- Module pattern
- Adapter
- Strategy
- Builder
- Decorator
- Proxy
- init
- clone
- add
- commit
- push
- pull
- fetch
- branch
- merge
- rebase
- stash
- cherry-pick
- reset
- revert
- squash commits
- resolve conflicts
- Unit testing
- Integration testing
- E2E testing
- Mocking
- Test coverage
- Snapshot testing
- Async testing
- API testing
- Component testing
- User event testing
- What is an AI agent?
- Agent vs workflow
- Agent architecture basics
- LLM fundamentals
- Prompt engineering basics
- System vs user prompts
- Context windows
- Memory concepts
- Short-term memory
- Long-term memory
- Retrieval-Augmented Generation (RAG)
- Embeddings basics
- Vector databases
- Chunking strategies
- Similarity search
- Tool calling basics
- Function calling
- Structured outputs
- Agent planning
- ReAct pattern
- Single-agent systems
- Multi-agent systems
- Agent orchestration
- State management for agents
- Conversation history handling
- Token optimization
- Streaming responses
- Guardrails and validation
- Hallucination handling
- Error handling and retries
- Agent evaluation
- Human-in-the-loop workflows
- Agent observability/logging
- Web search integration
- Browser automation
- File processing
- Memory storage (DB)
- Authentication for tools/APIs
- Rate limiting
- Caching responses
- Async task execution
- Background jobs
- Multi-step workflows
- AI agent security
- Cost optimization
- Deploying AI agents
- Monitoring production agents
- Testing AI agents
- Measure before optimizing
- Build a complete AI agent project
- PDF chat app
- Resume analyzer
- AI coding assistant
- Research agent
- Email assistant
- Meeting summarizer
- Travel planner agent
- Customer support agent
- Multi-agent system
- Autonomous browser agent
- AI Agent in 50 Days
- Stop Calling Everything an AI Agent
- AI Agents Roadmap for Developers
- Build Real AI Agents, Not Chatbots 🚀
Gaps spotted relative to what a complete "frontend + AI agent creator" series usually covers:
Build tools & dev environment
- Webpack / Vite / esbuild / Rspack basics
- ESLint + Prettier setup
- Monorepos (Turborepo/Nx)
- Module bundler internals (how bundlers actually work)
- Environment variables &
.envmanagement
Next.js / meta-frameworks (you cover SSR/SSG concepts but no dedicated framework checklist)
- Next.js App Router fundamentals
- Server components vs client components
- Middleware
- API routes / route handlers
- Image/font optimization in Next.js
- Remix or Astro as an alternative-framework comparison video
Accessibility (a11y) as its own series (currently scattered as single line items)
- Keyboard navigation
- Screen reader testing
- Focus management
- Color contrast tools
- WCAG levels (A/AA/AAA)
Mobile / cross-platform
- Responsive vs adaptive design
- PWA basics (manifest, service worker, installability)
- React Native basics (if you ever go cross-platform)
Soft/career content (high search demand, easy to produce)
- How to read a frontend job description
- Portfolio project ideas
- Resume tips for frontend devs
- Mock interview / behavioral round prep
- Open source contribution guide
Deployment & DevOps for frontend
- Vercel/Netlify/Cloudflare Pages deployment
- CI/CD basics (GitHub Actions)
- Environment-based deployments (staging/prod)
- Docker basics for frontend devs
Data viz (you have "mini dashboard with charts" but no dedicated checklist)
- Chart libraries (Recharts/Chart.js/D3 overview)
- When to use canvas vs SVG for charts
AI agent series gaps
- Choosing an LLM provider / model comparison
- Local LLM basics (Ollama, etc.)
- Agent frameworks comparison (LangChain, LlamaIndex, CrewAI, AI SDK)
- Voice agents / speech-to-text integration
- Agent pricing/cost calculator project
Misc cross-cutting topics
- Internationalization (i18n) / localization (l10n)
- Dark mode implementation patterns (beyond "theme switcher")
- Error monitoring tools (Sentry, etc.) — ties into Logging/Monitoring items already listed
- Web Components in production (you have "basics" — a follow-up "real-world usage" video could work)
Tip: Sections 3.1/3.2, 7.1/8.1, and the explorer/folder-explorer items in 6.3 have meaningful overlap — consolidating those could save you 10–15 video slots across the whole roadmap.