Giter Club home page Giter Club logo

jstorrent's Introduction

JSTorrent

Try it now in CWS

JSTorrent Available for install Chrome Web Store

Get the JSTorrent Helper Extension, which adds a right click "Add to JSTorrent" menu for magnet links and .torrent files


JSTorrent is the original Chrome Packaged/Platform App for downloading torrents. It stands for "JavaScript Torrent." It is perfect for cheap ARM Chromebooks when you need to torrent something, but also perfect for your high end Chromebook Pixel. :-) While it is specifically designed to integrate well with ChromeOS, it will also run on Windows / Mac / Linux, or anywhere else you are able to install Google Chrome.

JSTorrent is the world's most secure Torrent client. It runs in the Chrome sandbox, so it does not have access to any files on your system (except the Download folder you choose). With JSTorrent, you are in control.

I don't frequently keep this readme very up to date. You can find the actual changelogs in the Chrome Web Store listing, or sometimes in the CHANGES.txt

One of my main goals with this project is to get it nearly as fast as the other clients. Disk I/O is pretty slow with the chrome APIs, which I am working on optimizing for. Some other bottlenecks at this point include SHA1 hashing (done in a worker) as well as suboptimal peer selection and queueing.

I am frequently adding features and improvements to this project, and welcome user feedback, as it directs the future growth of the program.

This software was totally rewritten from scratch (Dec 2013). This is about the third time I've written a torrent client, so it should be the least buggy of them all :-)

I'm currently charging $3 for the install on the chrome web store. But you can also run it from source here. I want to do some kind of donate/freemium model, once I can figure out this: http://stackoverflow.com/questions/21147236/get-user-openid-url-without-user-interaction (I want to be able to detect users who already paid $3)

The source code is available here for auditing and education purposes. I believe open software is great, and I would not ask any user to install something that they can't reasonably verify is not doing anything malicious. However, the license does not permit redistribution of the jstorrent code or assets in your own projects.

Installation:

