mirror of
https://github.com/torrentpier/torrentpier
synced 2025-08-21 22:03:49 -07:00
feat: add comprehensive .gitignore for Laravel, macOS, Windows, and PhpStorm
This commit introduces a detailed .gitignore file to exclude unnecessary files and directories for Laravel projects, macOS, Windows, and PhpStorm environments. It enhances project cleanliness and prevents clutter in version control by ignoring common temporary files, build artifacts, and environment-specific configurations.
This commit is contained in:
parent
9ddfd768cc
commit
da19faf043
2 changed files with 184 additions and 155 deletions
176
.gitignore
vendored
176
.gitignore
vendored
|
@ -0,0 +1,176 @@
|
|||
# Created by https://www.toptal.com/developers/gitignore/api/macos,windows,laravel,phpstorm+all
|
||||
# Edit at https://www.toptal.com/developers/gitignore?templates=macos,windows,laravel,phpstorm+all
|
||||
|
||||
### Laravel ###
|
||||
/vendor/
|
||||
node_modules/
|
||||
npm-debug.log
|
||||
yarn-error.log
|
||||
|
||||
# Laravel 4 specific
|
||||
bootstrap/compiled.php
|
||||
app/storage/
|
||||
|
||||
# Laravel 5 & Lumen specific
|
||||
public/storage
|
||||
public/hot
|
||||
|
||||
# Laravel 5 & Lumen specific with changed public path
|
||||
public_html/storage
|
||||
public_html/hot
|
||||
|
||||
storage/*.key
|
||||
.env
|
||||
Homestead.yaml
|
||||
Homestead.json
|
||||
/.vagrant
|
||||
.phpunit.result.cache
|
||||
|
||||
### macOS ###
|
||||
# General
|
||||
.DS_Store
|
||||
.AppleDouble
|
||||
.LSOverride
|
||||
|
||||
# Icon must end with two \r
|
||||
Icon
|
||||
|
||||
|
||||
# Thumbnails
|
||||
._*
|
||||
|
||||
# Files that might appear in the root of a volume
|
||||
.DocumentRevisions-V100
|
||||
.fseventsd
|
||||
.Spotlight-V100
|
||||
.TemporaryItems
|
||||
.Trashes
|
||||
.VolumeIcon.icns
|
||||
.com.apple.timemachine.donotpresent
|
||||
|
||||
# Directories potentially created on remote AFP share
|
||||
.AppleDB
|
||||
.AppleDesktop
|
||||
Network Trash Folder
|
||||
Temporary Items
|
||||
.apdisk
|
||||
|
||||
### macOS Patch ###
|
||||
# iCloud generated files
|
||||
*.icloud
|
||||
|
||||
### PhpStorm+all ###
|
||||
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
|
||||
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
|
||||
|
||||
# User-specific stuff
|
||||
.idea/**/workspace.xml
|
||||
.idea/**/tasks.xml
|
||||
.idea/**/usage.statistics.xml
|
||||
.idea/**/dictionaries
|
||||
.idea/**/shelf
|
||||
|
||||
# AWS User-specific
|
||||
.idea/**/aws.xml
|
||||
|
||||
# Generated files
|
||||
.idea/**/contentModel.xml
|
||||
|
||||
# Sensitive or high-churn files
|
||||
.idea/**/dataSources/
|
||||
.idea/**/dataSources.ids
|
||||
.idea/**/dataSources.local.xml
|
||||
.idea/**/sqlDataSources.xml
|
||||
.idea/**/dynamic.xml
|
||||
.idea/**/uiDesigner.xml
|
||||
.idea/**/dbnavigator.xml
|
||||
|
||||
# Gradle
|
||||
.idea/**/gradle.xml
|
||||
.idea/**/libraries
|
||||
|
||||
# Gradle and Maven with auto-import
|
||||
# When using Gradle or Maven with auto-import, you should exclude module files,
|
||||
# since they will be recreated, and may cause churn. Uncomment if using
|
||||
# auto-import.
|
||||
# .idea/artifacts
|
||||
# .idea/compiler.xml
|
||||
# .idea/jarRepositories.xml
|
||||
# .idea/modules.xml
|
||||
# .idea/*.iml
|
||||
# .idea/modules
|
||||
# *.iml
|
||||
# *.ipr
|
||||
|
||||
# CMake
|
||||
cmake-build-*/
|
||||
|
||||
# Mongo Explorer plugin
|
||||
.idea/**/mongoSettings.xml
|
||||
|
||||
# File-based project format
|
||||
*.iws
|
||||
|
||||
# IntelliJ
|
||||
out/
|
||||
|
||||
# mpeltonen/sbt-idea plugin
|
||||
.idea_modules/
|
||||
|
||||
# JIRA plugin
|
||||
atlassian-ide-plugin.xml
|
||||
|
||||
# Cursive Clojure plugin
|
||||
.idea/replstate.xml
|
||||
|
||||
# SonarLint plugin
|
||||
.idea/sonarlint/
|
||||
|
||||
# Crashlytics plugin (for Android Studio and IntelliJ)
|
||||
com_crashlytics_export_strings.xml
|
||||
crashlytics.properties
|
||||
crashlytics-build.properties
|
||||
fabric.properties
|
||||
|
||||
# Editor-based Rest Client
|
||||
.idea/httpRequests
|
||||
|
||||
# Android studio 3.1+ serialized cache file
|
||||
.idea/caches/build_file_checksums.ser
|
||||
|
||||
### PhpStorm+all Patch ###
|
||||
# Ignore everything but code style settings and run configurations
|
||||
# that are supposed to be shared within teams.
|
||||
|
||||
.idea/*
|
||||
|
||||
!.idea/codeStyles
|
||||
!.idea/runConfigurations
|
||||
|
||||
### Windows ###
|
||||
# Windows thumbnail cache files
|
||||
Thumbs.db
|
||||
Thumbs.db:encryptable
|
||||
ehthumbs.db
|
||||
ehthumbs_vista.db
|
||||
|
||||
# Dump file
|
||||
*.stackdump
|
||||
|
||||
# Folder config file
|
||||
[Dd]esktop.ini
|
||||
|
||||
# Recycle Bin used on file shares
|
||||
$RECYCLE.BIN/
|
||||
|
||||
# Windows Installer files
|
||||
*.cab
|
||||
*.msi
|
||||
*.msix
|
||||
*.msm
|
||||
*.msp
|
||||
|
||||
# Windows shortcuts
|
||||
*.lnk
|
||||
|
||||
# End of https://www.toptal.com/developers/gitignore/api/macos,windows,laravel,phpstorm+all
|
163
README.md
163
README.md
|
@ -5,184 +5,37 @@
|
|||
<br/>
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://github.com/torrentpier/torrentpier/blob/master/LICENSE"><img src="https://img.shields.io/github/license/torrentpier/torrentpier" alt="License"></a>
|
||||
<a href="https://packagist.org/packages/torrentpier/torrentpier"><img src="https://img.shields.io/packagist/stars/torrentpier/torrentpier" alt="Stars Packagist"></a>
|
||||
<a href="https://crowdin.com/project/torrentpier"><img src="https://badges.crowdin.net/torrentpier/localized.svg" alt="Crowdin"></a>
|
||||
<a href="https://nightly.link/torrentpier/torrentpier/workflows/ci/master/TorrentPier-master"><img src="https://img.shields.io/badge/Nightly%20release-gray?logo=hackthebox&logoColor=fff" alt="TorrentPier nightly"></a>
|
||||
<a href="https://packagist.org/packages/torrentpier/torrentpier"><img src="https://img.shields.io/packagist/dt/torrentpier/torrentpier" alt="Downloads"></a>
|
||||
<a href="https://packagist.org/packages/torrentpier/torrentpier"><img src="https://img.shields.io/packagist/v/torrentpier/torrentpier" alt="Version"></a>
|
||||
<a href="https://github.com/torrentpier/torrentpier/releases"><img src="https://img.shields.io/github/release-date/torrentpier/torrentpier" alt="Last release"></a>
|
||||
<img src="https://img.shields.io/github/repo-size/torrentpier/torrentpier" alt="Size">
|
||||
<a href="https://github.com/SamKirkland/FTP-Deploy-Action"><img src="https://img.shields.io/badge/Deployed to TorrentPier Demo with-FTP DEPLOY ACTION-%3CCOLOR%3E?color=2b9348" alt="Deployed to TorrentPier Demo with FTP Deploy Action"></a>
|
||||
</p>
|
||||
|
||||
## 🐂 About TorrentPier
|
||||
|
||||
TorrentPier — bull-powered BitTorrent Public/Private tracker engine, written in PHP. High speed, simple modifications, load-balanced
|
||||
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](https://torrentpier.com), 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](https://github.com/torrentpier/torrentpier/issues) and go from there.
|
||||
TorrentPier is currently being **completely rewritten from scratch on Laravel**. The current codebase may not reflect the final product, and code downloaded from the `dexter` branch may not include promised features.
|
||||
|
||||
> [!WARNING]
|
||||
> This branch contains **development code** that is not ready for production use. For stable releases, please download from the [GitHub releases](https://github.com/torrentpier/torrentpier/releases) or use the [download center](https://nightly.link/torrentpier/torrentpier/workflows/ci/master/TorrentPier-master).
|
||||
|
||||
> [!NOTE]
|
||||
> TorrentPier 3.0 will introduce breaking changes. Existing installations should remain on 2.x versions until ready to migrate to the new architecture.
|
||||
> The legacy codebase (v2.x) can be found on the **master branch**. This Laravel rewrite (v3.0) will introduce breaking changes and is not backward compatible.
|
||||
|
||||
## ✨ Features
|
||||
* Rich forum with browsing/moderation tools
|
||||
* High-load capable, heavily configurable announcer
|
||||
* Scrape support
|
||||
* FreeLeech
|
||||
* [TorrServer integration](https://github.com/YouROK/TorrServer) support
|
||||
* 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)
|
||||
* Multilingual support
|
||||
* 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](install/nginx.conf)) / caddy ([example config](install/Caddyfile))
|
||||
* 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](https://github.com/torrentpier/autoinstall) repository with detailed instructions.
|
||||
|
||||
> [!NOTE]
|
||||
> Thanks to [Sergei Solovev](https://github.com/SeAnSolovev) for this installation script ❤️
|
||||
|
||||
### Quick (For web-panels) ☕️
|
||||
|
||||
1. Select the folder where you want TorrentPier installed
|
||||
```shell
|
||||
cd /path/to/public_html
|
||||
```
|
||||
2. Download the latest version of TorrentPier
|
||||
```shell
|
||||
sudo git clone https://github.com/torrentpier/torrentpier.git .
|
||||
```
|
||||
3. After completing, execute the command below and follow the instructions
|
||||
```shell
|
||||
php install.php
|
||||
```
|
||||
4. Voila! ✨
|
||||
|
||||
### Manual 🔩
|
||||
|
||||
1. Install [Composer](https://getcomposer.org/)
|
||||
2. Run the following command to create the TorrentPier project
|
||||
```shell
|
||||
composer create-project torrentpier/torrentpier
|
||||
```
|
||||
3. [Check our system requirements](#-requirements)
|
||||
4. After, run this command in the project directory to install Composer dependencies
|
||||
```shell
|
||||
composer install
|
||||
```
|
||||
5. Edit database configuration settings in the environment (`.env.example`), after, rename to `.env`
|
||||
6. Create a database and run migrations to set up the schema
|
||||
```shell
|
||||
php vendor/bin/phinx migrate --configuration=phinx.php
|
||||
```
|
||||
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! ✨
|
||||
|
||||
> [!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 👣
|
||||
|
||||
1. Edit these files:
|
||||
* `favicon.png` (change to your own)
|
||||
* `robots.txt` (change the addresses in lines `Host` and `Sitemap` to your own)
|
||||
2. 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](https://github.com/torrentpier/torrentpier/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:
|
||||
|
||||
```shell
|
||||
# Run all tests
|
||||
./vendor/bin/pest
|
||||
|
||||
# Run with coverage
|
||||
./vendor/bin/pest --coverage
|
||||
```
|
||||
|
||||
For detailed testing documentation, see [tests/README.md](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](CONTRIBUTING.md) and [code of conduct](CODE_OF_CONDUCT.md) 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!
|
||||
|
||||
<a href="https://github.com/torrentpier/torrentpier/graphs/contributors">
|
||||
<img src="https://contrib.rocks/image?repo=torrentpier/torrentpier" alt="Contributors"/>
|
||||
</a>
|
||||
|
||||
Made with [contrib.rocks](https://contrib.rocks).
|
||||
|
||||
## 💞 Sponsoring
|
||||
|
||||
Support this project by becoming a sponsor or a backer.
|
||||
|
||||
[](https://opencollective.com/torrentpier)
|
||||
[](https://opencollective.com/torrentpier)
|
||||
|
||||
<details>
|
||||
<summary>Monero</summary>
|
||||
|
||||
```
|
||||
42zJE3FDvN8foP9QYgDrBjgtd7h2FipGCGmAcmG5VFQuRkJBGMbCvoLSmivepmAMEgik2E8MPWUzKaoYsGCtmhvL7ZN73jh
|
||||
```
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>YooMoney</summary>
|
||||
|
||||
```
|
||||
4100118022415720
|
||||
```
|
||||
</details>
|
||||
|
||||
## 📦 Versioning
|
||||
|
||||
We use [SemVer](http://semver.org/) for versioning. For the versions available, see the [tags on this repository](https://github.com/torrentpier/torrentpier/tags).
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue