torrentpier / torrentpier
TorrentPier. Bull-powered BitTorrent tracker engine
Fund package maintenance!
torrentpier
Open Collective
Installs: 407
Dependents: 0
Suggesters: 0
Security: 2
Stars: 314
Watchers: 36
Forks: 84
Open Issues: 19
Type:project
Requires
- php: >=8.2
- arokettu/bencode: ^4.1.0
- arokettu/monsterid: ^4.1.0
- arokettu/random-polyfill: 1.0.2
- arokettu/torrent-file: ^5.2.1
- belomaxorka/captcha: 1.*
- bugsnag/bugsnag: ^v3.29.1
- claviska/simpleimage: ^4.0
- egulias/email-validator: ^4.0.1
- filp/whoops: ^2.15
- gemorroj/m3u-parser: ^6.0.1
- gigablah/sphinxphp: 2.0.8
- google/recaptcha: ^1.3
- jacklul/monolog-telegram: ^3.1
- josantonius/cookie: ^2.0
- league/flysystem: ^3.28
- longman/ip-tools: 1.2.1
- monolog/monolog: ^3.4
- nette/caching: ^3.3
- nette/database: ^3.2
- php-curl-class/php-curl-class: ^12.0.0
- robmorgan/phinx: ^0.16.9
- samdark/sitemap: 2.4.1
- symfony/mailer: ^7.3
- symfony/polyfill: v1.32.0
- vlucas/phpdotenv: ^5.5
- z4kn4fein/php-semver: ^v3.0.0
Requires (Dev)
- mockery/mockery: ^1.6
- pestphp/pest: ^3.8
- symfony/var-dumper: ^7.3
- dev-dexter
- v2.8.0
- v2.7.0
- v2.6.0
- v2.5.0
- v2.4.x-dev
- v2.4.6
- v2.4.6-alpha.4
- v2.4.6-alpha.3
- v2.4.6-alpha.2
- v2.4.6-alpha.1
- v2.4.5
- v2.4.5-rc.5
- v2.4.5-rc.4
- v2.4.5-rc.3
- v2.4.5-rc.2
- v2.4.5-rc.1
- v2.4.4
- v2.4.3
- v2.4.2
- v2.4.1
- v2.4.0
- v2.4.0-rc2
- v2.4.0-rc1
- v2.4.0-beta4
- v2.4.0-beta3
- v2.4.0-beta2
- v2.4.0-beta1
- v2.4.0-alpha4
- v2.4.0-alpha3
- v2.4.0-alpha2
- v2.4.0-alpha1
- v2.3.1
- v2.3.1-rc1
- 2.3.0.4-beta2
- 2.3.0.4-beta
- v2.3.0.3
- v2.3.0.2
- v2.3.0.1
- v2.3.0
- v2.2.3
- v2.2.2
- v2.2.1
- v2.2.0
- dev-laravel
- dev-dev/104
- dev-master
- dev-dev/013
- dev-feat-Added-canonical-links-support
- dev-feat-Added-`StopForumSpam`-integration
- dev-refactor-Disallow-registration-functionality
- dev-fix(posting)-Exception-on-too-long-topic-title
- dev-Added-in-build-multitracker
- dev-Added-posts-pin-feature
- dev-Anonymous-topics
- dev-Added-Docker-support
- dev-new-attachments
- dev-legacy-experimental
- dev-legacy-develop
This package is auto-updated.
Last update: 2025-06-23 12:58:55 UTC
README
Bull-powered BitTorrent tracker engine
๐ About TorrentPier
TorrentPier โ bull-powered BitTorrent Public/Private tracker engine, written in PHP. High speed, simple modifications, load-balanced architecture. In addition, we have a very helpful official support forum, where it's possible to get support and download modifications for the engine.
๐ Current status
TorrentPier is currently undergoing a major 3.0 rewrite to remove all legacy code and modernize the codebase to current PHP standards. Backward compatibility is not a priority - this release focuses on moving forward with clean, modern architecture. If you want to delve deep into the code, check our issues and go from there.
Note
TorrentPier 3.0 will introduce breaking changes. Existing installations should remain on 2.x versions until ready to migrate to the new architecture.
โจ Features
- Rich forum with browsing/moderation tools
- High-load capable, heavily configurable announcer
- Scrape support
- FreeLeech
- TorrServer integration support
- BitTorrent v2 support
- Event-based invite system
- Bonus points
- Polling system
- PM/DM system
- Multilingual support (Russian and English are currently fully supported, with others in the future)
- Atom/RSS feeds
- ... and so MUCH MORE!
๐ฅ๏ธ Demo
- URL: https://torrentpier.duckdns.org
- Username:
admin
- Password:
admin
Note
Demo resets every 24 hours!
๐ง Requirements
- Apache / nginx (example config) / caddy (example config)
- MySQL 5.5.3 or above (including MySQL 8.0+) / MariaDB 10.0 or above / Percona
- PHP: 8.3 / 8.4
- PHP Extensions: mbstring, gd, bcmath, intl, tidy (optional), xml, xmlwriter
- Crontab (Recommended)
๐พ Installation
For the installation, select one of the installation variants below:
Quick (Clean install) ๐
Check out our autoinstall repository with detailed instructions.
Note
Thanks to Sergei Solovev for this installation script โค๏ธ
Quick (For web-panels) โ๏ธ
- Select the folder where you want TorrentPier installed
cd /path/to/public_html
- Download the latest version of TorrentPier
sudo git clone https://github.com/torrentpier/torrentpier.git .
- After completing, execute the command below and follow the instructions
php install.php
- Voila! โจ
Manual ๐ฉ
- Install Composer
- Run the following command to create the TorrentPier project
composer create-project torrentpier/torrentpier
- Check our system requirements
- After, run this command in the project directory to install Composer dependencies
composer install
- Edit database configuration settings in the environment (
.env.example
), after, rename to.env
- Create a database and run migrations to set up the schema
php vendor/bin/phinx migrate --configuration=phinx.php
- Provide write permissions to the specified folders:
data/avatars
,data/uploads
,data/uploads/thumbs
internal_data/atom
,internal_data/cache
,internal_data/log
,internal_data/triggers
sitemap
- Voila! โจ
Tip
You can automate steps 4-7 by running php install.php
instead, which will guide you through the setup process interactively.
Important
The specific settings depend on the server you are using, but in general we recommend chmod 0755 for folders, and chmod 0644 for the files in them.
Additional steps ๐ฃ
- Edit these files:
favicon.png
(change to your own)robots.txt
(change the addresses in linesHost
andSitemap
to your own)
- Log in to the forum using the admin/admin login/password, and finish setting up via admin panel. Don't forget to change your password!
๐ Security vulnerabilities
If you discover a security vulnerability within TorrentPier, please follow our security policy, so we can address it promptly.
๐งช Testing
TorrentPier includes a comprehensive testing suite built with Pest PHP. Run tests to ensure code quality and system reliability:
# Run all tests ./vendor/bin/pest # Run with coverage ./vendor/bin/pest --coverage
For detailed testing documentation, see tests/README.md.
๐ Our recommendations
- It's recommended to run
cron.php
. - For significant tracker speed increase it may be required to replace the built-in cron.php with an operating system daemon. - Local configuration copy. - You can override the settings using the local configuration file
library/config.local.php
.
๐ Contributing / Contributors
Please read our contributing policy and code of conduct for details, and the process for submitting pull requests to us. But we are always ready to review 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.
Monero
42zJE3FDvN8foP9QYgDrBjgtd7h2FipGCGmAcmG5VFQuRkJBGMbCvoLSmivepmAMEgik2E8MPWUzKaoYsGCtmhvL7ZN73jh
YooMoney
4100118022415720
๐ฆ Versioning
We use SemVer for versioning. For the versions available, see the tags on this repository.
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.