MCPcopy Index your code
hub / github.com/dtinit/data-transfer-project

github.com/dtinit/data-transfer-project @v1.15.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.15.0 ↗ · + Follow
4,793 symbols 19,326 edges 845 files 787 documented · 16%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Data Transfer Project

Overview

The Data Transfer Project makes it easy for people to transfer their data between online services. We provide a common framework and ecosystem to accept contributions from service providers to enable seamless transfer of data into and out of their service.

Who We Are

Data Transfer Project (DTP) is a collaboration of organizations committed to building a common framework with open-source code that can connect any two online service providers, enabling a seamless, direct transfer of data.

We want all individuals across the web to be in control of their data.

More info

Current State

Data Transfer Project is in its early stages, and we are actively looking for partner organizations and individuals to contribute to the project. We are continuing to define the architecture and implementation. Since the code is in active development, please do thorough testing and verification before implementing.

Contact Info

Please contact dtp-discuss@googlegroups.com with any questions or comments.

About Us

The Data Transfer Project was formed in 2017 to create an open-source, service-to-service portability platform so that all individuals across the web could easily move their data between online service providers.

The partners in the Data Transfer Project believe portability and interoperability are central to innovation. Making it easier for individuals to choose among services facilitates competition, empowers individuals to try new services and enables them to choose the offering that best suits their needs.

We anticipate the Data Transfer Project solution will make a particularly big impact in global markets where downloading or uploading data is expensive and/or slow. The Data Transfer Project eliminates the need to download data at all. Instead, data is transferred directly between service providers.

DTP is early-stage open source code that is built and maintained entirely by DTP community members.

Extension points exported contracts — how you extend this code

OAuth2Config (Interface)
Interface for providing information necessary to run OAuth2 flow [13 implementers]
libraries/auth/src/main/java/org/datatransferproject/auth/OAuth2Config.java
TransferKeyGenerator (Interface)
Creates an instance id and asymmetric encryption key pair unique to each worker instance. [6 implementers]
portability-spi-transfer/src/main/java/org/datatransferproject/spi/transfer/security/TransferKeyGenerator.java
AuthServiceExtension (Interface)
Factory responsible for providing AuthDataGenerator implementations. REVIEW: There is no distinction between [8 implementers]
portability-spi-api/src/main/java/org/datatransferproject/spi/api/auth/extension/AuthServiceExtension.java
AbstractExtension (Interface)
Implementations provide an extension to the system. [39 implementers]
portability-api-launcher/src/main/java/org/datatransferproject/api/launcher/AbstractExtension.java
RetryStrategy (Interface)
Defines a retry strategy - i.e., how many retry attempts should be made, and at what intervals. NOTE: Our core library [9 …
portability-types-transfer/src/main/java/org/datatransferproject/types/transfer/retry/RetryStrategy.java
AppCredentialStore (Interface)
Storage of app credentials, e.g. OAuth client IDs/keys and secrets. This class is intended to be implemented by exte [6 …
portability-spi-cloud/src/main/java/org/datatransferproject/spi/cloud/storage/AppCredentialStore.java
SettingsExtension (Interface)
Extension that provides settings. [5 implementers]
libraries/config/src/main/java/org/datatransferproject/config/extension/SettingsExtension.java
Fileable (Interface)
Represent an item we expect to be recognizable as an ordinary file on someone's computer. [5 implementers]
portability-types-common/src/main/java/org/datatransferproject/types/common/Fileable.java

Core symbols most depended-on inside this repo

get
called by 594
extensions/data-transfer/portability-data-transfer-synology/src/main/java/org/datatransferproject/datatransfer/synology/service/SynologyDTPService.java
put
called by 440
extensions/data-transfer/portability-data-transfer-synology/src/main/java/org/datatransferproject/datatransfer/synology/utils/SynologyMediaAlbumBinder.java
add
called by 379
extensions/data-transfer/portability-data-transfer-generic/src/main/java/org/datatransferproject/datatransfer/generic/BlobIdToName.java
verify
called by 328
portability-types-common/src/main/java/org/datatransferproject/types/common/StringPaginationToken.java
build
called by 322
extensions/data-transfer/portability-data-transfer-microsoft/src/main/java/org/datatransferproject/transfer/microsoft/DataChunk.java
getName
called by 212
portability-types-common/src/main/java/org/datatransferproject/types/common/ImportableItem.java
size
called by 179
extensions/data-transfer/portability-data-transfer-microsoft/src/main/java/org/datatransferproject/transfer/microsoft/DataChunk.java
debug
called by 151
portability-api-launcher/src/main/java/org/datatransferproject/api/launcher/Monitor.java

Shape

Method 3,859
Class 804
Interface 91
Enum 37
Function 2

Languages

Java98%
TypeScript2%

Modules by API surface

portability-types-common/src/main/java/org/datatransferproject/types/common/models/calendar/RecurrenceRule.java61 symbols
portability-spi-cloud/src/main/java/org/datatransferproject/spi/cloud/types/PortabilityJob.java41 symbols
extensions/data-transfer/portability-data-transfer-synology/src/test/java/org/datatransferproject/datatransfer/synology/service/SynologyDTPServiceTest.java40 symbols
extensions/data-transfer/portability-data-transfer-koofr/src/test/java/org/datatransferproject/transfer/koofr/common/KoofrClientTest.java28 symbols
portability-types-common/src/test/java/org/datatransferproject/types/common/models/photos/PhotosContainerResourceTest.java27 symbols
portability-types-common/src/test/java/org/datatransferproject/types/common/models/media/MediaContainerResourceTest.java27 symbols
extensions/data-transfer/portability-data-transfer-microsoft/src/main/java/org/datatransferproject/transfer/microsoft/MicrosoftApiResponse.java27 symbols
extensions/data-transfer/portability-data-transfer-google/src/main/java/org/datatransferproject/datatransfer/google/mediaModels/GoogleMediaItem.java27 symbols
extensions/data-transfer/portability-data-transfer-generic/src/main/java/org/datatransferproject/datatransfer/generic/MediaSerializer.java27 symbols
client-rest/src/app/progress/progress.service.ts25 symbols
portability-transfer/src/main/java/org/datatransferproject/transfer/WorkerModule.java24 symbols
portability-spi-cloud/src/main/java/org/datatransferproject/spi/cloud/types/JobAuthorization.java23 symbols

For agents

$ claude mcp add data-transfer-project \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page