{"id":22012750,"url":"https://github.com/joybiswas007/torrents-api","last_synced_at":"2025-05-06T21:42:57.243Z","repository":{"id":196323964,"uuid":"694994329","full_name":"joybiswas007/torrents-api","owner":"joybiswas007","description":"Unofficial public torrent trackers API written in Node.js.","archived":false,"fork":false,"pushed_at":"2024-06-13T02:38:34.000Z","size":497,"stargazers_count":10,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-31T03:12:44.067Z","etag":null,"topics":["api","bitsearch","knaben","node","nodejs","public-trackers","rest-api","search","search-engine","torlock","torrent","torrents"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/joybiswas007.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-09-22T06:07:11.000Z","updated_at":"2025-02-22T16:50:17.000Z","dependencies_parsed_at":"2024-01-08T09:25:34.150Z","dependency_job_id":"113c3b08-5f24-45aa-90f5-1658f59b17a7","html_url":"https://github.com/joybiswas007/torrents-api","commit_stats":null,"previous_names":["joybiswas007/torrents-api"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joybiswas007%2Ftorrents-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joybiswas007%2Ftorrents-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joybiswas007%2Ftorrents-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joybiswas007%2Ftorrents-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/joybiswas007","download_url":"https://codeload.github.com/joybiswas007/torrents-api/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252776015,"owners_count":21802458,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","bitsearch","knaben","node","nodejs","public-trackers","rest-api","search","search-engine","torlock","torrent","torrents"],"created_at":"2024-11-30T03:14:18.525Z","updated_at":"2025-05-06T21:42:57.210Z","avatar_url":"https://github.com/joybiswas007.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Torrents API\n\nUnofficial public torrent trackers API written in Node.js.\n\n## Available routes\n\n| Route                          | Description    | Category |\n| ------------------------------ | -------------- | -------- |\n| /torrents/api/v1/1337x         | 1337x          | General  |\n| /torrents/api/v1/bitsearch     | Bitsearch      | General  |\n| /torrents/api/v1/torlock       | Torlock        | General  |\n| /torrents/api/v1/knaben        | Knaben         | General  |\n| /torrents/api/v1/torrentgalaxy | TorrentGalaxy  | General  |\n| /torrents/api/v1/zooqle        | Zooqle         | General  |\n| /torrents/api/v1/magnetdl      | MagnetDL       | General  |\n| /torrents/api/v1/thepiratebay  | The Pirate Bay | General  |\n| /torrents/api/v1/glotorrents   | GloTorrents    | General  |\n| /torrents/api/v1/limetorrents  | LimeTorrents   | General  |\n| /torrents/api/v1/pirateiro     | Pirateiro      | General  |\n| /torrents/api/v1/nyaa          | Nyaa           | Anime    |\n| /torrents/api/v1/anidex        | Anidex         | Anime    |\n| /torrents/api/v1/animetosho    | Anime Tosho    | Anime    |\n| /torrents/api/v1/torrentz2     | Torrentz2      | General  |\n| /torrents/api/v1/gktorrent     | GkTorrent      | General  |\n| /torrents/api/v1/linuxtracker  | LinuxTracker   | Linux    |\n| /torrents/api/v1/rutor         | rutor          | General  |\n| /search                        | Search the DB  | Database |\n\n## Usage\n\nrequires Node version \u003e=10.0.0\n\nApi doesn't show any dead torrents in search result.\n\nPayload examples:\n\n```\n*routes:\nmethod: POST\nContent-Type: application/json\n\n{   \"page\": 1 // this field is optional (page data type is number)\n    \"search\": \"search query\"\n}\n```\n\nOn Knaben's few search results you'll see\n`https://knaben.eu/live/dl/rutracker/?` this types of links\nwell fret NOT just add them to your client and it'll automatically\nstarts downloading like other magnet urls.\n\n## Pagination Supported Routes\n\n- bitsearch\n- knaben\n- limetorrents\n- nyaa\n- 1337x\n- rutor\n\n## Requirements\n\nNavigate to the cloned directory\n\nInstall dependencies: `npm install`\n\nCopy the `.env.sample` to `.env` using this command\n`cp .env.sample .env` file inside the directory and fill in all the details.\n\nAdded MongoDB support. Make sure to fill `MONGODB_URI`. NO data duplications. If a user\nsearch for something that is already present in db it won't be saved into db.\n\n1337x, Anidex, MagnetDL and Pirateiro has protection enabled. To bypass that\nneed cookies from their sites. So, visit these sites and open network tab\nsearch for something and get the Cookie value and save them in .env file.\n\nTorrentGalaxy shows captcha when you search for something. After completing the captcha open\nnetwork tab and search for something and grab the Cookie value also make sure Cookie value includes `fencekey`\n\n### Start server\n\nTo run the server on your local machine, execute the following command: `npm run dev`\n\u003cbr\u003eOn the server, use: `npm run start`\nYou also have the option to run it using `pm2`. If you don't have `pm2` installed, install it using the following command: `npm i pm2 -g`. Ensure pm2 automatically starts up when the server restarts.\nTo launch the API, use: `npm run server:up`\nTo refresh the API, use: `npm run server:restart`\nTo shut down the API, use: `npm run server:down`\n\nIt's recommend to running the API with PM2. It allows you to keep your Node. js applications running continuously: PM2 can automatically restart your application if it crashes, and it can also automatically reload your application when you update your code\n\n## Tech Stack\n\nThe Torrents API is built using the following technologies:\n\n- Node.js\n- Express.js\n- Axios\n- Cheerio\n- dotenv\n- Mongoose\n- Winston\n\n## Contributing\n\nPull requests are welcome. For major changes, please open an issue first\nto discuss what you would like to change.\n\nPlease make sure to update tests as appropriate.\n\nShow your support by starring [⭐️](https://github.com/joybiswas007/torrents-api/stargazers) this project!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoybiswas007%2Ftorrents-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjoybiswas007%2Ftorrents-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoybiswas007%2Ftorrents-api/lists"}