Pythonic library for reading/modifying/writing Gerber/Excellon/IPC-356 files.
 
 
 
 
 
Go to file
jaseg 5a5ba2b709 Graft pcb-tools upstream onto gerbonara tree 2021-06-06 13:25:45 +02:00
.github/workflows Run workflow on pull request 2020-05-30 10:22:19 -04:00
doc doc options 2015-02-18 23:28:19 -05:00
examples Fix hard requirement of cairo per #83, and add stubs for required subclass methods to GerberContext per #84 2018-06-05 08:57:37 -04:00
gerber Merge pull request #99 from chintal/gEDA_layers 2019-11-27 11:44:13 -03:00
gerbonara add new pcb-tools cli 2021-06-06 13:16:17 +02:00
.coveragerc Add .coveragerc 2019-11-26 23:31:48 -03:00
.gitignore Initial commit 2021-06-06 13:16:10 +02:00
.gitlab-ci.yml Initial commit 2021-06-06 13:16:10 +02:00
.pypirc Initial commit 2021-06-06 13:16:10 +02:00
LICENSE Graft pcb-tools upstream onto gerbonara tree 2021-06-06 13:25:45 +02:00
Makefile Graft pcb-tools upstream onto gerbonara tree 2021-06-06 13:25:45 +02:00
README.md Graft pcb-tools upstream onto gerbonara tree 2021-06-06 13:25:45 +02:00
requirements-dev.txt Bump pytest-cov from 2.8.1 to 2.10.1 2020-08-17 10:09:01 +00:00
requirements-docs.txt Merge branch 'master' into dependabot/pip/numpydoc-1.1.0 2020-08-26 01:00:45 -03:00
requirements.txt Rename requirements for docs and dev and upgrade nose and coverage packages 2019-11-25 15:34:10 -03:00
setup.cfg Initial commit 2021-06-06 13:16:10 +02:00
setup.py add new pcb-tools cli 2021-06-06 13:16:17 +02:00
test-requirements.txt Initial commit 2021-06-06 13:16:10 +02:00

README.md

pipeline status coverage report pypi aur

gerbonara

Tools to handle Gerber and Excellon files in Python.

This repository is a friendly fork of phsilva's pcb-tools with extensions from opiopan integrated. We decided to fork pcb-tools since we need it as a dependency for gerbolyze and pcb-tools was sometimes very behind on bug fixes.

Installation

Arch Linux:

yay -S python-gerbonara

Python:

pip install gerbonara

Usage

Here's a simple example:

import gerbonara
from gerbonara.render import GerberCairoContext

# Read gerber and Excellon files
top_copper = gerbonara.read('example.GTL')
nc_drill = gerbonara.read('example.txt')

# Rendering context
ctx = GerberCairoContext()

# Create SVG image
top_copper.render(ctx)
nc_drill.render(ctx, 'composite.svg')

Made with ❤️ and 🐍.

pcb-tools