TorrentPier. Main project repository
Go to file
2024-12-10 00:16:47 +07:00
.github Create .github/FUNDING.yml 2023-03-28 13:10:57 +03:00
admin Revert "Datastore improvements" 2024-12-08 22:29:55 +07:00
bt Improved BitTorrent clients ban functionality (#1657) 2024-10-14 20:41:22 +07:00
data Minor improvements (#1373) 2024-02-04 23:01:43 +07:00
install Minor improvements (#1702) 2024-12-08 22:19:48 +07:00
internal_data Release v2.4.5-rc.1 🦕 2024-12-09 00:08:54 +07:00
library New translations main.php (Ukrainian) (#1706) 2024-12-10 00:05:53 +07:00
sitemap Replace sitemap to the new external component. 2017-06-02 00:03:55 +03:00
src Fixed datastore issues (again) 2024-12-10 00:15:46 +07:00
styles Changed database encoding to utf8mb4_unicode_ci (#1684) 2024-11-27 23:13:15 +07:00
.editorconfig Minor improvements (#715) 2023-05-24 15:34:22 +07:00
.env.example Bring back DBG_USER (old debug method), fixed bugsnag handler (#1701) 2024-12-08 21:28:35 +07:00
.gitignore Update .gitignore 2024-11-17 14:01:08 +07:00
.htaccess Replaced deny from all with Require all denied 2023-02-17 23:45:00 +07:00
.styleci.yml TorrentPier Aurochs release preparation. 2017-06-12 15:28:45 +03:00
ajax.php Updated copyright year (#1201) 2023-12-12 22:14:01 +07:00
CHANGELOG.md Update CHANGELOG.md 2024-12-10 00:16:47 +07:00
CODE_OF_CONDUCT.md New project domain name. 2017-06-25 00:01:22 +03:00
common.php Bring back DBG_USER (old debug method), fixed bugsnag handler (#1701) 2024-12-08 21:28:35 +07:00
composer.json Improved TorrServer integration (#1624) 2024-08-29 21:51:30 +07:00
composer.lock Composer(deps): Bump monolog/monolog from 3.8.0 to 3.8.1 (#1699) 2024-12-06 13:23:24 +07:00
CONTRIBUTING.md Minor improvements (#1358) 2024-01-30 22:18:05 +07:00
cron.php Updated copyright year (#1201) 2023-12-12 22:14:01 +07:00
crowdin.yml Update Crowdin configuration file 2023-03-08 13:25:06 +03:00
dl_list.php Minor improvements (#1462) 2024-05-04 12:58:51 +07:00
dl.php Minor improvements (#1633) 2024-09-19 20:57:36 +07:00
favicon.png New logotype, favicon and css split & reformat. 2017-06-10 00:37:21 +03:00
feed.php Replaced some file exists to is file (#1276) 2023-12-27 20:08:00 +07:00
filelist.php Minor improvements (#1633) 2024-09-19 20:57:36 +07:00
group_edit.php Minor improvements (#1338) 2024-01-24 15:55:36 +07:00
group.php Minor improvements (#1633) 2024-09-19 20:57:36 +07:00
index.php Revert "Datastore improvements" 2024-12-08 22:29:55 +07:00
info.php Replaced some file exists to is file (#1276) 2023-12-27 20:08:00 +07:00
install.php Changed database encoding to utf8mb4_unicode_ci (#1684) 2024-11-27 23:13:15 +07:00
LICENSE Updated copyright year (#1201) 2023-12-12 22:14:01 +07:00
login.php Minor improvements (#1675) 2024-11-10 00:02:43 +07:00
memberlist.php Minor improvements (#1641) 2024-09-24 17:04:49 +07:00
modcp.php Merged some fixes from new-attachments branch (#1700) 2024-12-07 20:29:21 +07:00
playback_m3u.php Minor improvements (#1651) 2024-10-03 12:51:27 +07:00
poll.php Revert "Refactoring: Created constants for datetime values (#1648)" 2024-09-27 18:32:23 +07:00
posting.php Merged some fixes from new-attachments branch (#1700) 2024-12-07 20:29:21 +07:00
privmsg.php Revert "Refactoring: Created constants for datetime values (#1648)" 2024-09-27 18:32:23 +07:00
profile.php Updated copyright year (#1201) 2023-12-12 22:14:01 +07:00
README.md Minor improvements (#1702) 2024-12-08 22:19:48 +07:00
robots.txt Minor improvements (#1683) 2024-11-25 20:05:43 +07:00
search.php Revert "Datastore improvements" 2024-12-08 22:29:55 +07:00
SECURITY.md Update SECURITY.md 2024-08-07 23:09:29 +07:00
techstack.md Update tech stack docs (techstack.yml and techstack.md) (#1522) 2024-06-18 14:45:38 +07:00
techstack.yml Update tech stack docs (techstack.yml and techstack.md) (#1522) 2024-06-18 14:45:38 +07:00
terms.php Minor improvements (#1443) 2024-04-11 15:11:12 +07:00
tracker.php Revert "Datastore improvements" 2024-12-08 22:29:55 +07:00
viewforum.php Revert "Datastore improvements" 2024-12-08 22:29:55 +07:00
viewtopic.php Revert "Datastore improvements" 2024-12-08 22:29:55 +07:00

TorrentPier

Bull-powered BitTorrent tracker engine

License Stars Packagist Build status Crowdin Downloads Version Last release Size

🐂 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
  • TorrServer integration support
  • BitTorrent v2 support
  • Event-based invite system
  • Bonus points
  • Polls system
  • PM system
  • Multilingual support (Fully supported for now only Russia and English languages)
  • Atom feeds
  • ... and MUCH MORE!

🖥️ Demo

Note

Demo is resetting every 24 hours!

🔧 Requirements

  • Apache / nginx
  • MySQL 5.5.3 or above / MariaDB 10.0 or above / Percona
  • PHP: 8.1 / 8.2 / 8.3
  • PHP Extensions: mbstring, bcmath, intl, tidy (optional), xml, xmlwriter
  • Crontab (Recommended)

💾 Installation

For installation, select one of installation variants below.

Quick (Clean install) 🚀

Check out our autoinstall repository with detailed instructions.

Important

Thanks to Sergei Solovev for installation script ❤️

Quick (For web-panels)

  1. Select the folder where you want to install TorrentPier (cd /path/to/public_html)
  2. Download latest version of TorrentPier (sudo git clone https://github.com/torrentpier/torrentpier.git .)
  3. After, run php install.php and follow the given steps
  4. Voila!

Manual 🔩

  1. Install Composer
  2. Run composer create-project torrentpier/torrentpier
  3. Check our system requirements
  4. After, run composer install on the project directory
  5. Create database and import dump located at install/sql/mysql.sql
  6. Edit database configuration settings in the environment (.env.example), after, rename to .env
  7. 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
  8. Voila!

Important

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.

Additional steps 👣

  1. Edit domain name and domain port in the configuration file or a local copy ($reserved_name and $reserved_port)
  2. Edit this files:
    • favicon.png (change on your own)
    • robots.txt (change the addresses in lines Host and Sitemap on your own)
  3. Log in to the forum with admin/admin login/password and finish setting up via admin panel

🔐 Security vulnerabilities

If you discover a security vulnerability within TorrentPier, please follow our security policy, so we can address it promptly.

📌 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 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 renew your pull-request for compliance with these requirements. Just send it!

Contributors

Made with contrib.rocks.

💞 Sponsoring

Support this project by becoming a sponsor or a backer.

OpenCollective sponsors OpenCollective backers

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.