Skip to content

File Formats

WireFrame uses several custom XML-based file formats alongside standard industry formats. This page documents all file types and their structure.


Overview

Format Extension Purpose
Project .prjxml Links schematics, PCBs, and libraries
Schematic .schxml Circuit design with components, wires, graphics
PCB .pcbxml Board layout with footprints, traces, zones
Symbol library .kicad_sym KiCad symbol definitions (native support)
Footprint library .kicad_mod KiCad footprint definitions (native support)
Gerber .gbr PCB fabrication layers (export)
Drill .drl Via and hole data (export)
BOM .csv Bill of Materials (export)
PDF .pdf Schematic documentation (export)

Importable formats from other EDA tools

Format Extension Source
KiCad project .kicad_pro, .pro KiCad 5/6/7/8
KiCad schematic .kicad_sch KiCad 6/7/8
KiCad PCB .kicad_pcb KiCad 6/7/8
Altium project .PrjPcb Altium Designer
Altium schematic .SchDoc Altium Designer
Altium PCB .PcbDoc Altium Designer
Altium symbol library .SchLib, .IntLib Altium Designer
Altium footprint library .PcbLib Altium Designer
Eagle schematic .sch Eagle / Autodesk (XML, v6+)
Eagle board .brd Eagle / Autodesk (XML, v6+)
Eagle library .lbr Eagle / Autodesk (XML, v6+)

Project Files (.prjxml)

XML structure:

<WireFrameProject>
  <Settings>
    <LibFolder>lib</LibFolder>
    <!-- additional project-wide settings -->
  </Settings>
  <Schematics>
    <File>relative/path/to/schematic1.schxml</File>
    <File>relative/path/to/schematic2.schxml</File>
  </Schematics>
  <PCBs>
    <File>relative/path/to/board1.pcbxml</File>
  </PCBs>
  <Libraries>
    <Library>path/to/symbol-lib.kicad_sym</Library>
    <Library>path/to/footprint-lib.kicad_mod</Library>
  </Libraries>
</WireFrameProject>
Element Description
<Settings> Project-wide configuration (library folder, etc.)
<Schematics> List of schematic file paths (relative to project root)
<PCBs> List of PCB file paths (relative to project root)
<Libraries> Library file paths used by the project

Path convention

Paths are typically relative to the project root directory (parent of the .prjxml file). This keeps projects portable.


Schematic Files (.schxml)

the schematic save function handle:

Content Elements
Components placed component entries with ID, symbol reference, position, rotation, pin positions, attributes
Wires Wire lists with points (vertices) and pinAttachments (component pin references)
Graphics Lines, rectangles, circles, arcs, polygons, junctions, harnesses
Page settings Paper size, title block (title, company, revision, date, author), border colors

Hand-editing

The XML schema is internal and may evolve between versions. Avoid manual editing unless necessary — use the application UI instead.


PCB Files (.pcbxml)

the PCB save function handle:

Content Elements
Footprints Positions, rotations, layers, pad definitions, graphics, 3D model params
Traces Geometry (polyline points), net names, layers, widths
Vias Position, net, diameter, drill
Holes Position, diameter, plated flag, net
Layers Definitions with visibility and color settings
Netlist Net names and their pin sets
Zones Outlines, cutouts, computed islands
Design rules Net class definitions and assignments
Graphics Board outline, dimensions, silkscreen, fab layer content

PCB XML may also embed references to library files for footprints and 3D models.


Library Files

Symbol libraries (.kicad_sym)

WireFrame reads KiCad v6/v7/v8 format symbol files:

  • S-expression based format.
  • Parsed by the KiCad symbol parser.
  • Contains symbol definitions with pins, graphics, texts, and properties.

Footprint libraries (.kicad_mod)

WireFrame reads and writes KiCad footprint files:

  • S-expression based format.
  • Parsed by the KiCad footprint parser.
  • Contains pad definitions, graphics, reference text, and 3D model references.
  • saveToKicadMod exports generated footprints back to this format.

KiCad compatibility

WireFrame maintains compatibility with KiCad structures to enable easy reuse of existing libraries and smoother data interchange.


Manufacturing Files

Gerber (.gbr)

Property Value
Format RS-274X
Units Millimeters
Coordinate format 4.4 (integer.decimal)
One file per layer F.Cu, B.Cu, F.SilkS, F.Mask, B.Mask, Edge.Cuts, etc.

Generated by the Gerber export engine.

Drill (.drl)

Property Value
Format Excellon NC
Content Via and hole coordinates with drill diameters
Separation Plated and non-plated holes in separate files (or sections)

BOM (.csv)

Column Description
Designator Component reference (R1, C1, U1)
Value Electrical value (10kΩ, 100nF)
Footprint Package name (R_0603, LQFP-48)
Layer Board side (Top / Bottom)

Simple comma-separated format. Generated by the BOM export engine.


PDF Export

Property Value
Content Schematic pages with components, wires, graphics, title block
Format Vector-based PDF
Colors Converted to black/grey for printing
Units Schematic world units → PDF points (mm → pt)
Pages Single or multi-page depending on design

Generated by the PDF export engine.


See Also