[
  {
    "id": "html-foundations",
    "title": "HTML Foundations for Thoughtful Interfaces",
    "category": "Web Development",
    "level": "Beginner",
    "duration": 10,
    "price": 49,
    "tags": ["HTML", "Semantics", "Structure"],
    "description": "Build inclusive, semantic pages from the ground up. Learn landmarks, headings, forms, and meaningful document flow.",
    "syllabus": ["Document outline", "Landmarks", "Forms and labels", "Tables for data", "Metadata and SEO basics"],
    "rating": 4.8,
    "popularity": 3100,
    "image": "./images/html-foundations.png"
  },
  {
    "id": "css-comfort",
    "title": "CSS Comfort: Layouts without the Stress",
    "category": "Web Development",
    "level": "Beginner",
    "duration": 14,
    "price": 79,
    "tags": ["CSS", "Flexbox", "Grid", "Responsive"],
    "description": "Master the essentials of layout with Flexbox and Grid, craft fluid spacing, and design with accessible contrast.",
    "syllabus": ["Cascade & specificity", "Flexbox patterns", "Grid templates", "Responsive units", "Color contrast"],
    "rating": 4.7,
    "popularity": 2800,
    "image": "./images/css-comfort.png"
  },
  {
    "id": "js-essentials",
    "title": "JavaScript Essentials with Empathy",
    "category": "Programming",
    "level": "Beginner",
    "duration": 16,
    "price": 99,
    "tags": ["JavaScript", "ES6", "DOM"],
    "description": "A clear path through variables, functions, arrays, objects, and the DOM with gentle practice and feedback.",
    "syllabus": ["Syntax and types", "Functions", "Arrays and objects", "DOM basics", "Modules and tooling"],
    "rating": 4.7,
    "popularity": 5200,
    "image": "./images/js-essentials.png"
  },
  {
    "id": "typescript-basics",
    "title": "TypeScript Basics for Safer Code",
    "category": "Programming",
    "level": "Intermediate",
    "duration": 12,
    "price": 89,
    "tags": ["TypeScript", "Types", "Tooling"],
    "description": "Adopt TypeScript calmly: from type annotations to generics and narrowing. Learn patterns that scale without friction.",
    "syllabus": ["Type system tour", "Functions and generics", "Narrowing", "Interfaces & types", "Config and tooling"],
    "rating": 4.6,
    "popularity": 2600,
    "image": "./images/typescript-basics.png"
  },
  {
    "id": "react-gentle",
    "title": "React, Gently: Components to Confidence",
    "category": "Frontend",
    "level": "Intermediate",
    "duration": 18,
    "price": 129,
    "tags": ["React", "Hooks", "State"],
    "description": "Understand React with composable patterns, hooks, and state that stays readable. Build accessible interactive views.",
    "syllabus": ["Thinking in components", "Hooks essentials", "State and effects", "Accessibility in React", "Routing basics"],
    "rating": 4.7,
    "popularity": 4700,
    "image": "./images/react-gently.png"
  },
  {
    "id": "node-express-api",
    "title": "Node & Express: Kind APIs",
    "category": "Backend",
    "level": "Intermediate",
    "duration": 16,
    "price": 119,
    "tags": ["Node.js", "Express", "API"],
    "description": "Create reliable REST APIs with Express, validation, testing, and documentation that welcomes collaborators.",
    "syllabus": ["Express core", "Routing and controllers", "Validation", "Testing with Jest", "OpenAPI docs"],
    "rating": 4.6,
    "popularity": 3500,
    "image": "./images/node-express.png"
  },
  {
    "id": "python-101",
    "title": "Python 101: A Gentle Start",
    "category": "Programming",
    "level": "Beginner",
    "duration": 15,
    "price": 99,
    "tags": ["Python", "Basics", "Scripting"],
    "description": "From variables to scripts and files, learn Python with examples that make daily tasks easier.",
    "syllabus": ["Syntax and data types", "Control flow", "Functions", "Files and modules", "Virtualenvs"],
    "rating": 4.8,
    "popularity": 6000,
    "image": "./images/python-101.png"
  },
  {
    "id": "data-cleaning",
    "title": "Data Cleaning with Pandas",
    "category": "Data",
    "level": "Intermediate",
    "duration": 12,
    "price": 109,
    "tags": ["Pandas", "Data", "CSV"],
    "description": "Load, inspect, and tidy real-world datasets with Pandas. Build reliable pipelines and clear exploratory notebooks.",
    "syllabus": ["Series and DataFrame", "Missing values", "Transforms", "Joins and reshaping", "Pipelines"],
    "rating": 4.6,
    "popularity": 2900,
    "image": "./images/data-cleaning.png"
  },
  {
    "id": "ml-intro",
    "title": "Machine Learning Intro for Developers",
    "category": "Data",
    "level": "Intermediate",
    "duration": 20,
    "price": 149,
    "tags": ["ML", "Scikit-learn"],
    "description": "Demystify models, metrics, and validation. Build intuition with hands-on notebooks and honest evaluation.",
    "syllabus": ["Supervised learning", "Validation splits", "Metrics", "Feature engineering", "Overfitting and bias"],
    "rating": 4.5,
    "popularity": 2400,
    "image": "./images/ml-intro.png"
  },
  {
    "id": "algorithms-kind",
    "title": "Algorithms at a Kind Pace",
    "category": "Computer Science",
    "level": "Intermediate",
    "duration": 14,
    "price": 119,
    "tags": ["Algorithms", "Data Structures"],
    "description": "Build problem-solving confidence with friendly walkthroughs of graphs, trees, sorting, and complexity basics.",
    "syllabus": ["Complexity", "Arrays & linked lists", "Trees & graphs", "Sorting & searching", "Practice sets"],
    "rating": 4.6,
    "popularity": 2200,
    "image": "./images/algorithms-kind.png"
  },
  {
    "id": "clean-code",
    "title": "Clean Code Habits for Everyday Work",
    "category": "Software Craft",
    "level": "Intermediate",
    "duration": 10,
    "price": 89,
    "tags": ["Refactoring", "Naming", "Testing"],
    "description": "Adopt small, steady refactors and naming that clarifies intent. Improve readability without heroics.",
    "syllabus": ["Naming patterns", "Function design", "Refactoring steps", "Code smells", "Tests as design"],
    "rating": 4.7,
    "popularity": 4100,
    "image": "./images/clean-code.png"
  },
  {
    "id": "testing-jest",
    "title": "Testing with Jest and Confidence",
    "category": "Quality",
    "level": "Intermediate",
    "duration": 11,
    "price": 89,
    "tags": ["Testing", "Jest", "TDD"],
    "description": "Write dependable unit tests with clear boundaries, helpful assertions, and practical mocks.",
    "syllabus": ["Test mindset", "Arrange-Act-Assert", "Mocking", "Async tests", "Coverage and limits"],
    "rating": 4.6,
    "popularity": 3000,
    "image": "./images/testing-jest.png"
  },
  {
    "id": "accessibility-web",
    "title": "Web Accessibility by Default",
    "category": "Frontend",
    "level": "Intermediate",
    "duration": 12,
    "price": 99,
    "tags": ["a11y", "WCAG", "ARIA"],
    "description": "Design and code inclusive interfaces. Learn semantics, focus flow, ARIA, and practical audits.",
    "syllabus": ["WCAG overview", "Semantics", "Keyboard flow", "ARIA live regions", "Audit checklist"],
    "rating": 4.8,
    "popularity": 3300,
    "image": "./images/accessibility-web.png"
  },
  {
    "id": "devops-journey",
    "title": "DevOps Journey: CI/CD without Drama",
    "category": "DevOps",
    "level": "Intermediate",
    "duration": 16,
    "price": 129,
    "tags": ["CI/CD", "Pipelines", "GitHub Actions"],
    "description": "Automate builds and tests with pipelines that are readable and resilient. Ship calmly and often.",
    "syllabus": ["Pipeline design", "Caching & matrix", "Artifacts", "Security basics", "Rollbacks"],
    "rating": 4.5,
    "popularity": 2700,
    "image": "./images/devops-journey.png"
  },
  {
    "id": "docker-k8s",
    "title": "Docker & Kubernetes: Friendly Foundations",
    "category": "DevOps",
    "level": "Intermediate",
    "duration": 18,
    "price": 139,
    "tags": ["Docker", "Kubernetes"],
    "description": "Containerize apps and deploy to a simple Kubernetes cluster. Learn the minimum you need to be effective.",
    "syllabus": ["Images and layers", "Compose", "K8s objects", "Deployments & services", "Observability"],
    "rating": 4.6,
    "popularity": 2500,
    "image": "./images/docker-k8s.png"
  },
  {
    "id": "cloud-aws",
    "title": "Cloud on AWS: Calm Beginnings",
    "category": "Cloud",
    "level": "Beginner",
    "duration": 12,
    "price": 109,
    "tags": ["AWS", "Cloud"],
    "description": "Understand core AWS services—compute, storage, and networking—with a focus on clear mental models.",
    "syllabus": ["IAM basics", "EC2 & S3", "VPC mental model", "Serverless intro", "Cost awareness"],
    "rating": 4.5,
    "popularity": 2100,
    "image": "./images/cloud-aws.png"
  },
  {
    "id": "security-essentials",
    "title": "Security Essentials for Developers",
    "category": "Security",
    "level": "Intermediate",
    "duration": 10,
    "price": 99,
    "tags": ["Security", "OWASP"],
    "description": "Protect your apps with everyday security habits: input validation, secrets handling, and safe dependencies.",
    "syllabus": ["Threat basics", "OWASP Top 10", "Secrets management", "Dependency hygiene", "Auth patterns"],
    "rating": 4.6,
    "popularity": 2300,
    "image": "./images/security-essentials.png"
  },
  {
    "id": "graphql-api",
    "title": "GraphQL APIs with Care",
    "category": "Backend",
    "level": "Intermediate",
    "duration": 12,
    "price": 119,
    "tags": ["GraphQL", "API"],
    "description": "Design friendly schemas, resolvers, and error shapes. Add caching and pagination without surprises.",
    "syllabus": ["Schema design", "Resolvers", "Errors", "Pagination", "Caching basics"],
    "rating": 4.5,
    "popularity": 1800,
    "image": "./images/graphql-api.png"
  },
  {
    "id": "nextjs-clarity",
    "title": "Next.js with Clarity",
    "category": "Frontend",
    "level": "Intermediate",
    "duration": 14,
    "price": 129,
    "tags": ["Next.js", "SSR", "Routing"],
    "description": "Build accessible, fast sites with Next.js. Learn routing, data fetching, and sensible performance wins.",
    "syllabus": ["Routing & layouts", "Data fetching", "Accessibility", "Performance", "Deployment"],
    "rating": 4.6,
    "popularity": 2600,
    "image": "./images/nextjs-clarity.png"
  },
  {
    "id": "django-practical",
    "title": "Practical Django for Calm Backends",
    "category": "Backend",
    "level": "Intermediate",
    "duration": 16,
    "price": 129,
    "tags": ["Django", "Python", "Backend"],
    "description": "Use Django to ship reliable apps with models, views, forms, and tests that read like prose.",
    "syllabus": ["Models and admin", "Views and forms", "Templates", "Auth", "Testing"],
    "rating": 4.6,
    "popularity": 1900,
    "image": "./images/django-practical.png"
  },
  {
    "id": "ui-ux-devs",
    "title": "UI/UX for Developers: Gentle Patterns",
    "category": "Design",
    "level": "Beginner",
    "duration": 10,
    "price": 89,
    "tags": ["UX", "UI", "Design"],
    "description": "Design with empathy. Learn spacing, typography, color systems, and flows that welcome every user.",
    "syllabus": ["Visual hierarchy", "Type and rhythm", "Color systems", "Interaction states", "Usability checks"],
    "rating": 4.7,
    "popularity": 2700,
    "image": "./images/ui-ux-devs.png"
  },
  {
    "id": "git-master",
    "title": "Git Mastery without the Jargon",
    "category": "Tools",
    "level": "Beginner",
    "duration": 8,
    "price": 59,
    "tags": ["Git", "Version Control"],
    "description": "Understand commits, branches, merges, and rebases with simple visuals and safe practice labs.",
    "syllabus": ["Mental model", "Branching", "Merging & conflicts", "Rebasing", "Collaborative flows"],
    "rating": 4.8,
    "popularity": 5000,
    "image": "./images/git-mastery.png"
  }
]