Git Product home page Git Product logo

file_sharing_backend's Introduction

FileSharing Platform

Welcome to our FileSharing platform! This platform allows users to securely upload, share, and download files with expiration dates and optional passwords.

Features

  • Secure Uploads: Users can upload files securely to the platform.
  • Expiry Dates: Users can set expiration dates for the files they upload.
  • Password Protection: Optional password protection for files to ensure privacy.
  • Preview and Download: Users can preview files in the browser and download them if necessary.
  • File Expiry: Files automatically expire after the set expiration date.
  • File Type Support: Supports a variety of file types including PDFs, documents, images, and videos.

Technologies Used

  • Backend: Node.js with Express.js for server-side logic.
  • Database: MongoDB for storing file metadata.
  • File Uploads: Multer for handling file uploads.
  • Authentication: JSON Web Tokens (JWT) for access control.
  • Encryption: Bcrypt for password hashing.
  • Frontend: React.js for the user interface.

Getting Started

To get started with the FileSharing platform, follow these steps:

  1. Clone this repository to your local machine.
  2. Install dependencies by running npm install in both the backend and frontend directories.
  3. Start the backend server by running npm start in the backend directory.
  4. Start the frontend development server by running npm start in the frontend directory.
  5. Access the FileSharing platform in your browser at http://localhost:3000.

Usage

  1. Upload a File: Click on the "Upload" button and select a file from your computer. Optionally, set a password and expiration date for the file.
  2. Share the Access Link: After uploading, you'll receive an access link. Share this link with others to grant access to the file.
  3. Access the File: To access a file, users can visit the access link. If password protection is enabled, they'll need to enter the password.
  4. Preview and Download: Files can be previewed in the browser or downloaded to the user's device.

Contributing

We welcome contributions from the community! If you'd like to contribute to the FileSharing platform, please follow these steps:

  1. Fork this repository.
  2. Create a new branch for your feature or bug fix.
  3. Make your changes and ensure tests pass.
  4. Submit a pull request describing your changes.

License

This project is licensed under the MIT License.

file_sharing_backend's People

Contributors

fab-c14 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.