Skip to main content

A package for exporting projects from the Open Science Framework web app. Comes with a Command-line interface for exporting projects.

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.2.1.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.2.1-py3-none-any.whl (1.4 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: osfexport-0.2.1.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.2.1.tar.gz
Algorithm Hash digest
SHA256 a933fe12451a4aac733ec6cc02ac969833c5ae5355c91dc2c2d2fa1f6d2f11f9
MD5 261a8b9e0e9b9b4c0fa74881147116c8
BLAKE2b-256 0b4a3aaf9bfcdd1e2fe74a101371dc08a1cdd2683e49b56b398812e60113997a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: osfexport-0.2.1-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.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f3eeb5e3becb85c876bd0b371aa3d3a2eb3ed85a697759dc6313019c9b75f6b5
MD5 3c12095bf1df2263504a52fb97e194cf
BLAKE2b-256 489567898b1762ababf9817ef7e209f165358987829510b8d11dbe05c337bd9d

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