Metadata-Version: 2.1
Name: kiutils
Version: 1.2.0
Summary: Simple and SCM-friendly KiCad file parser for KiCad 6.0 and up
Home-page: https://github.com/mvnmgrx/kiutils
Author: Marvin Mager
Author-email: 99667992+mvnmgrx@users.noreply.github.com
Project-URL: Bug Tracker, https://github.com/mvnmgrx/kiutils/issues
Classifier: Programming Language :: Python :: 3.7
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Operating System :: OS Independent
Classifier: Development Status :: 5 - Production/Stable
Classifier: Natural Language :: English
Classifier: Topic :: Scientific/Engineering :: Electronic Design Automation (EDA)
Requires-Python: >=3.7
Description-Content-Type: text/markdown
License-File: LICENSE

# KiUtils

[![PyPI version](https://img.shields.io/pypi/v/kiutils)](https://pypi.org/project/kiutils)
![Python version](https://img.shields.io/pypi/pyversions/kiutils)
[![License](https://img.shields.io/github/license/mvnmgrx/kiutils)](https://github.com/mvnmgrx/kiutils/blob/master/LICENSE)
![Last commit](https://img.shields.io/github/last-commit/mvnmgrx/kiutils)
[![Documentation Status](https://readthedocs.org/projects/kiutils/badge/?version=latest)](https://kiutils.readthedocs.io/en/latest/?badge=latest)

Simple and SCM-friendly KiCad file parser based on Python dataclasses for KiCad 6.0
and up. The following KiCad-related files are currently supported:
- `.kicad_pcb` - Board layouts
- `.kicad_sch` - Schematics
- `.kicad_mod` - Footprints
- `.kicad_sym` - Symbols and symbol libraries
- `.kicad_wks` - Worksheets
- `.kicad_dru` - Custom design rules
- `fp-lib-table` & `sym-lib-table` - Library tables

KiUtils implements a "pythonic" abstraction of the documentation found at the
[KiCad Developer Reference](https://dev-docs.kicad.org/en/file-formats/) and is
intended to work with an SCM like Git or SVN without breaking the layout of the
files when the Python script ran.

Parsing of the files is based on the S-Expression parser found in this library:
[GitLab: KiCad Library utilities](https://gitlab.com/kicad/libraries/kicad-library-utils)

## Prerequisites
The following is required to use `kiutils`:
- Python 3.7 or higher

## Installation
KiUtils is available on [PyPI](https://pypi.org/project/kiutils/). Use Python's `pip`
to install it:
```
pip install kiutils
```

## Documentation
Visit the [kiutils documentation](https://kiutils.readthedocs.io/) for more information on how to 
install, use and develop `kiutils`, as well as examples and general module documentation.

## Donate
If you found this module helpful for your project consider donating via
[PayPal](https://paypal.me/mrvnmgr). Thanks!
