FreeShare is a file sharing platform built with React, Firebase, and Cloud Functions. This project allows users to share files easily and efficiently. It's designed for individuals and teams who need a simple and secure way to share files.
The platform provides a user-friendly interface for uploading, sharing, and managing files. With FreeShare, you can share files with others by generating a unique link, and recipients can access the files without needing to create an account.
- Upload and share files with others via a unique link
- Supports various file types, including documents, images, and videos
- Secure file storage using Firebase Storage
- Authentication and authorization using Firebase Authentication
- Responsive and user-friendly interface built with React and Material-UI
- Easy navigation and file management
graph TD;
src-->components;
src-->App.test.js;
src-->index.js;
src-->reportWebVitals.js;
src-->setupTests.js;
public-->index.html;
public-->manifest.json;
public-->robots.txt;
functions-->index.js;
functions-->package.json;
To run the project locally, follow these steps:
- Git clone the repository:
https://github.com/Varshithvhegde/FreeShare.git
- Install dependencies:
npm install
- Start the development server:
npm start
- Open
http://localhost:3000
in your browser to access the application
The project uses a GitHub Actions workflow to automate tasks. However, the current workflow configuration (jekyll-gh-pages.yml
) appears to be a leftover and is not used in this project.
The project uses several configuration files:
.firebaserc
: Firebase configuration filefirebase.json
: Firebase Cloud Functions configuration file.github/workflows/jekyll-gh-pages.yml
: GitHub Actions workflow configuration file (not used).gitignore
: Git ignore filefunctions/.gitignore
: Git ignore file for Cloud Functionsfunctions/.eslintrc.js
: ESLint configuration file for Cloud Functionspackage.json
: Project dependencies and scriptsfunctions/package.json
: Cloud Functions dependencies and scripts