MyDrive is an open-source self-hosted Google Drive alternative and DMS

What is MyDrive?

MyDrive is an Open Source cloud file storage server (Similar To Google Drive). Host myDrive on your own server or trusted platform and then access myDrive through your web browser.

MyDrive uses mongoDB to store file/folder metadata, and supports multiple databases to store the file chunks, such as Amazon S3, the Filesystem, or just MongoDB. MyDrive is built using Node.js, and Typescript. The service now even supports Docker images!

Features

  1. View your files and folders in grid or a list
  2. Multiple file uploads
  3. Responsive user-friendly  interface
  4. Supports multiple databases (Amazon S3, Filesystem, or MongoDB)
  5. Supports Google Drive
  6. Supports S3 Storage
  7. Allows users to share files
  8. Download single and multiple files
  9. Users can set one-time download link
  10. Organize your files in folders
  11. Comes with a built-on image viewer
  12. A responsive video player that supports dozens of video formats
  13. Strong search options to search all of your files, folders
  14. Comes with am AES256 Encryption
  15. Automatic file thumbnails for photo and video files
  16. Easy installation using Docker and Docker-compose
  17. Access/Refresh tokens
  18. Developer-friendly documentation
  19. Filter files easily by last modified and uploaded date
  20. Rename files and folders
  21. Built-in JWT
  22. Make files public or one time links

Install MyDrive on your server

You can choose to install the app from the source, or using Docker which is easier as it requires few steps and less configuration

MyDrive has built in Docker support, there are two options when using Docker, users can either use the Docker image that has MongoDB built in, or use the Docker image that just has the MyDrive image (If you're using a service like Atlas).

Create the Docker environment variables by running the npm run setup'command as seen in the installation section. Or by manually creating the file (e.g. docker-variables.env on the root of the project, see the environment section for more information).

Docker with MongoDB image:

docker-compose build

Docker without MongoDB image:

docker-compose -f docker-compose-no-mongo.yml build

Start the Docker Image:

docker-compose up -d

Technologies

MyDrive is built using Node.js, Express, Amazon S3, MongoDB, and React. The backend of myDrive uses Typescript to ensure a better quality of code.

License

MyDrive is released under the GPL-3.0 License.

Resources





Top 23 Open-source Headless and API-based CMS for 2022

A Headless API-based CMS is a content management system that offers an API endpoint to view, manage, and create content, users, and settings instead of the classical web interface. Many developers like API-based approach as it is easier to.......Read more...

CMS: Is a Self-hosted Open-source Contest Management System

CMS, or Contest Management System, is a distributed system for running and (to some extent) organizing a programming contest. CMS has been designed to be general and to handle many types of contests, tasks, scoring, etc. Nonetheless, CMS ha.......Read more...

18 Open-source Flat-file Wiki Engines

A flat-file system is a solution that save records, and data in a plain files, instead of depending on an external database to store its content. Unlike database dependent systems, which requires you to setup, configure, prepare, and manag.......Read more...

Ace: an Open-source Code Editor for the Web

What is Ace?Ace is a standalone code editor written in JavaScript. Our goal is to create a browser based editor that matches and extends the features, usability and performance of existing native editors such as TextMate, Vim or Eclipse. I.......Read more...

Baïkal: Have your own CalDav and CardDav server

What are CalDav and CardDav?CalDav is an internet standard and protocol used to sync calendars across devices and services. It is often used to sync your calendar events between your calendar apps, webmail, devices and services. CardDav or.......Read more...