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 Adapter 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.
babenkoivan/elastic-client
innmind/static-analysis
innmind/coding-standard
datacore/hub-sdk
alengo/sulu-http-cache-bundle
develia/commons
cuci/prototurk-sdk
cuci/prototurk-sdk-symfony
develia/geo-bundle
dreamzy/livewire-charts
touchestate-sdk/php-sdk
22h/doctrine-garbage-collection-bundle
imbo/imbo-coding-standard
visualbuilder/filament-lottie
servicioslineaonce/starter-kit
atomcoder/laravel-reorderable
irajul/filament-shadcn-theme
agtp/agtp-php
agtp/mod-php
centraldesktop/protobuf-php