This is a lightweight, powerful Visual Studio Code extension that allows developers to seamlessly upload files from their local project workspace to ExaDrive, a decentralized storage network.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
The ExaDrive VSCode Extension is a powerful tool designed to help developers easily upload and manage their frontend static builds to ExaDrive's decentralized storage network.
Features
Automatic Detection: Automatically detects frontend build directories like build, dist, www, and public
Simple Configuration: Configure your ExaDrive API Key and App ID directly from VSCode
One-Click Upload: Upload your entire frontend build with a single command
File/Folder Selection: Select specific files or folders to upload to any virtual path
Smart File Sync: Only upload new or modified files to save bandwidth and time
File Management: List, delete, and update files already uploaded to ExaDrive
CDN Support: Toggle CDN delivery for your files with a simple command
Visual UI Panel: Manage your ExaDrive files through an intuitive tree-based interface
Getting Started
Install the extension from the Visual Studio Code Marketplace
Open your frontend project in VSCode
Configure your ExaDrive API Key and App ID by using the command palette (Ctrl+Shift+P or Cmd+Shift+P) and selecting "ExaDrive: Configure API Key and App ID"
After building your frontend application, use the command palette to select "ExaDrive: Upload Build Files"
User Interface
The ExaDrive extension provides a dedicated panel in the Activity Bar:
Click the ExaDrive icon in the Activity Bar to open the panel
The panel displays all your files in a tree structure
For each file, you can:
Toggle CDN delivery with the "Enable CDN" or "Disable CDN" button
Delete files with the "Delete" button
Use the "Refresh" button to update the file list
Use the "Sync Files" button to synchronize your local files with ExaDrive
You can also access the panel by clicking on the ExaDrive status item in the footer.
Commands
The extension provides the following commands:
ExaDrive: Configure API Key and App ID - Set up your ExaDrive credentials
ExaDrive: Configure Sync Settings - Configure build directory and target path for syncing
ExaDrive: Upload Build Files - Upload all files from a build directory
ExaDrive: Select Files/Folders to Upload - Select specific files or folders to upload to any virtual path
sync - Intelligently sync files from configured build directory to specified target path
ExaDrive: List Uploaded Files - View all files uploaded to ExaDrive
ExaDrive: Delete Uploaded Files - Remove files from ExaDrive
ExaDrive: Toggle CDN for Files - Enable or disable CDN delivery for selected files
ExaDrive: Open Panel - Open the ExaDrive files panel
Sync Configuration
To configure the sync functionality:
Use the command palette to select "ExaDrive: Configure Sync Settings"
Enter or browse to select the build directory relative to your workspace root
Specify the target path on ExaDrive where files should be uploaded
Save your settings
These settings are workspace-specific and will be remembered for this project.
Uploading Specific Files or Folders
To upload specific files or folders:
Use the command palette to select "ExaDrive: Select Files/Folders to Upload"
Enter a virtual path where the files should be uploaded (e.g., /images, /css, or just / for the root)
Choose whether to select individual files or an entire folder
Browse and select the files or folder to upload
Confirm the upload when prompted
0.0.1
Initial release of the ExaDrive extension
Support for uploading, syncing, listing, and deleting files
Automatic detection of common frontend build directories