Python SDK 🐍
Перейти к файлу
Claire Kuang 46c18bbe6b
Update README.md to align with main github page (#352)
2024-11-05 10:36:56 +00:00
.circleci ci(pre-commit): add a pre-commit job to CI 2023-11-24 16:37:51 +00:00
.devcontainer fix poetry in dockerfile 2024-03-28 14:48:34 +00:00
.github chore(ci): Remove old github actions from specklepy repo 2023-06-08 10:53:02 +02:00
.vscode style(formatting): fix formatting issues 2023-04-06 16:57:44 +02:00
example style(all-project): fix all linting errors across the project with the current setup 2022-12-20 14:46:36 +01:00
src Collections namespace, clean PolygonGeometry class (#351) 2024-11-05 10:11:06 +00:00
tests isort 2024-10-31 14:04:45 +00:00
utils chore: reorder imports 2023-11-27 12:22:33 +01:00
.gitattributes style(whole-project): fix styling from new pre-commit config 2022-12-19 14:03:20 +01:00
.gitignore style(whole-project): fix styling from new pre-commit config 2022-12-19 14:03:20 +01:00
.pre-commit-config.yaml feat: read automation function inputs from file 2023-12-11 17:30:08 +01:00
LICENSE Initial commit 2020-11-12 17:57:39 +00:00
README.md Update README.md to align with main github page (#352) 2024-11-05 10:36:56 +00:00
SECURITY.md GitHub template update (#203) 2022-08-16 10:37:21 +01:00
docker-compose.yml updated docker compose to fe2 2024-10-21 12:16:26 +01:00
patch_version.py style(whole-project): fixing linting and typing errors 2022-12-20 10:45:22 +01:00
poetry.lock Wrapping up tests 2024-10-30 12:43:40 +00:00
pyproject.toml Wrapping up tests 2024-10-30 12:43:40 +00:00

README.md


Speckle | specklepy 🐍

Twitter Follow Community forum users website docs

Speckle is the first AEC data hub that connects with your favorite AEC tools. Speckle exists to overcome the challenges of working in a fragmented industry where communication, creative workflows, and the exchange of data are often hindered by siloed software and processes. It is here to make the industry better.

The Python SDK

Codecov

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 for more information and usage examples.

Developing & Debugging

Installation

This project uses python-poetry for dependency management, make sure you follow the official docs 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 and code of conduct for an overview of the practices we try to follow.

Community

The Speckle Community hangs out on the forum, 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.