CloudSpace is an Intelligent Multi-Cloud Backup System that provides secure and efficient file backup solutions across multiple cloud storage providers.
CloudSpace is a full-stack application that consists of three main components:
- Frontend: A modern web interface built with React and Vite
- Backend: A Node.js/Express server handling API requests and cloud storage operations
- Agent: A desktop application for local file management and backup operations
- Multi-cloud storage support (Dropbox, MEGA, Cloudinary)
- Secure file encryption and backup
- User authentication and authorization
- Real-time backup status monitoring
- Cross-platform desktop agent
- Modern and responsive web interface
- React
- Vite
- Tailwind CSS
- Modern JavaScript (ES6+)
- Node.js
- Express.js
- MongoDB (Mongoose)
- JWT Authentication
- Various cloud storage SDKs
- Electron.js
- Node.js
- Tailwind CSS
- Node.js (v14 or higher)
- MongoDB
- npm or yarn package manager
- Cloud storage provider accounts (Dropbox, MEGA, Cloudinary)
- Clone the repository:
git clone https://github.com/yourusername/cloudspace.git
cd cloudspace- Install dependencies for each component:
# Backend
cd backend
npm install
# Frontend
cd ../frontend
npm install
# Agent
cd ../agent
npm install- Set up environment variables:
- Create
.envfiles in both backend and agent directories - Configure necessary API keys and credentials
- Create
- Start the backend server:
cd backend
npm start- Start the frontend development server:
cd frontend
npm run dev- Start the agent:
cd agent
npm startcloudspace/
├── backend/ # Backend server
│ ├── configs/ # Configuration files
│ ├── controllers/ # Route controllers
│ ├── models/ # Database models
│ ├── routes/ # API routes
│ └── utils/ # Utility functions
├── frontend/ # React web application
│ ├── src/ # Source files
│ └── public/ # Static assets
└── agent/ # Desktop application
├── assets/ # Application assets
└── src/ # Source files
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the ISC License.
For support, please open an issue in the GitHub repository or contact the development team.