
Bull-powered BitTorrent tracker engine
🐂 About TorrentPier
TorrentPier — bull-powered BitTorrent Public/Private tracker engine, written in php. High speed, simple modification, high load
architecture. In addition, we have very helpful
official support forum, where it's possible to get any support and download modifications for engine.
🌈 Current status
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.
🛠 Features
- Rich forum browsing/moderation tools
- High-load capable, heavily configurable announcer
- Scrape support
- FreeLeech
- BitTorrent v2 support
- Event-based invite system
- Bonus points
- Atom feeds
- and many more.
Interface (default)

🔧 Requirements
- Apache / nginx
- MySQL 5.5.3 or above / MariaDB 10.0 or above / Percona
- PHP: 8.1 / 8.2
- PHP Extensions: mbstring, bcmath, intl, tidy (optional), xml, xmlwriter
💾 Installation
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
🔑 Access rights on folders and files
You must 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
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.
📌 Our recommendations
- 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.
- 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.
💚 Contributing / Contributors
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.
Support this project by becoming a sponsor or a backer.


📦 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.