<h1 align="center">
<img src="https://user-images.githubusercontent.com/2679513/131189167-18ea5fe1-c578-47f6-9785-3748178e4312.png" width="150px"/><br/>
Speckle | specklepy 🐍
</h1>
<h3 align="center">
The Python SDK
</h3>
<p align="center"><b>Speckle</b> is the data infrastructure for the AEC industry.</p><br/>
<p align="center"><a href="https://twitter.com/SpeckleSystems"><img src="https://img.shields.io/twitter/follow/SpeckleSystems?style=social" alt="Twitter Follow"></a> <a href="https://speckle.community"><img src="https://img.shields.io/discourse/users?server=https%3A%2F%2Fspeckle.community&style=flat-square&logo=discourse&logoColor=white" alt="Community forum users"></a> <a href="https://speckle.systems"><img src="https://img.shields.io/badge/https://-speckle.systems-royalblue?style=flat-square" alt="website"></a> <a href="https://speckle.guide/dev/"><img src="https://img.shields.io/badge/docs-speckle.guide-orange?style=flat-square&logo=read-the-docs&logoColor=white" alt="docs"></a></p>
<p align="center"><a href="https://github.com/specklesystems/specklepy/"><img src="https://circleci.com/gh/specklesystems/specklepy.svg?style=svg&circle-token=76eabd350ea243575cbb258b746ed3f471f7ac29" alt="Speckle-Next"></a><a href="https://codecov.io/gh/specklesystems/specklepy">
<img src="https://codecov.io/gh/specklesystems/specklepy/branch/main/graph/badge.svg?token=8KQFL5N0YF"/>
</a> </p>
# About Speckle
What is Speckle? Check our 
### Features
- **Object-based:** say goodbye to files! Speckle is the first object based platform for the AEC industry
- **Version control:** Speckle is the Git & Hub for geometry and BIM data
- **Collaboration:** share your designs collaborate with others
- **3D Viewer:** see your CAD and BIM models online, share and embed them anywhere
- **Interoperability:** get your CAD and BIM models into other software without exporting or importing
- **Real time:** get real time updates and notifications and changes
- **GraphQL API:** get what you need anywhere you want it
- **Webhooks:** the base for a automation and next-gen pipelines
- **Built for developers:** we are building Speckle with developers in mind and got tools for every stack
- **Built for the AEC industry:** Speckle connectors are plugins for the most common software used in the industry such as Revit, Rhino, Grasshopper, AutoCAD, Civil 3D, Excel, Unreal Engine, Unity, QGIS, Blender and more!
### Try Speckle now!
Give Speckle a try in no time by:
- [](https://app.speckle.systems) ⇒ creating an account at our public server
- [](https://marketplace.digitalocean.com/apps/speckle-server?refcode=947a2b5d7dc1) ⇒ deploying an instance in 1 click
### Resources
- [](https://speckle.community) for help, feature requests or just to hang with other speckle enthusiasts, check out our community forum!
- [](https://speckle.systems) our tutorials portal is full of resources to get you started using Speckle
- [](https://speckle.guide/dev/) reference on almost any end-user and developer functionality
# Repo structure
## Usage
Send and receive data from a Speckle Server with `operations`, interact with the Speckle API with the `SpeckleClient`, create and extend your own custom Speckle Objects with `Base`, and more!
Head to the [**📚 specklepy docs**](https://speckle.guide/dev/python.html) for more information and usage examples.
## Developing & Debugging
### Installation
This project uses python-poetry for dependency management, make sure you follow the official [docs](https://python-poetry.org/docs/#installation) to get poetry.
To bootstrap the project environment run `$ poetry install`. This will create a new virtual-env for the project and install both the package and dev dependencies.
If this is your first time using poetry and you're used to creating your venvs within the project directory, run `poetry config virtualenvs.in-project true` to configure poetry to do the same.
To execute any python script run `$ poetry run python my_script.py`
> Alternatively you may roll your own virtual-env with either venv, virtualenv, pyenv-virtualenv etc. Poetry will play along an recognize if it is invoked from inside a virtual environment.
### Style guide
All our repo wide styling linting and other rules are checked and enforced by `pre-commit`, which is included in the dev dependencies.
It is recommended to set up `pre-commit` after installing the dependencies by running `$ pre-commit install`.
Commiting code that doesn't adhere to the given rules, will fail the checks in our CI system.
### Local Data Paths
It may be helpful to know where the local accounts and object cache dbs are stored. Depending on on your OS, you can find the dbs at:
- Windows: `APPDATA` or `<USER>\AppData\Roaming\Speckle`
- Linux: `$XDG_DATA_HOME` or by default `~/.local/share/Speckle`
- Mac: `~/.config/Speckle`
## Contributing
Please make sure you read the [contribution guidelines](.github/CONTRIBUTING.md) and [code of conduct](.github/CODE_OF_CONDUCT.md) for an overview of the practices we try to follow.
## Community
The Speckle Community hangs out on [the forum](https://discourse.speckle.works), do join and introduce yourself & feel free to ask us questions!
## Security
For any security vulnerabilities or concerns, please contact us directly at security[at]speckle.systems.
## License
Unless otherwise described, the code in this repository is licensed under the Apache-2.0 License. Please note that some modules, extensions or code herein might be otherwise licensed. This is indicated either in the root of the containing folder under a different license file, or in the respective file's header. If you have any questions, don't hesitate to get in touch with us via [email](mailto:hello@speckle.systems).
Raw data
{
"_id": null,
"home_page": "https://speckle.systems/",
"name": "specklepy",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.8.0",
"maintainer_email": null,
"keywords": null,
"author": "Speckle Systems",
"author_email": "devops@speckle.systems",
"download_url": "https://files.pythonhosted.org/packages/15/64/f00d5ad46238f6af28d90d1a2308b8d89ed480ddf7379d2e42ef293d2bab/specklepy-2.19.6.tar.gz",
"platform": null,
"description": "<h1 align=\"center\">\n <img src=\"https://user-images.githubusercontent.com/2679513/131189167-18ea5fe1-c578-47f6-9785-3748178e4312.png\" width=\"150px\"/><br/>\n Speckle | specklepy \ud83d\udc0d\n</h1>\n<h3 align=\"center\">\n The Python SDK\n</h3>\n<p align=\"center\"><b>Speckle</b> is the data infrastructure for the AEC industry.</p><br/>\n\n<p align=\"center\"><a href=\"https://twitter.com/SpeckleSystems\"><img src=\"https://img.shields.io/twitter/follow/SpeckleSystems?style=social\" alt=\"Twitter Follow\"></a> <a href=\"https://speckle.community\"><img src=\"https://img.shields.io/discourse/users?server=https%3A%2F%2Fspeckle.community&style=flat-square&logo=discourse&logoColor=white\" alt=\"Community forum users\"></a> <a href=\"https://speckle.systems\"><img src=\"https://img.shields.io/badge/https://-speckle.systems-royalblue?style=flat-square\" alt=\"website\"></a> <a href=\"https://speckle.guide/dev/\"><img src=\"https://img.shields.io/badge/docs-speckle.guide-orange?style=flat-square&logo=read-the-docs&logoColor=white\" alt=\"docs\"></a></p>\n<p align=\"center\"><a href=\"https://github.com/specklesystems/specklepy/\"><img src=\"https://circleci.com/gh/specklesystems/specklepy.svg?style=svg&circle-token=76eabd350ea243575cbb258b746ed3f471f7ac29\" alt=\"Speckle-Next\"></a><a href=\"https://codecov.io/gh/specklesystems/specklepy\">\n <img src=\"https://codecov.io/gh/specklesystems/specklepy/branch/main/graph/badge.svg?token=8KQFL5N0YF\"/>\n</a> </p>\n\n# About Speckle\n\nWhat is Speckle? Check our \n\n### Features\n\n- **Object-based:** say goodbye to files! Speckle is the first object based platform for the AEC industry\n- **Version control:** Speckle is the Git & Hub for geometry and BIM data\n- **Collaboration:** share your designs collaborate with others\n- **3D Viewer:** see your CAD and BIM models online, share and embed them anywhere\n- **Interoperability:** get your CAD and BIM models into other software without exporting or importing\n- **Real time:** get real time updates and notifications and changes\n- **GraphQL API:** get what you need anywhere you want it\n- **Webhooks:** the base for a automation and next-gen pipelines\n- **Built for developers:** we are building Speckle with developers in mind and got tools for every stack\n- **Built for the AEC industry:** Speckle connectors are plugins for the most common software used in the industry such as Revit, Rhino, Grasshopper, AutoCAD, Civil 3D, Excel, Unreal Engine, Unity, QGIS, Blender and more!\n\n### Try Speckle now!\n\nGive Speckle a try in no time by:\n\n- [](https://app.speckle.systems) \u21d2 creating an account at our public server\n- [](https://marketplace.digitalocean.com/apps/speckle-server?refcode=947a2b5d7dc1) \u21d2 deploying an instance in 1 click\n\n### Resources\n\n- [](https://speckle.community) for help, feature requests or just to hang with other speckle enthusiasts, check out our community forum!\n- [](https://speckle.systems) our tutorials portal is full of resources to get you started using Speckle\n- [](https://speckle.guide/dev/) reference on almost any end-user and developer functionality\n\n\n# Repo structure\n\n## Usage\n\nSend and receive data from a Speckle Server with `operations`, interact with the Speckle API with the `SpeckleClient`, create and extend your own custom Speckle Objects with `Base`, and more!\n\nHead to the [**\ud83d\udcda specklepy docs**](https://speckle.guide/dev/python.html) for more information and usage examples.\n\n## Developing & Debugging\n\n### Installation\n\nThis project uses python-poetry for dependency management, make sure you follow the official [docs](https://python-poetry.org/docs/#installation) to get poetry.\n\nTo bootstrap the project environment run `$ poetry install`. This will create a new virtual-env for the project and install both the package and dev dependencies.\n\nIf this is your first time using poetry and you're used to creating your venvs within the project directory, run `poetry config virtualenvs.in-project true` to configure poetry to do the same.\n\nTo execute any python script run `$ poetry run python my_script.py`\n\n> Alternatively you may roll your own virtual-env with either venv, virtualenv, pyenv-virtualenv etc. Poetry will play along an recognize if it is invoked from inside a virtual environment.\n\n### Style guide\n\nAll our repo wide styling linting and other rules are checked and enforced by `pre-commit`, which is included in the dev dependencies.\nIt is recommended to set up `pre-commit` after installing the dependencies by running `$ pre-commit install`.\nCommiting code that doesn't adhere to the given rules, will fail the checks in our CI system.\n\n### Local Data Paths\n\nIt may be helpful to know where the local accounts and object cache dbs are stored. Depending on on your OS, you can find the dbs at:\n- Windows: `APPDATA` or `<USER>\\AppData\\Roaming\\Speckle`\n- Linux: `$XDG_DATA_HOME` or by default `~/.local/share/Speckle`\n- Mac: `~/.config/Speckle`\n\n## Contributing\n\nPlease make sure you read the [contribution guidelines](.github/CONTRIBUTING.md) and [code of conduct](.github/CODE_OF_CONDUCT.md) for an overview of the practices we try to follow.\n\n## Community\n\nThe Speckle Community hangs out on [the forum](https://discourse.speckle.works), do join and introduce yourself & feel free to ask us questions!\n\n## Security\n\nFor any security vulnerabilities or concerns, please contact us directly at security[at]speckle.systems.\n\n## License\n\nUnless otherwise described, the code in this repository is licensed under the Apache-2.0 License. Please note that some modules, extensions or code herein might be otherwise licensed. This is indicated either in the root of the containing folder under a different license file, or in the respective file's header. If you have any questions, don't hesitate to get in touch with us via [email](mailto:hello@speckle.systems).\n",
"bugtrack_url": null,
"license": "Apache-2.0",
"summary": "The Python SDK for Speckle 2.0",
"version": "2.19.6",
"project_urls": {
"Documentation": "https://speckle.guide/dev/py-examples.html",
"Homepage": "https://speckle.systems/",
"Repository": "https://github.com/specklesystems/speckle-py"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "b350f8e7f0b8c235ff6a94c8b106bd891c7d0600ba10d30563052fef69761c49",
"md5": "2302fb06a2eb19debfa86716c773c21c",
"sha256": "33ab6882c0cf246fe162dabe9d4b7658a124e0c6db4f740881df620ac54fdfcc"
},
"downloads": -1,
"filename": "specklepy-2.19.6-py3-none-any.whl",
"has_sig": false,
"md5_digest": "2302fb06a2eb19debfa86716c773c21c",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.8.0",
"size": 114852,
"upload_time": "2024-08-12T10:54:18",
"upload_time_iso_8601": "2024-08-12T10:54:18.101706Z",
"url": "https://files.pythonhosted.org/packages/b3/50/f8e7f0b8c235ff6a94c8b106bd891c7d0600ba10d30563052fef69761c49/specklepy-2.19.6-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1564f00d5ad46238f6af28d90d1a2308b8d89ed480ddf7379d2e42ef293d2bab",
"md5": "d7d32a3532195007c3f23fc70ad169a5",
"sha256": "33f99af7b0661b2fd0ad190a4450e2d72a57fede36180f66d07a4b9b9ccbded6"
},
"downloads": -1,
"filename": "specklepy-2.19.6.tar.gz",
"has_sig": false,
"md5_digest": "d7d32a3532195007c3f23fc70ad169a5",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.8.0",
"size": 85381,
"upload_time": "2024-08-12T10:54:20",
"upload_time_iso_8601": "2024-08-12T10:54:20.244334Z",
"url": "https://files.pythonhosted.org/packages/15/64/f00d5ad46238f6af28d90d1a2308b8d89ed480ddf7379d2e42ef293d2bab/specklepy-2.19.6.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-08-12 10:54:20",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "specklesystems",
"github_project": "speckle-py",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"circle": true,
"lcname": "specklepy"
}