Giter Club home page Giter Club logo

mlh-fellowship / cryptodrive Goto Github PK

View Code? Open in Web Editor NEW
28.0 4.0 12.0 23.95 MB

A Decentralised Encrypted File Storing and Sharing App which is back-boned by Ethereum Smart Contracts and is preparing its launch to the moon ๐Ÿš€

Home Page: https://www.cryptodrive.tech/

License: MIT License

HTML 0.93% Solidity 1.26% JavaScript 55.54% CSS 0.44% SCSS 41.84%
blockchain ipfs ethereum smart-contracts encrpytion file-sharing ethical-data

cryptodrive's People

Contributors

imabp avatar ksdkamesh99 avatar sameerkash avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

cryptodrive's Issues

Documentation

Update the documentation on

  • Project outcome
  • tech Stack
  • Progress
  • Challenges
  • Learnings

[GitHub Actions] Greetings Bot

CryptoDrive needs a greeting bot, whenever a contributor, raises their first issue or sends their first PR.
If you would like to contribute, feel free to create a branch and send a pr to staging.

[Edge Case] Payment Rejection in Metamask while Upload

While we upload a file it sends a request to pay the gas fee to store the user details and then upload details but if the user clicks on reject then it should be handled so for that we need to handle an alert to state please try again and stating a proper reason.

Edge Cases

There are lot of edge cases involved in the application. Few of them are.

  • Private Key Incorrect. (During SignUp, SignIn, MyFiles, Shared Files)
  • Metamask not Found
  • Private Key Extension Incorrect.
  • User Already Exists (During SignUp)
  • User Doesn't Exist (During File Sharing)

Dark Mode Toggle

I will be using the pretty naive approach to build Dark Mode, via CSS and bit JavaScript.
In this approach wherever you want to put a dark mode component, you need to add an id=theme to that component.

This is just hacky stuff.

Document the Code || Comments

We are following best practices in our code.
But we do need comments in some parts to let other contributors understand what we are doing.

[UI FIX] Mobile Responsive

Currently, CryptoDrive is not yet prepared for Mobile Devices.
Making it prepared for mobile devices, will be helpful for users to upload and share files via their mobo device.

Project Initial Setup

We need to have a project initial startup code so that it will be much easier to structure the code.

Hi, I downloaded the project, but nothing is working

Hi, I am working on a similar project but I need to run this project and see how it's working. I downloaded the project and did npm install but nothing happens when I click on signup. can you please guide me how to run this project.

Add a contributing guide

A contributing guide is helpful for people who would like contribute to the project and it helps them setup their dev environment and get started.

[FEATURE] Improving Compression Strategies

The project uses Huffman Compression Algorithm, to process faster communication.
We are looking to improve on it further.

If you have any ideas, feel free to comment it.

Login Crashes

When we are logging t the website it gets crashed and following error is coming on screen

image

Web3 Connect and Contract Load

Web3 should identify the current web provider and need to connect to the metamask and then need to load the contract hosted somewhere with the help of the ABI and Address. It would be much better if we could do it in separate modules

[UX Enhancement] Share button

Currently, if you want to share an already shared file on CryptoDrive, it needs to be first downloaded by user, and uploaded and then shared. This is bad UX.

The following feature will help to overcome this.

Implementing Share feature, on Shared Files Section.
This will enrich UX and avoid unnecessary heads on user

[ FEATURE ] Detection of Malicious File Types

MDN has a particular list of Malicious File Types.
Creating a checker function, which gets the extension of the file and checks, whether it is a malicious or nonmalicious file.
If malicious, the user will be popped up on an alert screen, asking, whether he is sure, to download it or not.

[Edge Case] Insufficient gas amount in metamask

Need to handle an edge case where a user doesn't have sufficient amount of the ethers in the Metamask wallet then we need to stop the process and send the alert stating that the ether wallet balance is insufficient.

[ FEATURE ] Web Workers Implementation

Crypto drive runs on zero servers.
Hence the computation process does need to be parallelly processed for larger files.
Web workers is a great idea to implement parallel processing on client side.

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.