Git Product home page Git Product logo

qusly's Introduction

Qusly


Actions Status Downloads FOSSA Status Discord Github

Qusly is an FTP client, built on top of Electron and React. It aims to be beatiful and functional.

Features

  • Supports FTP, FTPS and SFTP
  • File operations
  • Tree explorer
  • Tabs

Some of the features may not be fully finished, because of the early stage.

Screenshots

Components

Running

Before running Qusly, please ensure you have latest Node.js installed on your machine.

Firstly, run this command to install all needed dependencies. If you have encountered any problems, please report it.

$ npm install

Commands below will run Qusly in the development mode.

$ npm run dev
$ npm run start

You can configure the environment file for better development experience. It will automatically create a new session on hot reload.

Change name of the .env.example to .env.

HOSTNAME=www.example.com
USER=root
PASSWORD=password
PROTOCOL=sftp
PORT=22
ENABLED=true

You can set the protocol to sftp, ftp or ftps. Port is usually 21 for FTP(s) and 22 for SFTP.

Sponsors

FOSSA Status

qusly's People

Contributors

dependabot-preview[bot] avatar dependabot[bot] avatar sentialx avatar xnerhu 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  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  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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

qusly's Issues

Add searching all files

It would be great to search through all files on a server with these optional settings:

  • Case sensitivity
  • Regex

Unexpected reloading of Electron window when pressing CTRL+R

When I hit CTRL+R (Linux) I expect that directory contents of the current tab will be reloaded, not the whole Electron window. I think the end result of hitting this shortcut should be the same as clicking on the reload button in the toolbar.

Hints for left siderbar icons

Consider adding hover hints for icons in the left sidebar because the meaning of images isn't obvious. Mainly I didn't understand what the second from the top icon mean until I clicked on it.

Add tabs context menu

  • New tab
  • Reload
  • Close tab
  • Close other tabs
  • Close tabs from left
  • Close tabs from right

SHA512

Hi, this is a very interesting app, I wanted to give it a try, but I found that in the latest version (as of 2023/06/24, which is 0.1.0), I found that in the latest.yml, there is no SHA256 , but you instead using SHA512? Is that correct?
When i'm using certutil to verify the .exe it didn't match the SHA512 that included in latest.yml file.

certutil -hashfile qusly-setup-0.1.0.exe sha512
SHA512 hash of qusly-setup-0.1.0.exe:
7743f4155840e3b19fb5625ecd298007e17167b48ea95c3d633a5a6d254a897e4bacaefd2089e820daf739128c2409649fcc3409541ace098c361268ce7890c9

in the latest.yml:
sha512: d0P0FVhA47GftWJezSmAB+FxZ7SOqVw9YzpabSVKiX5LrK79IInoINr3ORKMJAlkn8w0CVQazgmMNhJozniQyQ==

Details panel

  • file name
  • size
  • remote path
  • owner
  • group
  • modification date

File context menu

  • download
  • open
  • open in new tab
  • add to bookmarks
  • cut
  • paste
  • delete
  • rename
  • properties

Error: Module did not self-register

When I run npm run start I get the following error:

> [email protected] start /home/stexe/projects/qusly
> cross-env ENV='dev' electron .

App threw an error during load
Error: Module did not self-register.
    at process.func (electron/js2c/asar.js:140:31)
    at process.func [as dlopen] (electron/js2c/asar.js:140:31)
    at Object.Module._extensions..node (internal/modules/cjs/loader.js:1016:18)
    at Object.func (electron/js2c/asar.js:140:31)
    at Object.func [as .node] (electron/js2c/asar.js:140:31)
    at Module.load (internal/modules/cjs/loader.js:816:32)
    at Module._load (internal/modules/cjs/loader.js:728:14)
    at Module._load (electron/js2c/asar.js:717:26)
    at Function.Module._load (electron/js2c/asar.js:717:26)
    at Module.require (internal/modules/cjs/loader.js:853:19)

Node.JS v12.18.3 LTS

I found the solution here and successfully applied it.

I propose to mention this problem and its solution in the README file.

File downloading isn't working properly

To reproduce, choose Download from the context menu on any file. Either file downloading isn't working, or it's not apparent where the downloaded file is located.

Parameter 'e' implicitly has an 'any' type

To reproduce run npm run dev from the latest master:

ERROR in /home/stexe/projects/qusly/src/renderer/components/Dropdown/index.tsx(145,31):
[1] TS7006: Parameter 'e' implicitly has an 'any' type.
[1] Version: typescript 3.8.3

Adding the MouseEvent type hint for e resolves the error.

Move the core part to the main process

Qusly-Core doesn't seem to work with app.allowRendererProcessReuse option enabled. Since Electron 11 will disable ability to change it, I've decided to move the core part of Qusly to the main process. This includes connection clients.

Import/Export of sites list

Most of the ftp clients offers import from filezilla for example, that could be awesome if qusly could import .xml list of sites.

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.