I saw "Python" and was going to comment a completely stand-alone* executable would be simpler, and then I scrolled and holy moly, there are a lot of features there! It would be quite some work to redo it in another lang.
Worth scrolling through util.py to see lots of hand-implemented code: MultipartParser, read_header(), read_socket_chunked(), html_escape(), atomic_move(), killtree ("still racy but i tried"), termsize(), etc
At one point in his demo, he uploads a file but terminates the upload more or less halfway. Then he begins downloading the file - which only progresses to the point it had been uploaded, and subsequently stalls indefinitely. And, finally, he finishes uploading the file (which gracefully resumes) and the file download (which is still running) seamlessly completes.
Copyparty is an amazing piece of software. I recommend watching the recent YouTube video for an overview[0]. The developer is a personal friend and my household is proud to own one of 20 limited edition copyparty disc releases.
The video BGM was quite familiar to me, as popularized by a certain former detective. (Those who don't assign that any special significance may nonetheless find it as royalty-free music from Dova-Syndrome: https://www.youtube.com/watch?v=kKg-aXVS1YI)
This is awesome. The readme is fun as heck and I just want to use the software based on that. I see nothing but complaints about nextcloud and others on r/selfhosted. I can't wait to try this out.
> No deps is great, but what I'm looking for is no bugs
I don’t think I’ve ever used a piece of software in my life that had no bugs. At least with no deps (vs say a nodejs project with 500 of them) then the bugs will only be in one place, the main software so ideally they can be fixed quickly.
Besides being useful, this just seems fun as heck after watching the demo video. I'm curious if folks have examples of other similarly fun/whimsical (but still useful!) software. I would submit https://fraidyc.at/ to the list.
Take a look at the known issues section regarding iPhones. It’s good evidence of apples non competitive behaviour regarding browser support. PWA/websites are not allowed to be good on iPhones.
As someone who has tried and failed to upload 2gb files on mobile data, only for the upload to fail at the last minute, this genuinely makes me want to play with it. There aren’t a lot of good drop-in solutions like this.
In addition to being an awesome piece of software, their self hosted demo server is the fastest web app I have seen in a long time ... and this is while trending on HN !
Amazing.
Now I am wondering, would it be technically possible to build a similar app but based on the syncthing protocol?
I really like syncthing but it would be cool to have a version where you could just easily share specific files with peers.
I have never heard of this before, but watching through their Youtube introduction, this might be one of the best pieces of software I've ever seen. Assuming it works as advertised, this could replace a few things I've been hosting myself.
This is awesome! The demo is really fun, nostalgic 90s vibes, it even lets me play chiptunes :). Keeping all dependencies optional and just making it a single file is great too!
I have a decent library of ebooks and music albums I (legally!) purchased from myriad sources. This sounds like the perfect solution to get that properly onto my LAN in an accessible form.
57 comments
[ 2.7 ms ] story [ 67.2 ms ] thread*It already has no deps
Great job there. A nice tool you've made.
Edit: already adressed: https://github.com/9001/copyparty?tab=readme-ov-file#copypar...
Yes when I heard it was python I immediately checked the dependencies expecting a ginormous list and found basically nothing. Incredibly impressive, just a few "stolen" libs here: https://github.com/9001/copyparty/tree/hovudstraum/copyparty...
Worth scrolling through util.py to see lots of hand-implemented code: MultipartParser, read_header(), read_socket_chunked(), html_escape(), atomic_move(), killtree ("still racy but i tried"), termsize(), etc
https://github.com/9001/copyparty/blob/hovudstraum/copyparty...
6k loc for http server/client handling transferring files, rss feed, etc. See `def run(self)` for main request parsing.
https://github.com/9001/copyparty/blob/hovudstraum/copyparty...
At one point in his demo, he uploads a file but terminates the upload more or less halfway. Then he begins downloading the file - which only progresses to the point it had been uploaded, and subsequently stalls indefinitely. And, finally, he finishes uploading the file (which gracefully resumes) and the file download (which is still running) seamlessly completes.
I found that particularly impressive.
By the way, the youtube video showcases this project really well.
[0] https://www.youtube.com/watch?v=15_-hgsX2V0
I don’t think I’ve ever used a piece of software in my life that had no bugs. At least with no deps (vs say a nodejs project with 500 of them) then the bugs will only be in one place, the main software so ideally they can be fixed quickly.
Amazing.
Now I am wondering, would it be technically possible to build a similar app but based on the syncthing protocol?
I really like syncthing but it would be cool to have a version where you could just easily share specific files with peers.
This is underselling it by at least three orders of magnitude. This is astonishing tool, you have to watch the demo video: https://www.youtube.com/watch?v=15_-hgsX2V0
[keeps watching video] what the fuck
> i want to learn python and/or programming and am considering looking at the copyparty source code
> do not