Most people would usually install by the Chrome Web Store (link) but you can install from source too.

  • Click the "Download ZIP" button near the top of the page.***
  • Unzip it.
  • Visit "chrome://extensions"
  • Click the checkbox "Developer Mode" on the top
  • Click "Load unpacked extension"
  • Browse to the unzipped file then press "Open"
  • You're done! (Note that you will not get updates this way, you will need to manually update)
  • NOTE***: This project now uses a submodule "web-server-chrome" (https://github.com/kzahel/web-server-chrome) so you probably have to download that project separately and put it in the "js" folder. (you may need to rename folder from "web-server-chrome-master" to "web-server-chrome")

Websites:

Special New Features

  • Support downloading directly to directory of choice
    • download to external media (usb drives)
    • Per-torrent download directories
    • multiple download directories
    • skip downloading files
  • Unlimited size downloads (multi gigabyte torrents)

Private tracker support notes for site admins

Private tracker support is very lacking. I don't know of any sites that have whitelisted/allowed JSTorrent. I am working on addressing this by improving the seeding and tracker funcions.

  • The "User-Agent" header looks like: (JSTorrent/{version}) (current x-user-agent string version: "JSTorrent/2480") for version 2.4.8
  • The peer id begins with "-JS{version}-", currently peer id begins with "-JS2480-"

I have disabled the "spoofing" feature.

Todo

  • see TODO.txt
  • too many things
  • figure out chrome.fileSystem getting in broken state bugs (persistently problematic)
  • smarter disk cache
  • better seeding disk access / read entire piece at a time
  • implement i18n
  • pNaCL sha1 hashing benchmark vs native JS vs window.crypto
  • use chrome.identity and GCM for remote control (pushMessaging) (in progress)
  • DHT
  • uPNP+bind/listen TCP - (in progress)
  • SOCKS5 proxy support
  • headless operation (in progress)

Credits

jstorrent's People

Contributors

beaufortfrancois avatar kzahel avatar tadeokondrak 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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

jstorrent's Issues

I'm confused - where is the app?????

I paid for the JSTorrennt app yesterday, and paid for it using my Google Wallet account and even still not it says i haven't paid for it. I have even tried to use my partners account to pay for it again, and again, it still hasn't worked. Am I doing something wrong?? when i go onto the app of the store, it says 'free' so i click on it, and then it says 'installing' and then goes back onto the 'free' section again. The app isn't appearing anywhere in my downloads. Where do i find it, if it has downloaded??????? I'm so confused.

Error Persisting Piece : QuotaExceededError

It's happening to all my torrents after I force start them. After about a minute they all fail. I am sometimes able to get an increase in percentage but as I have to keep force starting, it's not really viable.

I am using JSTorrent version 2.2.6 and the platform is on a Chromebook (HP11)

Google Chrome 34.0.1847.134 (Official Build 266018)
Platform 5500.130.0 (Official Build) stable-channel daisy_spring
Blink 537.36 (@171891)
JavaScript V8 3.24.35.33

Error With Torrent

I keep receiving the following error message:

screenshot 2014-05-20 at 19 11 31

Output from consol:

Received valid infodict! peerconnection.js:889
saving torrent metadata
Torrent
torrent.js:659
truncate error
ProgressEvent
diskio.js:610
report basic job error
Object

BasicJob
diskio.js:638
TRUNCATE! diskio.js:951
truncate writer error, wanted 262144 InvalidStateError
ProgressEvent
diskio.js:943
report basic job error
Object

BasicJob
diskio.js:638
writer error
ProgressEvent
InvalidStateError diskio.js:1132
number of active torrents now 0 client.js:195
POWER:release keep awake client.js:197
cancelTorrentJobs diskio.js:1239
onTorrentError
Arguments[4]
app.js:495
torrent error:
Array[3]
torrent.js:1120
report basic job error
Object

BasicJob
diskio.js:638

chrome-extension://invalid/ when trying to "Play" video

I recently purchased your app for the ability to play streaming torrents on my Samsung Chromebook, and ultimately cast them to the Chromecast. For my first test, I initiated a torrent and waited a few minutes for it to download a decent chunk of the movie. Then I navigated to the Files tab and clicked the "Play" link. The link launched a tab in ChromeOS with the url "chrome-extension://invalid/". As you might expect, no movie was playing.

Thoughts?

udp connection response

Hi

Tried searching for this issue, but can't seem to find a response...
I get the above error for over half the torrents I've tried
mostly download from K_A_Torrents, some worked just fine

I've tried port fowarding 8543 on my sky hub but can't get it open when checked from external website...is this the issue?

Ta
Liam

Cutoff at the bottom of all "list-type" menus.

As the title says, I'm experiencing cutoff at the bottom of the page for all menus that act as a list, such as the "Files" menu, the "Peers" menu, and the "Swarm" menu when scrolled all the way to the bottom.
screenshot 2014-03-24 at 6 54 20 pm
screenshot 2014-03-24 at 6 54 56 pm
screenshot 2014-03-24 at 6 55 06 pm

REALLY REALLY SLOW

How can I best configure JS Torrent to download faster.

My internet is not the issue.

Disk Space issue

The disk space seems really low. When I first used your app it was 1 GB now it is 400 MB. Do you know how I can increase it back to 1 GB. I have clean the disk space on the app, and the disk usage is at 0.00 but it still is around 400 MB.

Doesnt work

when i copy the address bar into the jst nothing happens or opens i had this app before the recent update it worked, any help????, like site suggestions (i use pirate bay and kat) and how to copy url???

Installation

im on a chrome book. I get and paid for the jstorrent and it never installs

FATAL DISK ERROR message poping up

A "FATAL DISK ERROR. Please restart the app" notification keeps popping up every minute or so while downloading a torrent. I am using the Samsung XE303C12-A01CA 11.6" Chromebook and i am using the beta channel. Just wanted to report this. My download appears to continue downloading despite the error message.

Paid version

I'm a bit confused here as I bought the app and now it's telling me that I haven't paid for it.

Constant errors

I have been trying to use this app for months and no matter what, I get errors. Does jstorrent even work? This happens constantly and its getting tiring. I have attached screenshots. What should I do to make it work, or get my money back??

screenshot 2014-04-29 at 7 07 05 pm

Will not even start to download.

When I add a .torrent file to the program, it does nothing for 30 seconds before a notification pops up saying
"No peers were received from any trackers. Unable to download. Try a more popular torrent or a different torrent site. Or you can
a) Add public trackers and reattempt
b) Do nothing"

