Stars: 216
Forks: 78
Pull Requests: 623
Issues: 268
Watchers: 34
Last Updated: 2023-09-17 09:17:11
TorrentPier. Main project repository
License: MIT License
Languages: PHP, HTML, JavaScript, Smarty, CSS
https://torrentpier.com
Bull-powered BitTorrent tracker engine
TorrentPier — bull-powered BitTorrent tracker engine, written in php. High speed, simple modification, high load
architecture, built-in support for alternative compiled announcers (Ocelot, XBT). In addition, we have very helpful
official support forum, where among other things it is possible to test the live
demo, get any support and download modifications for engine.
TorrentPier is currently in active development. The goal is to remove all legacy code and rewrite existing to
modern standards. If you want to go deep on the code, check our issues
and go from there. The documentation will be translated into english in the near future, currently russian is the main language of it.
- Apache / nginx
- MySQL 5.5.3 or above / MariaDB 10.0 or above / Percona
- PHP: 7.4 / 8.0 / 8.1 / 8.2
- PHP Extensions: bcmath, intl, tidy (optional), xml, xmlwriter
For installation, you need to follow a few simple steps:
- Install Composer
- Run
composer create-project torrentpier/torrentpier
- After run
composer install
on the project directory
- Create database and import dump located at install/sql/mysql.sql
- Edit database configuration settings in the configuration file or a local copy (see below)
- Edit domain name in the configuration file or a local copy (see below)
- Edit domain ssl setting in the configuration file or a local copy (see below)
- Edit this files:
- favicon.png (change on your own)
- robots.txt (change the addresses in lines Host and Sitemap on your own)
- opensearch_desc.xml (change the description and address on your own)
- opensearch_desc_bt.xml (change the description and address on your own)
- Log in to the forum with admin/admin login/password and finish setting up via admin panel
You must provide write permissions to the specified folders:
data/avatars
data/torrent_files
internal_data/ajax_html
internal_data/atom
internal_data/cache
internal_data/log
internal_data/triggers
sitemap
The specific settings depend on the server you are using, but in general case we recommend chmod 0755 for folders,
and chmod 0644 for files in them. If you are not sure, leave it as is.
- The recommended way to run cron.php. - For significant tracker speed increase may be required to replace built-in cron.php by operating system daemon. For more
information about that you can read this thread on our support forum.
- Local configuration copy. - You can override the settings using one of these methods: configuration file library/config.local.php and the environment
file .env. Both files are created by copying the appropriate .example templates without extension. Local configuration files
should not be available for reading to anyone by setting up access rights for your web server.
- Ocelot installation. - We have built-in support for alternate compiled announcer — Ocelot. The configuration is in the file library/config.php,
the announcer is in the repository torrentpier/ocelot. You can read assembly instructions
on his repository or in this thread on our support forum.
- TMRR — Torrent Merkle Root Reader. - A tool for extracting, comparing and calculating file hashes for .torrent files,
compatible with the BitTorrent v2 protocol. Useful for finding the sources of the same copies of files on different trackers & DHT indexers that support BitTorrent v2 protocol,
thus reviving dead torrents, valuable Internet artifacts.
Documentation for TorrentPier can be found on the TorrentPier docs website.
Please read CONTRIBUTING.md for details on our code of conduct, and the process for
submitting pull requests to us. But we are always ready to renew your pull-request for compliance with
these requirements. Just send it.
Made with contrib.rocks.
💞 Sponsoring
Support this project by becoming a sponsor or a backer.
We use SemVer for versioning. For the versions available, see the tags on this repository.
This project is licensed under the MIT License - see the LICENSE file for details.