{
  "schema_version": 1,
  "exported_at": "2026-09-09T00:00:00+00:00",
  "houses": [
    {
      "house_id": "jlcpcb-2layer-1oz",
      "house_name": "JLCPCB \u2014 2-layer FR4, 1 oz",
      "schema_version": 1,
      "layer_count": 2,
      "copper_weight_oz": 1,
      "min_track_width": 0.1,
      "min_clearance": 0.1,
      "min_annular_ring": 0.18,
      "min_drill": 0.15,
      "min_hole_to_hole": 0.45,
      "min_edge_clearance": 0.2,
      "min_text_height": 1.0,
      "min_text_thickness": 0.15,
      "min_mask_dam": 0.1,
      "provenance": {
        "min_track_width": {
          "source_url": "https://jlcpcb.com/capabilities/pcb-capabilities",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Published as 0.10 / 0.10 mm (4 / 4 mil) for 1 oz copper."
        },
        "min_clearance": {
          "source_url": "https://jlcpcb.com/capabilities/pcb-capabilities",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Published as 0.10 / 0.10 mm (4 / 4 mil) for 1 oz copper."
        },
        "min_annular_ring": {
          "source_url": "https://jlcpcb.com/capabilities/pcb-capabilities",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Page states 'Recommended 0.25 mm or above; absolute minimum 0.18 mm'. The absolute minimum is recorded, because this field means what the house will build; 0.25 mm is the safer target."
        },
        "min_drill": {
          "source_url": "https://jlcpcb.com/capabilities/pcb-capabilities",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Drill range published as 0.15 - 6.3 mm for 2 layers."
        },
        "min_hole_to_hole": {
          "source_url": "https://jlcpcb.com/capabilities/pcb-capabilities",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Published as 0.45 mm pad hole-to-hole."
        },
        "min_edge_clearance": {
          "source_url": "https://jlcpcb.com/capabilities/pcb-capabilities",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Published as >= 0.2 mm for routed board edges."
        },
        "min_text_height": {
          "source_url": "https://jlcpcb.com/capabilities/pcb-capabilities",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Published as 40 mil (1.0 mm)."
        },
        "min_text_thickness": {
          "source_url": "https://jlcpcb.com/capabilities/pcb-capabilities",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Published as silkscreen line width >= 0.15 mm."
        },
        "min_mask_dam": {
          "source_url": "https://jlcpcb.com/capabilities/pcb-capabilities",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Solder mask bridge 0.10 mm, 1 oz, standard colours. Recorded only: KiCad has no DRC constraint for it."
        }
      }
    },
    {
      "house_id": "pcbway-standard",
      "house_name": "PCBWay \u2014 Standard PCB (1-14 layers)",
      "schema_version": 1,
      "min_track_width": 0.1,
      "min_clearance": 0.1,
      "min_annular_ring": 0.15,
      "min_drill": 0.15,
      "provenance": {
        "min_track_width": {
          "source_url": "https://www.pcbway.com/capabilities.html",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Published as 0.1 mm / 4 mil."
        },
        "min_clearance": {
          "source_url": "https://www.pcbway.com/capabilities.html",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Published as 0.1 mm / 4 mil."
        },
        "min_annular_ring": {
          "source_url": "https://www.pcbway.com/capabilities.html",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Published as 0.15 mm (6 mil) minimum width."
        },
        "min_drill": {
          "source_url": "https://www.pcbway.com/capabilities.html",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Drill range published as 0.15 - 6.0 mm."
        }
      }
    },
    {
      "house_id": "oshpark-2layer",
      "house_name": "OSH Park \u2014 Two-layer service",
      "schema_version": 1,
      "layer_count": 2,
      "min_track_width": 0.1524,
      "min_clearance": 0.1524,
      "min_annular_ring": 0.127,
      "min_drill": 0.254,
      "min_edge_clearance": 0.381,
      "min_text_thickness": 0.0762,
      "min_mask_dam": 0.1016,
      "provenance": {
        "min_track_width": {
          "source_url": "https://docs.oshpark.com/services/two-layer/",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Published as 6 mil (0.1524 mm)."
        },
        "min_clearance": {
          "source_url": "https://docs.oshpark.com/services/two-layer/",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Published as 6 mil (0.1524 mm)."
        },
        "min_annular_ring": {
          "source_url": "https://docs.oshpark.com/services/two-layer/",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Published as 5 mil (0.127 mm)."
        },
        "min_drill": {
          "source_url": "https://docs.oshpark.com/services/two-layer/",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Published as 10 mil (0.254 mm)."
        },
        "min_edge_clearance": {
          "source_url": "https://docs.oshpark.com/services/two-layer/",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Published as 15 mil (0.381 mm) from nominal board edge."
        },
        "min_text_thickness": {
          "source_url": "https://docs.oshpark.com/services/two-layer/",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Page gives 5 mil (0.127 mm) as the recommended minimum silkscreen line width and 3 mil (0.0762 mm) for short lines, text and graphics. The text figure is recorded, since this field is text thickness."
        },
        "min_mask_dam": {
          "source_url": "https://docs.oshpark.com/services/two-layer/",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Minimum soldermask web 4 mil (0.1016 mm). Recorded only: KiCad has no DRC constraint for it."
        }
      }
    },
    {
      "house_id": "aisler-2layer-35um-hasl",
      "house_name": "AISLER \u2014 2-layer, 1.6 mm, 35 um, HASL",
      "schema_version": 1,
      "layer_count": 2,
      "board_thickness_mm": 1.6,
      "min_track_width": 0.2,
      "min_clearance": 0.15,
      "min_annular_ring": 0.2,
      "min_drill": 0.5,
      "min_hole_to_hole": 0.3,
      "min_edge_clearance": 0.3,
      "min_text_height": 0.8,
      "min_text_thickness": 0.15,
      "min_mask_dam": 0.1,
      "provenance": {
        "min_track_width": {
          "source_url": "https://community.aisler.net/t/2-layer-1-6-mm-35-m-hasl-design-rules/3735",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Published as 200 um / 8 mil."
        },
        "min_clearance": {
          "source_url": "https://community.aisler.net/t/2-layer-1-6-mm-35-m-hasl-design-rules/3735",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Published as 150 um / 6 mil copper to copper."
        },
        "min_annular_ring": {
          "source_url": "https://community.aisler.net/t/2-layer-1-6-mm-35-m-hasl-design-rules/3735",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Published as 200 um / 8 mil for vias and 300 um / 12 mil for plated through holes. The via figure is recorded because this field maps to KiCad's min_via_annular_width; a PTH on this process needs 300 um."
        },
        "min_drill": {
          "source_url": "https://community.aisler.net/t/2-layer-1-6-mm-35-m-hasl-design-rules/3735",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Published as 0.5 mm for plated through holes and 0.3 mm for vias. The PTH figure is recorded because this field maps to KiCad's min_through_hole_diameter."
        },
        "min_hole_to_hole": {
          "source_url": "https://community.aisler.net/t/2-layer-1-6-mm-35-m-hasl-design-rules/3735",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Published as 300 um / 12 mil drill to drill."
        },
        "min_edge_clearance": {
          "source_url": "https://community.aisler.net/t/2-layer-1-6-mm-35-m-hasl-design-rules/3735",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Published as 300 um / 12 mil."
        },
        "min_text_height": {
          "source_url": "https://community.aisler.net/t/2-layer-1-6-mm-35-m-hasl-design-rules/3735",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Published as 800 um / 32 mil."
        },
        "min_text_thickness": {
          "source_url": "https://community.aisler.net/t/2-layer-1-6-mm-35-m-hasl-design-rules/3735",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Published as 150 um / 6 mil silkscreen line width."
        },
        "min_mask_dam": {
          "source_url": "https://community.aisler.net/t/2-layer-1-6-mm-35-m-hasl-design-rules/3735",
          "recorded_on": "2026-09-09",
          "confirmed_by_user": false,
          "note": "Published as 100 um / 4 mil. Recorded only: KiCad has no DRC constraint for it."
        }
      }
    }
  ]
}
