Skip to main content

A package for exporting projects from the Open Science Framework web app. Comes with a CLI.

Project description

OSF Project Exporter

This is a CLI tool for exporting research project data and files from the OSF website. This is to prototype tool to export projects from the OSF website to a PDF, allowing users to back up, share or document their OSF projects in an offline medium.

Development Setup

Virtual Environment

  1. Clone this repository onto your local machine.
  2. Create a virtual environment to install dependencies. For virtualenv this is done with virtualenv <myenvname>. Make sure your virtual environment is setup to use Python 3.12 or above (e.g., virtualenv <myenvname> --python="/usr/bin/python3.12" on Linux.)
  3. From local Git repo: Activate your virtual environment and run pip install -e osfexport to install this repository as a modifiable package. Then install other requirements separately via pip install -r requirements.txt.
  4. On the OSF website, create or log in to your account. Set up a personal access token (PAT) by going into your account settings, select Personal access tokens in the left side menu, and clicking Create token. You should give the token a name that helps you remember why you made it, like "PDF export", and choose the osf.full_read scope - this allows this token to read all public and private projects on your account. You can delete this token once you have finished exporting your projects.

Docker

You can setup a Docker container with this tool installed as a Python package:

  1. Install and setup Docker and Docker Desktop on your local machine.
  2. Clone this repository onto your local machine.
  3. On the OSF website, create or log in to your account. Set up a personal access token (PAT) by going into your account settings, select Personal access tokens in the left side menu, and clicking Create token. You should give the token a name that helps you remember why you made it, like "PDF export", and choose the osf.full_read scope - this allows this token to read all public and private projects on your account. You can delete this token once you have finished exporting your projects.
  4. Create a .env file and add your personal access token to it (see .env.template.)
  5. In the root of this repository, run docker compose up --build -d to setup a container.
  6. Use docker compose exec -it cli <commands> to run CLI tool commands (e.g. export-projects) or run unit tests (i.e. python -m unittest.)

Installation

From PyPI: releases 0.1.4 and onwards

Activate your virtual environment, for virtualenv this is done by:

  • source <myenvname>/bin/activate on Linux
  • <myenvname>\Scripts\activate on Windows/Mac

Next, run python -m pip install osfexport. This will download and install this package and other dependencies from the PyPI index.

From TestPyPi: releases before 0.1.4

Activate your virtual environment and run python -m pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple osfexport. This will download the packages needed from the PyPI index and the packaged version of this CLI tool on the TestPyPI index.

Usage

  • Run osfget to get a list of basic commands you can use.
  • To see what a command needs as input, type --help after the command name (e.g. osfget show-welcome --help; osfget --help)
  • To export all your projects from the OSF into a PDF, run osfget export-projects.

Project details


Download files

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

Source Distribution

osfexport-0.1.4.tar.gz (1.4 MB view details)

Uploaded Source

Built Distribution

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

osfexport-0.1.4-py3-none-any.whl (1.4 MB view details)

Uploaded Python 3

File details

Details for the file osfexport-0.1.4.tar.gz.

File metadata

  • Download URL: osfexport-0.1.4.tar.gz
  • Upload date:
  • Size: 1.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for osfexport-0.1.4.tar.gz
Algorithm Hash digest
SHA256 3bb647102ce2b9341165f6a5abd6a7216502cee7450a1c3cd00bf6fe07f3f958
MD5 daa5dc16ba94087b3ab3312005f39174
BLAKE2b-256 9bddec9438bfa0373f654d5dec7aa8fbd3c8902837cfa842e226ba7ab8fa16bd

See more details on using hashes here.

File details

Details for the file osfexport-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: osfexport-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for osfexport-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 00d721118514d1a1f4f649440d2f111e7ade20d0b916d79652d85cab190d4394
MD5 76cd052ede8643224b31944c1ae51aa3
BLAKE2b-256 bc28020570ef36454a132efe783c0d677893b5f9561a93558daf7cb1a340e6e3

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