I Drive is a cloud storage system & online file browser that stores files on Discord.
It's basically like Google Drive, but it stores all files on Discord instead.
Want to know how iDrive works under the hood? Read here
It's available at https://idrive.pamparampam.dev
Credentials: demo/demo
Please keep in mind that this project is maintained by a single student developer and is currently in an early alpha stage. If you encounter any bugs or issues, please report them.
| Feature | Support |
|---|---|
| Online streaming and viewing of files without downloading | ✅ |
| Delete/move/rename files & folders | ✅ |
| Share files & folders | ✅ |
| Full File encryption | ✅ |
| Advanced search | ✅ |
| Login & Permission system | ✅ |
| Dark theme | ✅ |
| Text/Code editor with highlighting | ✅ |
| Mobile support | ✅ |
| Bulk zip download | ✅ |
| Supports Polish & English languages | ✅ |
| Docker support | ✅ |
| Virtual lists to render tens of thousand of files in a single folder | ✅ |
| ZIP file archive viewer | ✅ |
| Client side decryption | ✅ |
| And a LOT more features! | ✅ |
- Run
curl -fsSL https://raw.githubusercontent.com/pam-param-pam/I-Drive/refs/heads/master/scripts/bootstrap.sh -o bootstrap.sh && chmod +x bootstrap.sh && bash bootstrap.sh - Go to browser and type
localhost
To see all configurable options, run:
bash bootstrap.sh --help
How to configure Discord Settings:
-
Enable Discord Developer Mode.
See: How to enable Developer Mode -
Create a new Discord server and copy its Guild ID.
See: How to copy the Guild ID -
Create a new Discord bot:
Create a new Discord application -
In the Discord Developer Portal, open your bot settings and enable the required intent:
Bot → Privileged Gateway Intents → Message Content Intent
-
Generate an invite URL for the bot:
OAuth2 → URL Generator → Scopes → bot
-
Select the required bot permissions.
You can either select Administrator, or grant the following permissions manually:
- Manage Channels
- Manage Roles
- Manage Webhooks
- Manage Messages
- View Channels
- Read Message History
- Send Messages
- Attach Files
-
Open the bot settings, reset the bot token, and copy the new access token:
Bot → Reset Token
-
Open the generated invite URL and invite the bot to your Discord server.
After completing these steps, you should have:
- the Discord server
- its Guild ID
- the primary bot configured
- the bot token
Important
If you want to add another bot in the future, you can skip step 6. The required permissions will be granted to the bot automatically after you invite the bot to the server.
- Run
curl -fsSL https://raw.githubusercontent.com/pam-param-pam/I-Drive/refs/heads/master/scripts/setup-dev.sh -o setup-dev.sh && chmod +x setup-dev.sh && bash setup-dev.sh - Go to browser and type
localhost:5173
Note
This creates a standard development environment with default configuration. DO NOT USE IT IN PRODUCTION.
You can adjust the configuration after setup:
backend: backend/.env
frontend: frontend/.env
I Drive is fast enough for normal web-based file browsing, uploading, downloading, and streaming.
Typical speeds through the web interface:
| Operation | Speed |
|---|---|
| Upload through web interface | ~20 MB/s |
| Download through web interface | ~25 MB/s |
| Zip download through web interface | ~25 MB/s |
Download speed in the web interface is mainly constrained by backend bandwidth. When client-side decryption is not enabled, download speed will also be limited by server CPU, because files must be decrypted on the server before being sent to the client. Performance is also affected by the number of requests that need to be made to Discord. Smaller files require more individual requests, which can reduce overall throughput. A lot of requests to discord will also require more bots.
Upload speed in the web interface is limited by thumbnail processing and internal browser bottlenecks.
For maximum speed, use the iDrive-api-wrapper.
With the API wrapper, downloads can reach the maximum speed available from your ISP. In testing, downloads reached around 200 MB/s. Uploads reached around 50 MB/s, with thumbnail extraction being the main bottleneck.
Dear Discord, please don't sue me 👉👈

