Welcome to the Google Drive Clone project! This project aims to replicate the core functionalities of Google Drive, including uploading, deleting, starring, and searching files by name or file type, using Next.js for the frontend and Appwrite for the backend.
- Upload Files: Upload any file to your personal drive.
- Delete Files: Remove unwanted files.
- Star Files: Mark important files for quick access.
- Search Files: Find files by name or file type.
Follow these instructions to set up and run the project locally.
Make sure you have the following installed on your system:
- Node.js (v14 or higher)
- npm or yarn
- Appwrite server
-
Clone the repository:
git clone https://github.com/your-username/google-drive-clone.git cd google-drive-clone
-
Install dependencies:
Using npm:
npm install
Or using yarn:
yarn install
-
Set up Appwrite:
- Install and set up Appwrite by following the Appwrite installation guide.
- Create a new project in the Appwrite console.
- Set up a new bucket for file storage in the Appwrite console.
- Configure the necessary security permissions for file read/write operations.
- Note the Project ID, Endpoint, and API key.
-
Configure environment variables:
Create a
.env.local
file in the root of your project and add the following:NEXT_PUBLIC_APPWRITE_PROJECT_ID=your-appwrite-project-id NEXT_PUBLIC_APPWRITE_ENDPOINT=your-appwrite-endpoint NEXT_PUBLIC_APPWRITE_API_KEY=your-appwrite-api-key
-
Start the development server:
Using npm:
npm run dev
Or using yarn:
yarn dev
-
Open http://localhost:3000 in your browser to view the application.
Here's a brief overview of the project's folder structure:
google-drive-clone/ ├── public/ # Static assets ├── src/ │ ├── components/ # React components │ ├── app/ # Next.js pages │ ├── actions/ # CSS and styling │ └── utils/ # Utility functions ├── .env.example # Environment variables ├── .gitignore # Git ignore rules ├── next.config.js # Next.js configuration ├── package.json # Project metadata and dependencies └── README.md # Project README
We welcome contributions! Please follow these steps to contribute:
- Fork the repository.
- Create a new branch (
git checkout -b feature/your-feature
). - Make your changes and commit them (
git commit -m 'Add some feature'
). - Push to the branch (
git push origin feature/your-feature
). - Open a pull request.
This project is licensed under the MIT License. See the LICENSE file for more details.
Thank you for using and contributing to the Google Drive Clone project!