osfclient
An OSF command-line library
What it is and what it does
osfclient bridges your local filesystem and the Open Science Framework, a web platform for collaborative research. It provides both a Python library for programmatic access and a command-line interface for managing files in OSF projects—uploading datasets, downloading research outputs, and syncing project files without leaving the terminal.
The package depends on requests for HTTP communication, tqdm for progress bars during transfers, and six for Python 2/3 compatibility. It is classified as Alpha (Development Status 3) and has been dormant since early 2021, with the last commit in October 2023. The codebase supports Python 2.7 through 3.9 according to its classifiers, though no active maintenance means newer Python versions are untested.
Use it for:
- Download large research datasets associated with published papers directly from OSF projects via the command line.
- Automate file uploads to OSF projects as part of a research workflow or data management pipeline.
- Clone an entire OSF project's file tree locally to keep a synchronized copy of collaborative research outputs.
- Retrieve individual files or directories from OSF without using the web interface, useful in headless or scripted environments.
- Set up a local project folder linked to an OSF project for team collaboration on shared research data.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
osfclient is a Python library and command-line tool for uploading and downloading files to and from Open Science Framework projects.
Yes, if you actively use OSF and need command-line or programmatic file access. The low install friction and permissive license make it a safe choice. However, be aware the project is dormant—no active maintenance since 2021, so compatibility with Python versions beyond 3.9 and recent dependency updates is unverified. Suitable for established workflows; risky for new projects expecting ongoing support.
Install
osfclient on PyPI
pip
pip install osfclientuv
uv add osfclientpoetry
poetry add osfclientInstalling osfclient
Before you install
Installation is straightforward with low friction. The package is dormant as of 2023 (last commit October 2023, latest release February 2021), so expect no active maintenance or updates to address new Python versions or dependency issues.
License in practice
BSD3 (permissive) license means you can use, modify, and distribute osfclient freely in commercial and private projects with minimal restrictions.
Quickstart
pip install osfclient
from osfclient.api import OSFProject
# Command-line usage:
# osf init # setup local folder for existing project
# osf ls # list files
# osf clone # fetch all files
Requires OSF project ID and optional authentication (username/password or Personal Access Token via environment variables or .osfcli.config file).
Verify before relying
- Whether the package works reliably with Python versions beyond 3.9 despite being dormant since 2021.
- Current state of compatibility with modern versions of requests, tqdm, and six dependencies.
- Whether the OSF API itself has changed in ways that break the client since the last release.
Package facts
| License | BSD3 (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 3 — requests, tqdm, six |
| Maintenance | dormant — 2,016 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 75,715/month — #14,685 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: osfclient-0.0.5-py2.py3-none-any.whl
Tags
More Utilities packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
charset-normalizerDetects and normalizes text encoding from…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
PygmentsPygments is a syntax highlighter that colorizes…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
python-documentcloudA Python wrapper for the DocumentCloud API that…
permissive · top 15,000 on PyPI
webdav4A WebDAV client library that provides a Python…
permissive · top 15,000 on PyPI
vercel_blobA Python client for uploading, downloading,…
unclear · top 15,000 on PyPI
openmlOpenML-Python provides a Python interface to…
permissive · top 15,000 on PyPI
quipclientProvides a Python client library for the Quip…
permissive · top 15,000 on PyPI
clarifaiOfficial Python client for Clarifai's AI…
permissive · top 15,000 on PyPI
azure-datalake-storeProvides a Python filesystem interface to…
permissive · top 1,000 on PyPI
rets-pythonPython 3 client library for querying and…
permissive · top 15,000 on PyPI
jellyfin-apiclient-pythonPython client library for interacting with…
copyleft · top 15,000 on PyPI
opendatalabOpenDataLab Python SDK provides programmatic…
permissive · top 15,000 on PyPI