docs(modpackchecker): Update README with correct structure and Technic status
- Updated file structure to show app/Http/Controllers and app/Console/Commands - Added explanation of why the app/ folder structure is used - Updated platform support table with working status - Added note about Technic API 401 error (investigation needed) Signed-off-by: Claude (Chronicler #63) <claude@firefrostgaming.com>
This commit is contained in:
@@ -43,12 +43,14 @@ A Pterodactyl Panel extension that checks modpack versions across CurseForge, Mo
|
||||
- (Future: Rate limit settings, notification preferences)
|
||||
|
||||
### Supported Platforms
|
||||
| Platform | ID Type | API Key Required |
|
||||
|----------|---------|------------------|
|
||||
| CurseForge | Numeric project ID | ✅ Yes |
|
||||
| Modrinth | Project ID or slug | ❌ No |
|
||||
| FTB | Numeric modpack ID | ❌ No |
|
||||
| Technic | URL slug | ❌ No |
|
||||
| Platform | ID Type | API Key Required | Status |
|
||||
|----------|---------|------------------|--------|
|
||||
| CurseForge | Numeric project ID | ✅ Yes | ✅ Working |
|
||||
| Modrinth | Project ID or slug | ❌ No | ✅ Working |
|
||||
| FTB | Numeric modpack ID | ❌ No | ✅ Working |
|
||||
| Technic | URL slug | ⚠️ Unknown | ❌ 401 Auth Error |
|
||||
|
||||
> **Note (April 2026):** Technic Platform API now returns 401 Unauthorized. They may have changed their authentication requirements. Investigation ongoing.
|
||||
|
||||
---
|
||||
|
||||
@@ -117,19 +119,21 @@ blueprint-extension/
|
||||
├── conf.yml # Blueprint configuration
|
||||
├── build.sh # Injection script (runs during blueprint -build)
|
||||
│
|
||||
├── Controllers/
|
||||
├── app/ # Merges into Pterodactyl's app/ via requests.app
|
||||
│ ├── Console/
|
||||
│ │ └── Commands/
|
||||
│ │ └── CheckModpackUpdates.php # Laravel cron command
|
||||
│ └── Http/
|
||||
│ └── Controllers/
|
||||
│ └── ModpackAPIController.php # API endpoints (manualCheck, getStatus)
|
||||
│
|
||||
├── admin/
|
||||
│ ├── controller.php # Admin panel logic
|
||||
│ └── view.blade.php # Admin panel UI
|
||||
│
|
||||
├── console/
|
||||
│ └── CheckModpackUpdates.php # Laravel cron command
|
||||
│
|
||||
├── database/
|
||||
│ └── migrations/
|
||||
│ └── 2024_XX_XX_create_modpackchecker_servers_table.php
|
||||
│ └── 2026_04_06_000000_create_modpackchecker_servers_table.php
|
||||
│
|
||||
├── routes/
|
||||
│ └── client.php # API route definitions
|
||||
@@ -141,6 +145,16 @@ blueprint-extension/
|
||||
└── UpdateBadge.tsx # Dashboard status dot component
|
||||
```
|
||||
|
||||
### Why the `app/` folder structure?
|
||||
|
||||
Blueprint's `requests.app` field merges the contents of your `app/` folder directly into Pterodactyl's `app/` directory. This means:
|
||||
|
||||
1. **PSR-4 Autoloading:** Your classes are automatically found by Laravel's autoloader
|
||||
2. **Correct Namespaces:** Use `Pterodactyl\Http\Controllers` (not custom Blueprint namespaces)
|
||||
3. **Case Sensitivity:** Linux requires exact folder casing — `Controllers/` not `controllers/`
|
||||
|
||||
This architecture was validated through painful debugging and Gemini AI consultation.
|
||||
|
||||
---
|
||||
|
||||
## Installation
|
||||
|
||||
Reference in New Issue
Block a user