darwin_fiftyone
Provides an integration between Voxel51 and V7 Darwin. This enables Voxel51 users to send subsets of their datasets to Darwin for annotation and review. The annotated data can then be imported back into Voxel51.
This integration is currently in beta.
Install
- Install the library
pip install darwin-fiftyone
- Configure voxel51 to use it
cat ~/.fiftyone/annotation_config.json
{
"backends": {
"darwin": {
"config_cls": "darwin_fiftyone.DarwinBackendConfig",
"api_key": "d8mLUXQ.**********************"
}
}
}
Note: Replace the api_key placeholder with a valid API key generated from Darwin.
Development setup
- Install the library and development dependencies
# Install all dependencies including development tools
pip install -r requirements.txt
# Install the package in editable mode
pip install -e .
- Configure voxel51 to use it
cat ~/.fiftyone/annotation_config.json
{
"backends": {
"darwin": {
"config_cls": "darwin_fiftyone.DarwinBackendConfig",
"api_key": "d8mLUXQ.**********************"
}
}
}
Note: Replace the api_key placeholder with a valid API key generated from Darwin.
- (Optional) Install the V7 plugin in V51 to push/pull data to V7 directly from V51.
fiftyone plugins download \
https://github.com/voxel51/fiftyone-plugins \
--plugin-names @voxel51/annotation
Example Usage
Several notebooks can be found here
API
In addition to the standard arguments provided by dataset.annotate(), we also support:
backend=darwin, Indicates that the Darwin backend is being used.atts, Specifies attribute subannotations to be added in the labelling jobdataset_slug, Specifies the name of the dataset to use or create on Darwin.external_storage, Specifies the sluggified name of the Darwin external storage and indicates that all files should be treated as external storage
Testing
Set up your environment with FiftyOne and Darwin integration settings. To find your team slug check the Darwin documentation on dataset identifiers which has a section called "Finding Team Slugs:"
You'll also need an API Key
export FIFTYONE_ANNOTATION_BACKENDS=*,darwin
export FIFTYONE_DARWIN_CONFIG_CLS=darwin_fiftyone.DarwinBackendConfig
export FIFTYONE_DARWIN_API_KEY=******.*********
export FIFTYONE_DARWIN_TEAM_SLUG=your-team-slug-here
NB. E2E tests run in the IRL env and on a specific team with a specific external storage configuration. See env.example
Supported Annotation Types
The integration currently supports bounding boxes, polygons (closed polylines), keypoints, and tags (classification). It also supports attributes, text, instance ids, and properties subtypes.
Future development work will focus on the addition of annotation and subannotation types. Do reach out if you have suggestions.
TODO
- Support for read only external data storage
- Support for mask and keypoint skeleton types
Metadata
Release files for darwin-fiftyone 2.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| darwin_fiftyone-2.2.1.tar.gz | 32.0 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| darwin_fiftyone-2.2.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 53.9 kB
Release files / darwin_fiftyone-2.2.1.tar.gz
| Download URL | darwin_fiftyone-2.2.1.tar.gz |
|---|---|
| Size | 32.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
641a2954c0b37f15933d7a90ce307b0a8de173ad2d3918e716b909adb7042110
|
|
BLAKE2b-256 checksum How to use checksums |
3408d4c4f626d57f96e97966f4b04f5619a57c7891aac8412e29d61de1f02d3b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 14, 2026.
Transparency logRelease files / darwin_fiftyone-2.2.1-py3-none-any.whl
| Download URL | darwin_fiftyone-2.2.1-py3-none-any.whl |
|---|---|
| Size | 21.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
60dae5b6b8f3b427ce53323929e37696acb844334bfb6a1d26d3406ade1d363e
|
|
BLAKE2b-256 checksum How to use checksums |
c5822657b6d199123327cf662f037f5d0d6493d8b9e3ceb46964de0765be7a16
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 14, 2026.
Transparency logSecurity for darwin-fiftyone 2.2.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for darwin_fiftyone-2.2.1.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 14, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.