I have an HP 11 Chromebook that I bought yesterday and am trying to set it up. There are not really any trackers or anything like that. What are my options? Thanks.

"No Peers were received from any trackers"

I purchased the extension a few days ago, it worked fine for a day and then started giving me this error for every file I tried to download. I did not change anything or alter anything it just suddenly started hanging at "start" and 0.0%. An error message pops up starting with "No Peers were received from any trackers...Add public trackers and reattempt" for every file I try to download.

I have tried removing the extension and readding it. I don't know what else to try, any ideas how to fix this? I have a folder selected and all.

Also, the torrent shows up in my desired folder, but its still not downloading.

No support for japanese or korean characters.

Presumably, there's no support for other characters either, but those are the only two I've tested. You end up with a jumbling of characters for the torrent name and a cluster of error messages popping up in your notifications.

can't find trackers

it worked fine once I figured out I needed to select a download location.

for the last couple of weeks I have been getting a "no trackers found" error message.

I'm using eztv.it and when I use the same site for my windows 7 desktop everything is fine.

any suggestions?

Private tracker

JS torrent works really well except for the private tracker I use (acrossthetasman.com)
Is there any work around for this?
Thanks

MIMECATEGORIES is not defined

I got this message when I clicked on "Files".

Unexpected Error!
ver 2.2.7. In file js/file.js at line 103, Uncaught ReferenceError
MIMECATEGORIES is not defined

Error with every torrent

Hey,

Since a week or so my JStorrent keeps giving errors, not one torrent has completed a download since. My Chromebook freezes or gets very slow when I start JStorrent and i'm getting this message alot:

Error with torrent: error persisting piece: entrygeterror

What can I do to fix this?

Please help!

Problem (small swarms)

Have had this program for a while. I just got the paid version and it doesnt work anymore. Everytime I add a torrent now. . . .

Under Completion Percentage it says NaN%

and then nothing happens.

Magnet URL cause JS error

After updating to the latest version, previously working magnet URLs case the error in the screenshot
screenshot 2014-01-18 at 11 52 39

(Edited screenshot for a smaller image)

First and Fourth links were added using a magnet URL like the following:
magnet:?xt=urn:btih:0000000000000000000000000000000000000000&dn=torrentname&tr=udp://tracker.openbittorrent.com:80&tr=udp://tracker.publicbt.com:80&tr=udp://tracker.istole.it:80&tr=http://tracker.istole.it&tr=http://fr33dom.h33t.com:3310/announce

Adding that caused the error displayed in the notification.
Tested with a same format magnet url used to download a file with the previous version and got the same error.

The other files are added by adding the .torrent file download URL and they work flawlessly.

If any other information are need let me know.

Does not work

I paid for this app and it does not work. I want a refund

Reporting bugs [disk timeout]

I encounter multiple errors from time to time (every 1 hour or so). I get notifications in ChromeOS notification area. Is there a way to report those errors back to you?
I'm running latest dev version on my Chromebook Pixel. I have a screen shot that I took for some errors. Most of those errors are related to disk issues. I save the files to a folder in the downloads folder. Usually if I hit start on the torrent again, it continues downloading without a problem.

error persisting piece: InvalidStateError

I started using jstorrent (downloaded the zip archive and loaded unpacked extension into Chrome browser on my Chromebox) yesterday and have run into this problem.

If I stop and start the torrent, it starts downloading for a while before encountering this same error again, stalling the progress of this torrent forever. I think this is a problem with writing the buffered downloaded pieces into the USB drive which is the destination for this torrent. It is ~78% complete but has stopped there with this error for some reason.

screenshot

Any help?

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.