Code Monkey home page Code Monkey logo

alefmanvladimir / bigfiles Goto Github PK

View Code? Open in Web Editor NEW
12.0 2.0 8.0 1.01 MB

Ton Drive is an intuitive and responsive interface designed for Telegram Web Apps. It allows seamless uploading, viewing, and managing of large files, bypassing Telegram's 2GB file limit. Users experience smooth interactions while the backend handles robust file processing and storage.

JavaScript 4.20% TypeScript 93.92% HTML 0.32% CSS 0.16% Dockerfile 1.14% Shell 0.26%
hack-ton-berfest hacktoberfest

bigfiles's People

Contributors

alefmanvladimir avatar d0rich avatar deniskusakin avatar liminalangel avatar mitagmio avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

bigfiles's Issues

Develop File Upload Interface with React

Description: Create a straightforward and intuitive file upload interface using React for users to add their files to the TON Drive. This should include options to select, drag-and-drop files, and monitor upload progress.

Additional Notes:

  • The interface should provide feedback on successful uploads and errors.

  • Consider using React libraries for drag-and-drop functionality.

  • Features like batch upload or pausing/resuming uploads would enhance user experience.

Deploy TON Storage Daemon on Cluster

Description: Set up and deploy the TON Storage Daemon on our cluster to ensure the TON Drive application can interact seamlessly with TON Storage. This is a crucial step for facilitating large file storage and transfer capabilities.

Additional Notes:

  • Document the deployment process, configurations, and any challenges faced in a deployment.md file within the project repository.

  • Test connectivity from the TON Drive application to the daemon once deployed, ensuring smooth integration.

Implement web features indicators page

It is planned to run frontend as Telegram Web App. Major browser surely work under the hood of telegram (JavaScript, HTML, CSS). However, there is a set of specific, that are potentially helpful for this project. And these features are not supported everywhere.

It is required to develop a page which indicates if following features are available or not in the current environment (with details if possible):

  1. IndexedDB
  2. WebAssembly
  3. Fugu API - File System Access

This will help to understand next actions on integrating web with TON storage.

Implement Docker script for backend deployment

Problems

Now, development of backend part is not a trivial task, because developer should also install and run storage-daemon. Also, paths to binaries are different for every machine.

Another one problem is backend deployment to the production. It is quite time-consuming to configure the environment on each machine (in the case of migration).

That't it will be really useful to have Docker container with environment preconfigured.

Task

It is needed to create several solutions using Dockerfile and docker-compose:

  1. Light minimal configuration for running backend locally.
  2. Production configuration for deployment (possibly resolves #5):
    • The image with backend server
    • NGINX server, which provides HTTPS (on the first steps it is possible to use self-signed certificates)

References

You can take a look at Dockerfile in this repo: https://github.com/kdimentionaltree/ton-storage-docker

Develop File Listing Interface with React

Description: Implement a clear and user-friendly interface in React to display a list of uploaded files within the TON Drive application. Users should be able to easily navigate, search, and manage their files.

Additional Notes:

  • Incorporate features like sorting (by name, date, size) and searching for efficient file management.

  • Ensure compatibility with various file types, showcasing appropriate icons or previews.

  • Leverage popular React libraries and components for enhanced UX and performance.

  • Implement stub, which simulates fetching data from the data source.

Develop Project Architecture for TON Drive

Description: Define and structure the architecture for the TON Drive application. The architecture should ensure scalability, security, and efficient interaction between frontend and backend components.

Additional Notes:

  • Ensure that the architecture accommodates TON Storage integration seamlessly.
  • Document the chosen architecture in an architecture.md file within the project repository. Use diagrams and descriptions to aid other contributors in understanding the system layout. Include links to external tools like draw.io where relevant diagrams are hosted.

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.