Git Product home page Git Product logo

kavyarishi19 / drifty Goto Github PK

View Code? Open in Web Editor NEW

This project forked from saptarshisarkar12/drifty

0.0 0.0 0.0 147.36 MB

Drifty is an open-source interactive File Downloader system built with java. It is available in both CLI and GUI mode.

Home Page: https://saptarshisarkar12.github.io/Drifty/

License: Apache License 2.0

JavaScript 20.50% C 0.12% Java 76.18% CSS 2.23% Dockerfile 0.96%

drifty's Introduction

Drifty Banner with App Icon

Release Version License Total No. Of Downloads of Drifty

Build Workflow Status GitHub Pages Deployment Status

GitHub Stargazers for Drifty Follow us on Twitter Discord Server

About ๐Ÿ”ฅ

  • Drifty is an open-source interactive File Downloader system built using Java.
  • It is both available in Command Line Interface (CLI) and Graphical User Interface (GUI) mode.

Demo

See the video below to know how to use the application. For any help, you can open an issue.

For Batch Downloading via Drifty CLI, the path to a YAML file has to be provided to it. It should have the following structure :

links: ["", ""] # [REQUIRED] - Links to the files to be downloaded
# Below parameters are OPTIONAL
fileNames: [""] # Will be auto-retrieved if not provided
# If the directory is not provided, the files will be downloaded in the default downloads folder.
directory: [""] # Use 'directory' when all the files to be downloaded in the same folder.
directories: [""] # Use 'directories' when the download folder is different for each of the files

Drifty GUI

GUI.mp4

Drifty CLI

CLI.mp4

Tech Stack

The Application Drifty is built using the following technologies :

  • Java - A programming language for building machine independent applications.

The Website of Drifty is built using the following technologies :

  • Next.js - A JavaScript framework for building server-rendered React applications.
  • Tailwind CSS - A utility-first CSS framework.

Quickstart ๐Ÿš€๐Ÿš€

For Users :

Using Drifty Application executable

  1. Open the website of Drifty

    Homepage of Drifty Website
  2. Click on Download

    Download Button in Drifty Website pointed out
  3. At first, select the Application Type from the Dropdown menu (By default, it is GUI). For downloading Drifty CLI, select CLI and for Drifty GUI, select GUI from the dropdown menu. Click on the Download Now button based on your Operating System (Windows, Linux, MacOS). For Windows user, a MSI file is available for Drifty GUI. You can click on the Prefer the msi? text and it will download the latest MSI file for you ๐ŸŽ‰!.

    Download Webpage of Drifty
  4. Go to your Downloads folder and run the file you downloaded.

    [!NOTE]
    Follow the on-screen instructions (For PKG and MSI files) for setting up Drifty GUI.

  5. See Demo for demonstrations on how to use the application.
  6. Leave a star on GitHub if you liked the project.
  7. For any issues or feature requests, you may discuss that on our Discord Server.

Using Drifty Application via Docker ๐Ÿ‹

Important

  • To download files in your local directory, you need to pass that directory as a volume to Drifty.
    Suppose, you want to download the file in your home/username/Downloads directory, then, the volume flag that you need to pass to docker will be -v /home/username/Downloads:/root/Downloads.
  • You can pass -v /home/username/.drifty:/root/.config to enable the docker container to store the Drifty's data in your local directory, making initialization of Drifty much faster ๐Ÿš€.
  • For Linux, it is advisable to use Docker Engine directly instead of running images using Docker Desktop. You can do the same by adding sudo before the docker commands.
  1. Pull the Docker image for Drifty using the below command -
    For Drifty CLI,
    docker pull ghcr.io/saptarshisarkar12/drifty-cli:master
    For Drifty GUI,
    docker pull ghcr.io/saptarshisarkar12/drifty-gui:master
  2. Run the docker image using the below command -
    For Drifty CLI,
    docker run ghcr.io/saptarshisarkar12/drifty-cli:master
    For Drifty GUI,
    docker run -e DISPLAY=$DISPLAY --net=host ghcr.io/saptarshisarkar12/drifty-gui:master

    [!IMPORTANT]
    For Linux and Windows, please run xhost +local:docker before running the GUI docker image.
    For macOS, please follow this article to run GUI docker images.

  3. Drifty will open, and you can now use it ๐ŸŽ‰!

For Contributors :

  1. Go to the project link on GitHub, fork this repository and clone your fork into your local directory by running this command in your terminal.
    git clone [email protected]:SaptarshiSarkar12/Drifty.git
    Clone Drifty

  2. Open an issue โ• describing the changes you want to make.

  3. Make the changes in an IDE (preferably Intellij Idea) and open a Pull Request. Ensure that you have linked the issue to the Pull Request.
  4. The Pull Request will be reviewed by the maintainers and merged if approved. โœ”

  5. Leave a star โญ on GitHub if you liked the project.
  6. You may join our Discord Server to discuss on the changes that you want to bring.

Using Docker ๐Ÿ‹ for Development

  1. Run docker compose run gui to start Drifty GUI and docker compose run cli to start Drifty CLI. The CLI and GUI will be built using your changed source code.

    [!IMPORTANT]
    For Linux and Windows, please run xhost +local:docker before running the GUI docker image.
    For macOS, please follow this article to run GUI docker images.

  2. Drifty app will appear on the screen and you can test it ๐ŸŽ‰!

Safety warning โš ๏ธ while Downloading โฌ‡๏ธ

image

It is because Microsoft Defender could not verify it is safe as it is not commonly downloaded. Feel free to proceed with the following steps:

  • Click on the three dots.
  • Click on keep.

image

  • Click Show More.
  • Click Keep anyway.

image

  • Now its downloaded, you can proceed.๐ŸŽ‰

Report the file as safe โœ”๏ธ

You can also provide your feedback to Microsoft Defender by reporting it to be Safe, by following following steps:

  • Click on three dots.
  • Click on Report this file as safe instead of clicking on Keep.

image

  • It will take you to Report a download page. You can provide your feedback there.๐Ÿ˜„

Safety warning โš ๏ธ while Installing

  • For Windows, click on More Info and then Run Anyway as present in the screen below :
  • For macOS, click on Ok and run sudo spctl --master-disable in your terminal to allow running unsigned apps. Try running Drifty again.
    gatekeeper

Contributing to the project

Stats ๐Ÿ“Š

Repo analysis

Support ๐Ÿ™

Please leave a star โญ on this project to support us.

Thanks to all the contributors โค๏ธ

Contributors' gallery at a glance

drifty's People

Contributors

saptarshisarkar12 avatar easyg0ing1 avatar dependabot[bot] avatar anurag-bharati avatar naveen13-06 avatar im-techno avatar redet-g avatar poshi1865 avatar kb-s avatar shashwat0227 avatar bharathkalyans avatar akshatjaiswal5 avatar thexahmed00 avatar divyanshiet avatar khushigarg1 avatar waxer59 avatar akash190104 avatar bhumika-1-3 avatar m9m avatar sreevyshnavi02 avatar amans369 avatar itshypon avatar dependabot-preview[bot] avatar sujalsamai avatar anshulsoni4 avatar anantnipunge avatar krishnansh5 avatar pargat-dhanjal avatar bosesj avatar nitesh232 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.