Skip to main content

The Python SDK for Speckle

Project description


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

PyPI - Version Codecov License

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 uv for dependency management, make sure you follow the official docs to get it.

To create a new virtual environment with uv run $ uv venv and follow the instructions on the screen to activate the virtual environment. To bootstrap the project environment run $ uv sync. This will install both the package and dev dependencies.

To execute any python script run $ uv run python my_script.py

Alternatively you may roll your own virtual-env with either venv, virtualenv, pyenv-virtualenv etc. Uv 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.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

specklepy-3.2.6.tar.gz (103.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

specklepy-3.2.6-py3-none-any.whl (157.4 kB view details)

Uploaded Python 3

File details

Details for the file specklepy-3.2.6.tar.gz.

File metadata

  • Download URL: specklepy-3.2.6.tar.gz
  • Upload date:
  • Size: 103.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for specklepy-3.2.6.tar.gz
Algorithm Hash digest
SHA256 6f6b1dbafc541748d8c5fddc71e148423886205f27fa09b15a2101cac196841c
MD5 a0ea03f84887a9d55aa4fb97343ebcbf
BLAKE2b-256 6fa7e4595d5b9f0ca1dd5a46fcf1e3953e581a3c9f0eca06dd150ee541b8af9e

See more details on using hashes here.

File details

Details for the file specklepy-3.2.6-py3-none-any.whl.

File metadata

  • Download URL: specklepy-3.2.6-py3-none-any.whl
  • Upload date:
  • Size: 157.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for specklepy-3.2.6-py3-none-any.whl
Algorithm Hash digest
SHA256 0febe68318df6a8ce935960f8fb2e04c1082b1371d89c2084f748838dc7e9b24
MD5 f33667f59e648bd354c1ec533c5edee4
BLAKE2b-256 5c11ed280f6f0192219ce46657ac28497b2903734e65c268eafdef238e74de51

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page