<p align="center">
<img alt="build123d logo" src="docs/assets/build123d_logo/logo-banner.svg">
</p>
[![Documentation Status](https://readthedocs.org/projects/build123d/badge/?version=latest)](https://build123d.readthedocs.io/en/latest/?badge=latest)
[![tests](https://github.com/gumyr/build123d/actions/workflows/test.yml/badge.svg)](https://github.com/gumyr/build123d/actions/workflows/test.yml)
[![pylint](https://github.com/gumyr/build123d/actions/workflows/lint.yml/badge.svg)](https://github.com/gumyr/build123d/actions/workflows/lint.yml)
[![codecov](https://codecov.io/gh/gumyr/build123d/branch/dev/graph/badge.svg)](https://codecov.io/gh/gumyr/build123d)
Build123d is a python-based, parametric, boundary representation (BREP) modeling framework for 2D and 3D CAD. It's built on the Open Cascade geometric kernel and allows for the creation of complex models using a simple and intuitive python syntax. Build123d can be used to create models for 3D printing, CNC machining, laser cutting, and other manufacturing processes. Models can be exported to a wide variety of popular CAD tools such as FreeCAD and SolidWorks.
Build123d could be considered as an evolution of [CadQuery](https://cadquery.readthedocs.io/en/latest/index.html) where the somewhat restrictive Fluent API (method chaining) is replaced with stateful context managers - e.g. `with` blocks - thus enabling the full python toolbox: for loops, references to objects, object sorting and filtering, etc.
The documentation for **build123d** can found at [readthedocs](https://build123d.readthedocs.io/en/latest/index.html).
There is a [***Discord***](https://discord.com/invite/Bj9AQPsCfx) server (shared with CadQuery) where you can ask for help in the build123d channel.
The recommended method for most users is to install **build123d** is:
```
pip install build123d
```
To get the latest non-released version of **build123d*** one can install from GitHub using one of the following two commands:
In Linux/MacOS, use the following command:
```
python3 -m pip install git+https://github.com/gumyr/build123d
```
In Windows, use the following command:
```
python -m pip install git+https://github.com/gumyr/build123d
```
If you receive errors about conflicting dependencies, you can retry the installation after having upgraded pip to the latest version with the following command:
```
python3 -m pip install --upgrade pip
```
Development install
```
git clone https://github.com/gumyr/build123d.git
cd build123d
python3 -m pip install -e .
```
Further installation instructions are available (e.g. Poetry, Apple Silicon) see the [installation section on readthedocs](https://build123d.readthedocs.io/en/latest/installation.html).
Raw data
{
"_id": null,
"home_page": null,
"name": "build123d",
"maintainer": null,
"docs_url": null,
"requires_python": "<3.13,>=3.9",
"maintainer_email": null,
"keywords": "3d models, 3d printing, 3d, brep, cad, cadquery, opencscade, python",
"author": null,
"author_email": "Roger Maitland <gumyr9@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/30/1a/704be9243a2fe952736663f4487e516544efddf27ed121e14a46ba630adc/build123d-0.8.0.tar.gz",
"platform": null,
"description": "<p align=\"center\">\n <img alt=\"build123d logo\" src=\"docs/assets/build123d_logo/logo-banner.svg\">\n</p>\n\n[![Documentation Status](https://readthedocs.org/projects/build123d/badge/?version=latest)](https://build123d.readthedocs.io/en/latest/?badge=latest)\n[![tests](https://github.com/gumyr/build123d/actions/workflows/test.yml/badge.svg)](https://github.com/gumyr/build123d/actions/workflows/test.yml)\n[![pylint](https://github.com/gumyr/build123d/actions/workflows/lint.yml/badge.svg)](https://github.com/gumyr/build123d/actions/workflows/lint.yml)\n[![codecov](https://codecov.io/gh/gumyr/build123d/branch/dev/graph/badge.svg)](https://codecov.io/gh/gumyr/build123d)\n\nBuild123d is a python-based, parametric, boundary representation (BREP) modeling framework for 2D and 3D CAD. It's built on the Open Cascade geometric kernel and allows for the creation of complex models using a simple and intuitive python syntax. Build123d can be used to create models for 3D printing, CNC machining, laser cutting, and other manufacturing processes. Models can be exported to a wide variety of popular CAD tools such as FreeCAD and SolidWorks.\n\nBuild123d could be considered as an evolution of [CadQuery](https://cadquery.readthedocs.io/en/latest/index.html) where the somewhat restrictive Fluent API (method chaining) is replaced with stateful context managers - e.g. `with` blocks - thus enabling the full python toolbox: for loops, references to objects, object sorting and filtering, etc.\n\nThe documentation for **build123d** can found at [readthedocs](https://build123d.readthedocs.io/en/latest/index.html).\n\nThere is a [***Discord***](https://discord.com/invite/Bj9AQPsCfx) server (shared with CadQuery) where you can ask for help in the build123d channel.\n\nThe recommended method for most users is to install **build123d** is:\n```\npip install build123d\n```\n\nTo get the latest non-released version of **build123d*** one can install from GitHub using one of the following two commands:\n\nIn Linux/MacOS, use the following command:\n```\npython3 -m pip install git+https://github.com/gumyr/build123d\n```\nIn Windows, use the following command:\n```\npython -m pip install git+https://github.com/gumyr/build123d\n```\n\nIf you receive errors about conflicting dependencies, you can retry the installation after having upgraded pip to the latest version with the following command:\n```\npython3 -m pip install --upgrade pip\n```\n\nDevelopment install\n```\ngit clone https://github.com/gumyr/build123d.git\ncd build123d\npython3 -m pip install -e .\n```\n\nFurther installation instructions are available (e.g. Poetry, Apple Silicon) see the [installation section on readthedocs](https://build123d.readthedocs.io/en/latest/installation.html).\n",
"bugtrack_url": null,
"license": "Apache-2.0",
"summary": "A python CAD programming library",
"version": "0.8.0",
"project_urls": {
"Bug Tracker": "https://github.com/gumyr/build123d/issues",
"Documentation": "https://build123d.readthedocs.io/en/latest/index.html",
"Homepage": "https://github.com/gumyr/build123d"
},
"split_keywords": [
"3d models",
" 3d printing",
" 3d",
" brep",
" cad",
" cadquery",
" opencscade",
" python"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "4396f29a26ac97080b2327ea59f6cabc136c89958e79923b147aab70c58e5395",
"md5": "5c955f571721e324d750509371533759",
"sha256": "676be048c70b2a7b6c3a7c4022ede0f51369b88aba13e4c964b60ddf8c00f503"
},
"downloads": -1,
"filename": "build123d-0.8.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "5c955f571721e324d750509371533759",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<3.13,>=3.9",
"size": 198303,
"upload_time": "2024-11-17T21:03:52",
"upload_time_iso_8601": "2024-11-17T21:03:52.657133Z",
"url": "https://files.pythonhosted.org/packages/43/96/f29a26ac97080b2327ea59f6cabc136c89958e79923b147aab70c58e5395/build123d-0.8.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "301a704be9243a2fe952736663f4487e516544efddf27ed121e14a46ba630adc",
"md5": "e700af2493a0e401e62a80db734a393d",
"sha256": "7c36e6ed8ca717187336e26358e98023c2af37a9a55fb3256bd58252549edfbe"
},
"downloads": -1,
"filename": "build123d-0.8.0.tar.gz",
"has_sig": false,
"md5_digest": "e700af2493a0e401e62a80db734a393d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<3.13,>=3.9",
"size": 17012651,
"upload_time": "2024-11-17T21:03:54",
"upload_time_iso_8601": "2024-11-17T21:03:54.803096Z",
"url": "https://files.pythonhosted.org/packages/30/1a/704be9243a2fe952736663f4487e516544efddf27ed121e14a46ba630adc/build123d-0.8.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-17 21:03:54",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "gumyr",
"github_project": "build123d",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"lcname": "build123d"
}