{
  "priming_urls": [
    {
      "url": "https://d3js.org/what-is-d3",
      "topic": "D3 Fundamentals",
      "description": "Core concepts and philosophy of D3"
    },
    {
      "url": "https://observablehq.com/@d3/learn-d3",
      "topic": "D3 Tutorial",
      "description": "Comprehensive introduction to D3"
    },
    {
      "url": "https://d3-graph-gallery.com/",
      "topic": "D3 Pattern Library",
      "description": "Gallery of common D3 visualizations"
    }
  ],

  "foundation_urls": [
    {
      "iteration_range": [1, 5],
      "urls": [
        {
          "url": "https://d3js.org/d3-selection",
          "topic": "Selections",
          "description": "Core selection API for DOM manipulation"
        },
        {
          "url": "https://d3js.org/d3-scale",
          "topic": "Scales",
          "description": "Mapping data to visual dimensions"
        },
        {
          "url": "https://observablehq.com/@d3/bar-chart",
          "topic": "Bar Charts",
          "description": "Creating basic bar charts"
        },
        {
          "url": "https://observablehq.com/@d3/line-chart",
          "topic": "Line Charts",
          "description": "Time series and line visualizations"
        },
        {
          "url": "https://observablehq.com/@d3/scatterplot",
          "topic": "Scatter Plots",
          "description": "Plotting points in 2D space"
        },
        {
          "url": "https://d3js.org/d3-axis",
          "topic": "Axes",
          "description": "Creating and customizing axes"
        },
        {
          "url": "https://observablehq.com/@d3/margin-convention",
          "topic": "Margin Convention",
          "description": "Standard layout pattern for charts"
        },
        {
          "url": "https://d3js.org/d3-array",
          "topic": "Data Arrays",
          "description": "Data transformation and statistics"
        }
      ]
    },

    "intermediate_urls": [
      {
        "iteration_range": [6, 12],
        "urls": [
          {
            "url": "https://d3js.org/d3-transition",
            "topic": "Transitions",
            "description": "Smooth animated transitions"
          },
          {
            "url": "https://observablehq.com/@d3/d3-hierarchy",
            "topic": "Hierarchies",
            "description": "Tree and hierarchical data layouts"
          },
          {
            "url": "https://observablehq.com/@d3/force-directed-graph",
            "topic": "Force Layouts",
            "description": "Physics-based network graphs"
          },
          {
            "url": "https://observablehq.com/@d3/color-schemes",
            "topic": "Color Scales",
            "description": "Color theory and palettes"
          },
          {
            "url": "https://observablehq.com/@d3/zoom",
            "topic": "Zoom & Pan",
            "description": "Interactive zoom and pan behaviors"
          },
          {
            "url": "https://observablehq.com/@d3/brush",
            "topic": "Brushing",
            "description": "Interactive selection with brush"
          },
          {
            "url": "https://observablehq.com/@d3/treemap",
            "topic": "Treemaps",
            "description": "Hierarchical space-filling visualization"
          },
          {
            "url": "https://observablehq.com/@d3/sunburst",
            "topic": "Sunburst",
            "description": "Radial hierarchical visualization"
          },
          {
            "url": "https://observablehq.com/@d3/chord-diagram",
            "topic": "Chord Diagrams",
            "description": "Circular relationship visualization"
          },
          {
            "url": "https://observablehq.com/@d3/sankey",
            "topic": "Sankey Diagrams",
            "description": "Flow and network visualization"
          },
          {
            "url": "https://observablehq.com/@d3/focus-context",
            "topic": "Focus + Context",
            "description": "Linked overview and detail views"
          },
          {
            "url": "https://observablehq.com/@d3/streamgraph",
            "topic": "Streamgraph",
            "description": "Stacked area charts with smooth curves"
          }
        ]
      }
    ],

    "advanced_urls": [
      {
        "iteration_range": [13, 20],
        "urls": [
          {
            "url": "https://d3js.org/d3-geo",
            "topic": "Geographic Projections",
            "description": "Map projections and transformations"
          },
          {
            "url": "https://observablehq.com/@d3/world-map",
            "topic": "Choropleth Maps",
            "description": "Geographic data visualization"
          },
          {
            "url": "https://observablehq.com/@d3/versor-dragging",
            "topic": "Globe Rotation",
            "description": "Interactive 3D globe projection"
          },
          {
            "url": "https://observablehq.com/@d3/contours",
            "topic": "Contour Plots",
            "description": "Density and elevation visualization"
          },
          {
            "url": "https://observablehq.com/@d3/voronoi",
            "topic": "Voronoi Diagrams",
            "description": "Spatial partitioning visualization"
          },
          {
            "url": "https://observablehq.com/@d3/hierarchical-edge-bundling",
            "topic": "Edge Bundling",
            "description": "Advanced network visualization"
          },
          {
            "url": "https://observablehq.com/@d3/parallel-coordinates",
            "topic": "Parallel Coordinates",
            "description": "Multi-dimensional data visualization"
          },
          {
            "url": "https://observablehq.com/@d3/calendar",
            "topic": "Calendar View",
            "description": "Time-based heatmap visualization"
          },
          {
            "url": "https://observablehq.com/@d3/horizon-chart",
            "topic": "Horizon Charts",
            "description": "Compact time series visualization"
          },
          {
            "url": "https://observablehq.com/@d3/collision-detection",
            "topic": "Force Simulation",
            "description": "Advanced physics-based layouts"
          },
          {
            "url": "https://observablehq.com/@d3/multi-line-chart",
            "topic": "Multi-Series Charts",
            "description": "Complex time series with interactions"
          },
          {
            "url": "https://observablehq.com/@d3/zoomable-sunburst",
            "topic": "Zoomable Hierarchies",
            "description": "Interactive hierarchical exploration"
          }
        ]
      }
    ],

    "expert_urls": [
      {
        "iteration_range": [21, 999],
        "urls": [
          {
            "url": "https://observablehq.com/@d3/canvas-scatterplot",
            "topic": "Canvas Rendering",
            "description": "High-performance canvas visualization"
          },
          {
            "url": "https://observablehq.com/@d3/webgl-scatterplot",
            "topic": "WebGL Integration",
            "description": "GPU-accelerated visualization"
          },
          {
            "url": "https://observablehq.com/@d3/seamless-zoomable-map-tiles",
            "topic": "Map Tiles",
            "description": "Advanced geographic visualization"
          },
          {
            "url": "https://observablehq.com/@d3/radial-stacked-bar-chart",
            "topic": "Radial Layouts",
            "description": "Creative circular visualizations"
          },
          {
            "url": "https://observablehq.com/@d3/gradient-encoding",
            "topic": "Advanced Encodings",
            "description": "Novel visual encoding techniques"
          },
          {
            "url": "https://observablehq.com/@d3/streamgraph-transitions",
            "topic": "Complex Transitions",
            "description": "Sophisticated animated transitions"
          },
          {
            "url": "https://observablehq.com/@d3/force-directed-lattice",
            "topic": "Custom Force Simulations",
            "description": "Advanced physics-based interactions"
          },
          {
            "url": "https://observablehq.com/@d3/cluster-dendrogram",
            "topic": "Advanced Clustering",
            "description": "Hierarchical clustering visualization"
          }
        ]
      }
    ]
  },

  "web_search_templates": [
    "D3.js {technique} tutorial site:observablehq.com",
    "D3 {chart_type} best practices",
    "D3.js {feature} examples",
    "Advanced D3 {area} techniques",
    "D3 interactive {element} implementation",
    "D3.js performance optimization {context}",
    "D3 {visualization_type} accessibility",
    "D3 responsive {chart_type} design"
  ],

  "url_selection_strategy": {
    "mode": "progressive",
    "description": "Select URLs based on iteration number and previous learnings",
    "fallback": "dynamic_search",
    "avoid_duplicates": true,
    "track_used_urls": true
  }
}
