Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Flysystem Dropbox V2

Flysystem Dropbox V2 Laravel Package

srmklive/flysystem-dropbox-v2

Dropbox V2 adapter for Flysystem, enabling Laravel/PHP apps to store, read, and manage files in Dropbox via the Flysystem filesystem API. Supports common operations like upload/download, listing, deletion, and metadata handling.

View on GitHub
Deep Wiki
Context7

Flysystem driver for Dropbox API v2

Frequently asked questions about Flysystem Dropbox V2
How do I install and configure this Dropbox adapter for Laravel?
Run `composer require srmklive/flysystem-dropbox-v2`, then add a `dropbox-v2` disk entry to your `config/filesystems.php` with `client_id`, `client_secret`, and `access_token` from your Dropbox app. Use Laravel’s `Storage::disk('dropbox')` to interact with files as you would with local storage.
Does this package support Laravel 10 and PHP 8.1+?
The package was last updated in 2020, so it may not explicitly support Laravel 10 or PHP 8.1+. Test thoroughly, especially if using newer Laravel features like typed properties or attributes. Consider forking or checking for community patches if compatibility issues arise.
How do I handle OAuth authentication for Dropbox in Laravel?
Use the `dropbox/dropbox-sdk` package to manage OAuth flows (e.g., redirect users to Dropbox for authorization). Store the resulting `access_token` securely in `.env` or Laravel’s encrypted storage. Refresh tokens manually if needed, as the package doesn’t include built-in token management.
Will this work with Spatie’s Media Library or other Flysystem-based packages?
Yes, since this adapter implements the Flysystem interface, it’s fully compatible with Laravel packages like Spatie’s Media Library. Configure your media library to use the `dropbox-v2` disk, and it will handle file operations transparently.
Are there any known issues with Dropbox API v2 changes since 2020?
The package targets Dropbox API v2 but may not account for recent changes like deprecated endpoints or updated permissions. Monitor the repository for updates or check Dropbox’s API changelog for breaking changes. Test critical operations like file locking or shared links.
How do I handle large file uploads or chunked transfers?
The adapter relies on Dropbox’s native API for uploads, which supports chunked transfers for large files. However, you may need to implement custom logic for progress tracking or error handling during uploads, as the package doesn’t include built-in progress monitoring.
Is this package secure for production use? How should I store OAuth tokens?
Store `access_token` and `refresh_token` securely using Laravel’s encryption (e.g., `config/app.php` `cipher`) or a database. Avoid hardcoding tokens in `.env` for high-security applications. The package itself doesn’t enforce security practices, so implement additional validation if needed.
What alternatives exist for Dropbox integration in Laravel?
Consider the official `dropbox/dropbox-sdk` for full API access or `league/flysystem-dropbox` for a more actively maintained Flysystem adapter. The official SDK offers advanced features like webhooks, while the League adapter may have better Laravel compatibility and maintenance.
Can I mock Dropbox responses for testing without hitting the real API?
The package doesn’t include built-in mocking utilities, but you can use Flysystem’s `MockFilesystem` or tools like VCR (e.g., `vcrphp/vcr`) to record and replay Dropbox API responses. This avoids rate limits and API costs during development.
Does this adapter support Dropbox shared links or folder metadata?
The package focuses on core Flysystem operations (upload/download/list/delete) and may lack support for advanced Dropbox features like shared links or folder metadata. For these, use the official `dropbox/dropbox-sdk` alongside this adapter or extend the package manually.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
besmartand-pro/php-quality-config
sentix/ai-chatbot
terminal42/code-quality-tools
codifyo/ts-generator-bundle
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity