
Show HN: Ffftp – A Minimal FTP Client Built on Electron - mitchas
http://ffftp.site/
======
drc0
minimal is clearly referred to the UI, and not the ~50MB download.

~~~
geofft
At what point do we get an Electron runtime that can be distributed (and kept
up-to-date) separately from the apps using Electron?

.NET does this, Java does this, DirectX does this, etc.

~~~
kethinov
I have wondered this for some time. Why is making a common runtime for
Electron so difficult?

~~~
strig
Looks like it is currently being worked on:
[https://github.com/electron/electron/issues/673](https://github.com/electron/electron/issues/673)

------
throwaway2016a
Nice work.

Does it support SFTP too? From a operational perspective FTP itself should be
avoided for anything except public drop-box applications (IMHO).

Also, best practice in node.js (and electron too) is to not put your
node_modules folder in Git. You should add it to a '.gitignore' file.

~~~
mitchas
Yeah, I really have to spend some time cleaning everything up. The code itself
is pretty messy too and needs to especially be split up into smaller files.

This is the first electron or even real node projects I've worked on from
scratch, so I'm still getting used to everything.

~~~
benmcnelly
I tried doing this exact same thing and it wasn't as quick/easy as I hoped so
I bailed, so first off, thank you for making it, and second, don't worry that
its messy at least you got it started and that is the hard part.

~~~
mitchas
Oh god I nearly bailed as well. Some things were a huge pain to get working.

That's why the code is so messy. A lot of old code left over from trial/error
- and a lot of terrible loops to prevent dual FTP connections (which would
error).

------
cweagans
Okay, but why? No offense, but do we really need another FTP client in 2016?

~~~
quotha
what is a good, free ftp client for mac os?

~~~
jgalloway___
Try FileZilla ..

[https://filezilla-project.org/download.php?platform=osx](https://filezilla-
project.org/download.php?platform=osx)

------
coenhyde
Isn't there some moral violation here? The app looks great but we really
really should not be encouraging people to use FTP. Anyone using FTP should
feel weight of a thousand suns of shame.

~~~
mitchas
Haha. I rarely use it myself - basically only for the few freelance clients I
work with where they pass me the FTP credentials to make a change to a site.
But for the little bit I use it, I wanted to use a program I liked :)

------
no_protocol
I am not a fan of the way you have copied and pasted code from multiple Github
Gists and/or StackOverflow without attribution.

~~~
mitchas
You're going to make that accusation without specifying what? Because I'm
generally curious what you found.

~~~
no_protocol
I only looked at one file. [0]

The 'filesize' section is from [1], only the word 'bytes' has changed to 'B'
and 'filesize' in two places. It looks like there are other copies of this
same snippet in a Google search, but this one shows direct descent from [2]
via the 'forked from' tag, so is probably the root of the trail. Not saying
that's where you got it from, but this is clearly a derivative work.

Then your 'showFocus' section is from [3] and [4], both posted under the same
username. I can't immediately see any other path this piece has developed from
and it doesn't seem as significant, but your copy only differs by some
trailing spaces.

I stopped looking after realizing over 50% of the first file I looked at was
stolen from other sources without attribution.

[0]
[https://github.com/mitchas/ffftp/blob/master/app/app.js](https://github.com/mitchas/ffftp/blob/master/app/app.js)

[1]
[https://gist.github.com/napoli1890/d33c7b9056e77a8670874e93d...](https://gist.github.com/napoli1890/d33c7b9056e77a8670874e93da3e992b)

[2]
[https://gist.github.com/thomseddon/3511330](https://gist.github.com/thomseddon/3511330)

[3] [http://stackoverflow.com/questions/22776662/catch-ng-show-
ev...](http://stackoverflow.com/questions/22776662/catch-ng-show-event-and-
focus-input-field/25870446#25870446)

[4]
[https://gist.github.com/ezsi/77a708fde8af5cb4d239](https://gist.github.com/ezsi/77a708fde8af5cb4d239)

------
dkuntz2
"minimal", "electron" ???

So running an entire web browser, separate from your actual web browser is
minimal?

------
dimitrov
Lots of harsh language in this thread. Calling things awful, horrible and
garbage isn't advancing the discussion in any sort. Stay civil.

~~~
mitchas
Haha. I knew it'd be controversial on HN - especially with all the power
users. It's more for designers/frontend who barely use FTP.

------
milankragujevic
If you're targeting Windows, I'd recommend writing a GUI in PHP-Desktop, if
you know PHP and can handle working with IE8 without destroying your PC in
anger... The binaries are only 5MB + your code, and it works pretty well.

------
Posibyte
I noticed it's phoning home to Google to do tracking. Is there a way to opt
out of that?

~~~
mitchas
I added it last minute, and it doesn't even work very well with packaged
electron apps, so I'll probably remove it. I was just curious about how often
it is being used.

------
andrewfromx
could not copy paste my username and password into text fields!

~~~
mitchas
Wow. That's a weird issue I never noticed since I have the credentials I use
memorized.

I'll try to figure it out.

------
iKlsR
Isn't one of the selling points of electron that it's cross platform, whenever
I find a good app it's never available for the OS where I'd use it.

------
mosselman
This looks great! I really like the old school style.

------
andrewfromx
when I entered info it said connected to servername but then nothing happened.
Could not get list of files.

------
problems
Must we wreck all the high quality GUIs we had and replace them with non-
standardized, ugly and bloated Electron garbage?

This would be a much better use for Qt than Electron. But I guess that's not
hip enough anymore.

~~~
snowpanda
What you call garbage, might be good looking to someone else. He did not say
he's trying to replace other GUIs, there's a good use for this. Calling
someone's work garbage after you haven't even extensively tried it (it was
posted 30 minutes ago) is uncalled for. I think it looks promising and look
forward to trying it when I get home.

~~~
swiley
Electron is objectively horrible. The only upsides are 1 "it's easy" and 2
"it's pretty" neither of which make for efficient or minimal programs. To be
quite honest, "pretty" GUIs are usually the worst anyway.

