Prerequisites
Before diving into building the ML Store, let’s ensure you have everything you need to succeed. This page covers the required tools, recommended knowledge, and helpful resources.Required Software
You’ll need the following tools installed on your computer:Node.js
Version 18 or higherNode.js provides the runtime environment and npm (package manager) needed to run the development tools.Download Node.js
Code Editor
VS Code RecommendedA modern code editor with TypeScript support. Visual Studio Code is free and has excellent TypeScript integration.Download VS Code
Web Browser
Modern Browser with DevToolsChrome, Firefox, Edge, or Safari. You’ll use the browser’s developer tools extensively.
Terminal
Command Line InterfaceBuilt into VS Code or use your system’s terminal (Terminal on Mac/Linux, Command Prompt/PowerShell on Windows).
Verifying Your Installation
Check that Node.js and npm are installed correctly:Terminal
Recommended VS Code Extensions
These extensions will significantly improve your development experience:Essential Extensions
Essential Extensions
TypeScript and JavaScript
- ESLint - Identifies and fixes code quality issues
- Prettier - Automatic code formatting
- JavaScript (ES6) code snippets - Quick code snippets
HTML and CSS
- HTML CSS Support - IntelliSense for CSS class names in HTML
- Auto Rename Tag - Automatically rename paired HTML tags
- CSS Peek - Jump to CSS definitions
Development Tools
- Live Server - Launch a local development server (though we’ll use Vite)
- Path Intellisense - Auto-completes file paths
- Better Comments - Colorizes comments for better readability
Required Knowledge
Basic Understanding Required
You should have a basic familiarity with:HTML Basics
- What HTML is and how it structures web pages
- Basic tags like
<div>,<p>,<h1>,<a>,<img> - How to create a simple HTML file
Don’t worry if you’re not an expert! The tutorial includes extensive explanations of all HTML concepts.
CSS Fundamentals
- How CSS adds styling to HTML
- Basic selectors (classes, IDs, elements)
- Common properties like
color,font-size,margin,padding
We’ll cover advanced CSS concepts like Flexbox and Grid from scratch.
Nice to Have (But Not Required)
These will help but aren’t essential - we’ll teach them:- ✨ TypeScript syntax (we explain all TypeScript features used)
- ✨ API concepts (we cover HTTP requests and REST APIs)
- ✨ Module systems (we explain imports/exports)
- ✨ Build tools (Vite is pre-configured)
Helpful Background Concepts
Understanding the Web
A basic understanding of how the web works will help:Client-Server Model
Client-Server Model
- Client: Your web browser that displays the website
- Server: Remote computer that sends data (like product information)
- HTTP: Protocol for communication between client and server
- The browser (client) runs your HTML/CSS/TypeScript code
- The Platzi API (server) provides product data
- We use the Fetch API to request data via HTTP
Browser Developer Tools
Browser Developer Tools
Modern browsers include powerful tools for web development:
- Elements/Inspector: View and edit HTML/CSS in real-time
- Console: See JavaScript logs and errors
- Network: Monitor API requests and responses
- Sources/Debugger: Debug JavaScript code
Package Managers
Package Managers
npm (Node Package Manager) helps manage project dependencies:All commands needed for this project are in
package.json.Project Dependencies
The tutorial uses minimal dependencies:package.json
Only 2 dependencies! This keeps the project simple and focused on fundamentals.
Why These Tools?
Vite
Lightning-Fast Development
- Instant hot module replacement (HMR)
- Optimized production builds
- Native ES modules support
- Zero configuration needed
TypeScript
Type Safety & Better DX
- Catch errors before runtime
- Excellent IDE autocomplete
- Self-documenting code with types
- Compiles to standard JavaScript
System Requirements
- Windows
- macOS
- Linux
- OS: Windows 10 or 11
- RAM: 4GB minimum (8GB recommended)
- Storage: 500MB for project + dependencies
- Terminal: PowerShell or Command Prompt
Internet Connection
Learning Resources
If you need to brush up on fundamentals, these resources are excellent:JavaScript
TypeScript
Pre-Tutorial Checklist
Before moving to the setup page, ensure you have:All set? Great! You’re ready to start building.
Need Help?
If you’re stuck with any prerequisites:Installation Issues
Check the official docs:
Concept Questions
- MDN Web Docs - Comprehensive reference
- Stack Overflow - Community Q&A
TypeScript Help
Continue to Setup
Ready to start? Let’s set up your development environment and run the project!