PHPackages                             chandra2004/lara-hosted-free - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Admin Panels](/categories/admin)
4. /
5. chandra2004/lara-hosted-free

ActiveLibrary[Admin Panels](/categories/admin)

chandra2004/lara-hosted-free
============================

Custom admin artisan and log viewer bypass for shared hosting

v1.0.1(1mo ago)19MITPHPPHP ^8.0

Since May 28Pushed 1mo agoCompare

[ Source](https://github.com/Chandra2004/lara-hosted-free)[ Packagist](https://packagist.org/packages/chandra2004/lara-hosted-free)[ RSS](/packages/chandra2004-lara-hosted-free/feed)WikiDiscussions main Synced 1w ago

READMEChangelogDependencies (1)Versions (2)Used By (0)

Lara Hosted Free 🚀
==================

[](#lara-hosted-free-)

**Package Laravel untuk mempermudah deploy &amp; operasional di Shared Hosting / Free Hosting.**

Banyak developer pemula maupun UMKM yang tidak memiliki biaya untuk menyewa VPS premium. Package ini hadir sebagai solusi agar aplikasi Laravel tetap bisa dikelola dengan nyaman di lingkungan shared hosting — tanpa akses SSH asli sekalipun.

---

🛠️ Fitur Utama
--------------

[](#️-fitur-utama)

FiturDeskripsi**Web SSH Terminal**Eksekusi perintah Artisan &amp; sistem langsung dari browser (AJAX-based, riwayat command, timeout 60 detik)**Log Viewer Integration**Integrasi `opcodesio/log-viewer` dengan keamanan terpadu (opsional)**Auto Public Path**Binding otomatis ke `public_html`, `htdocs`, atau folder custom**Storage Cleaner**Command `app:clean` dengan mode `--dry-run`, laporan ukuran file, dan proteksi folder**Proteksi Keamanan**Login berlapis: bcrypt, One-Time Token, IP lockout, honeypot, session timeout, security headers**.htaccess Auto**Redirect root ke folder public untuk shared hosting---

📋 Persyaratan Sistem
--------------------

[](#-persyaratan-sistem)

- **PHP** &gt;= 8.0
- **Laravel** 10.x / 11.x / 12.x / 13.x
- **Cache Driver** `file` atau `database` (dibutuhkan untuk fitur IP lockout)
- **Session Driver** `file` atau `database`
- *(Opsional)* `opcodesio/log-viewer` ^3.24 — untuk fitur Log Viewer

---

💾 Instalasi
-----------

[](#-instalasi)

### Via Packagist (Produksi)

[](#via-packagist-produksi)

```
composer require chandra2004/lara-hosted-free
```

### Via Path Repository (Development Lokal)

[](#via-path-repository-development-lokal)

Tambahkan di `composer.json` root project Anda:

```
"repositories": [
    {
        "type": "path",
        "url": "packages/chanzz/lara-hosted-free"
    }
],
"require": {
    "chanzz/lara-hosted-free": "1.0.0"
}
```

Lalu jalankan:

```
composer update
```

> Composer akan membuat symlink otomatis — perubahan pada folder `packages/` langsung aktif secara realtime.

---

⚙️ Konfigurasi
--------------

[](#️-konfigurasi)

### 1. Publish File Konfigurasi

[](#1-publish-file-konfigurasi)

```
php artisan vendor:publish --tag=lara-hosted-config
```

Ini akan menyalin file `config/lara-hosted-free.php` ke aplikasi Anda.

### 2. Publish .htaccess (Shared Hosting)

[](#2-publish-htaccess-shared-hosting)

```
php artisan vendor:publish --tag=lara-hosted-htaccess
```

Ini akan menyalin file `.htaccess` ke root project Anda untuk mengarahkan semua traffic ke folder `public/`.

### 3. Setup Environment Variables (`.env`)

[](#3-setup-environment-variables-env)

Untuk mendeploy aplikasi Laravel Anda di server hosting (shared hosting / free hosting seperti InfinityFree, dll.), pengaturan file `.env` yang tepat sangat krusial untuk menjamin **Keamanan, Stabilitas, dan Resiliensi**.

Berikut adalah daftar lengkap seluruh variabel `.env` yang **penting, wajib, dan direkomendasikan** untuk dimasukkan ke server:

---

#### A. Variabel Inti Laravel (Core Laravel Settings)

[](#a-variabel-inti-laravel-core-laravel-settings)

Variabel ini wajib diatur ke mode **Produksi** untuk menjaga performa dan keamanan website Anda:

```
# Nama aplikasi Anda (bungkus dengan tanda kutip jika terdapat spasi)
APP_NAME="Web Saya"

# WAJIB diatur ke production saat online di server hosting
APP_ENV=production

# Key enkripsi utama (Gunakan perintah php artisan key:generate di lokal lalu salin ke server)
APP_KEY=base64:lmhIQSuNJD357QdmLfy80eHLq2213fyWPO+1rkEWSPo=

# WAJIB diatur ke false agar stack trace/detail error coding & database tidak bocor ke publik
APP_DEBUG=false

# URL website asli Anda di server hosting (wajib HTTPS jika didukung SSL)
APP_URL=https://tes-lara.rf.gd

# Bahasa default aplikasi
APP_LOCALE=id
APP_FALLBACK_LOCALE=en
```

---

#### B. Variabel Database Hosting (Database Settings)

[](#b-variabel-database-hosting-database-settings)

Sesuaikan dengan detail database MySQL yang diberikan oleh panel hosting Anda (misal cPanel / vPanel):

```
# Driver database yang digunakan
DB_CONNECTION=mysql

# Host database hosting (biasanya diberikan host eksternal oleh penyedia free hosting)
DB_HOST=sql202.infinityfree.com
DB_PORT=3306

# Nama database, username, dan password dari panel hosting Anda
DB_DATABASE=if0_41782741_tes_lara
DB_USERNAME=if0_41782741
DB_PASSWORD=L32Uk9hOV0wBFv
```

---

#### C. Sesi, Cache, Antrean &amp; Log (Sangat Stabil untuk Shared Hosting)

[](#c-sesi-cache-antrean--log-sangat-stabil-untuk-shared-hosting)

Untuk performa optimal di shared hosting yang memiliki limit memori ketat, gunakan driver berbasis **file** dan batasi level pencatatan log:

```
# Direkomendasikan menggunakan file agar session tetap aktif meskipun database sedang down
SESSION_DRIVER=file
SESSION_LIFETIME=120

# Wajib menggunakan file agar fitur resiliensi IP Lockout Web SSH tetap bekerja saat database offline
CACHE_STORE=file

# Antrean & Disk penyimpanan lokal
FILESYSTEM_DISK=local
QUEUE_CONNECTION=sync

# Pengaturan Log Harian (daily) mencegah memory hosting penuh karena file log di-rotate otomatis setiap hari
LOG_CHANNEL=daily
LOG_LEVEL=error
```

---

#### D. Variabel Keamanan &amp; Modifikasi Web Artisan (Lara Hosted Free Settings)

[](#d-variabel-keamanan--modifikasi-web-artisan-lara-hosted-free-settings)

Variabel khusus untuk mengaktifkan dan mengamankan terminal Web SSH Anda. **Ganti nilai default ini untuk mencegah terdeteksi bot otomatis:**

```
# Aktifkan/nonaktifkan Web SSH & Log Viewer secara global (true/false)
WEB_CONFIG=true

# Username khusus untuk login ke panel admin Web SSH
USERNAME_ADMIN=admin

# Password admin dalam bentuk bcrypt hash (BUKAN plain text!)
# Default di bawah adalah hash dari password: secret123
PASSWORD_ADMIN='$2y$12$fx61lAuR2mpQZMtJ84WA3OnG/zgBVEIJho6C7Fcc8AKr8NnFz68pa'

# Folder public di hosting Anda (misal: public_html, htdocs, public, dll.)
PUBLIC_PATH=public

# URL Paths — GANTI ke kata rahasia acak Anda agar tidak mudah dipindai oleh scanner bot!
SSH_PATH_WEB="admin-ssh"      # Akses terminal: https://domain.com/admin-ssh
LOG_PATH_WEB="admin-log"      # Akses log: https://domain.com/admin-log
LOGIN_PATH_WEB="admin-login"  # Gate login: https://domain.com/admin-login

# Batasan Keamanan Brute-force
MAX_LOGIN_ATTEMPTS=5           # Batas salah password sebelum IP dikunci
LOCKOUT_MINUTES=15             # Durasi penguncian IP (menit)
SESSION_TIMEOUT_MINUTES=30     # Auto-logout jika tidak ada aktivitas (menit)
```

Warning

**Selalu ganti password default!** Gunakan perintah berikut di terminal lokal untuk menghasilkan hash bcrypt:

```
php artisan tinker
>>> Hash::make('password_rahasia_kamu')
```

Letakkan hasil hash di variabel `PASSWORD_ADMIN` dengan dibungkus tanda kutip tunggal `'` agar karakter khusus di dalamnya tidak corrupt.

---

### 🛡️ Panduan Stabilitas Shared Hosting (Sangat Penting)

[](#️-panduan-stabilitas-shared-hosting-sangat-penting)

Pada shared hosting, lingkungan server sering kali memiliki batasan resource atau rentan terhadap database crash. Ikuti rekomendasi berikut untuk menjamin panel admin Web SSH Anda 100% tangguh:

#### 1. Gunakan File-Based Driver untuk Session &amp; Cache

[](#1-gunakan-file-based-driver-untuk-session--cache)

Pastikan konfigurasi `.env` Anda menggunakan driver berbasis file:

```
SESSION_DRIVER=file
CACHE_STORE=file
```

- **Mengapa?** Jika database Anda mengalami downtime (crash/overload), driver session/cache berbasis `database` akan ikut mati total. Dengan menggunakan `file`, Anda tetap bisa mengakses halaman `/secure-gate-pqr55` (login) dan `/ops-terminal-xyz99` (Web SSH) untuk menjalankan perintah perbaikan database (seperti `php artisan migrate`) saat database sedang mati!
- **Dukungan Resiliensi Package:** Lara Hosted Free telah dilengkapi dengan *safe fallback automatic wrappers*. Jika database Anda mati dan cache global Anda menggunakan driver database, sistem akan secara otomatis mengalihkan penyimpanan data lockout login sementara ke native PHP `session()`, mencegah terjadinya error `500 Database Connection Refused` pada halaman Web SSH!

#### 2. Kredensial Environment Bersih

[](#2-kredensial-environment-bersih)

Pastikan tidak ada spasi di luar tanda kutip pada nilai `.env`. Jika terdapat karakter khusus pada password atau path, bungkus menggunakan tanda kutip ganda atau tunggal: `PASSWORD_ADMIN='$2y$12$...'``APP_NAME="Web Saya"`

---

🔐 Sistem Keamanan
-----------------

[](#-sistem-keamanan)

Package ini dilengkapi dengan beberapa lapisan keamanan:

### Autentikasi

[](#autentikasi)

FiturDeskripsi**Bcrypt Hash**Password disimpan sebagai bcrypt hash, bukan plain text**One-Time Token**Token sekali pakai (64 karakter) untuk mencegah replay attack**Session Regeneration**Session di-regenerate setelah login untuk mencegah session fixation**Timing-safe Comparison**Menggunakan `hash_equals()` untuk mencegah timing attack### Proteksi Brute-force

[](#proteksi-brute-force)

FiturDeskripsi**IP Lockout**IP dikunci setelah `MAX_LOGIN_ATTEMPTS` kali gagal login**Throttle Middleware**Rate limiting pada endpoint login**Honeypot Fields**Field tersembunyi untuk mendeteksi bot otomatis**Login Logging**Semua percobaan login dicatat di Laravel Log (IP + User-Agent)### Proteksi HTTP

[](#proteksi-http)

HeaderNilai`X-Frame-Options``DENY` — cegah clickjacking`X-Content-Type-Options``nosniff` — cegah MIME sniffing`X-XSS-Protection``1; mode=block``Referrer-Policy``no-referrer``Cache-Control``no-store, no-cache` — cegah caching data sensitif### Proteksi Terminal

[](#proteksi-terminal)

Perintah-perintah berbahaya diblokir secara otomatis:

KategoriContoh yang DiblokirDestruktif`rm -rf`, `mkfs`, `dd if=`Sistem`shutdown`, `reboot`, `sudo`User Management`passwd`, `useradd`, `userdel`Reverse Shell`nc -l`, `curl | bash`, `wget | sh`Interaktif`tinker`, `serve`, `nano`, `vim`Arbitrary Code`php -r`### Session &amp; Timeout

[](#session--timeout)

- **Auto-logout** setelah periode tidak aktif (`SESSION_TIMEOUT_MINUTES`)
- **CSRF Protection** pada semua form
- **Double-submit Prevention** pada tombol login

---

📑 Integrasi Log Viewer (Opsional)
---------------------------------

[](#-integrasi-log-viewer-opsional)

Jika Anda ingin menggunakan fitur Log Viewer, install package `opcodesio/log-viewer` terlebih dahulu:

```
composer require opcodesio/log-viewer
```

Kemudian publish konfigurasi log-viewer dan sesuaikan beberapa opsi pada file `config/log-viewer.php`:

```
php artisan vendor:publish --provider="Opcodes\LogViewer\LogViewerServiceProvider"
```

Ubah konfigurasi berikut:

```
// config/log-viewer.php

// Sinkronkan toggle on/off dengan WEB_CONFIG
'enabled' => env('WEB_CONFIG', true),

// Sesuaikan path URL dengan admin-log
'route_path' => env('LOG_PATH_WEB', 'admin-log'),

// Middleware — tambahkan AdminAuth dari package
'middleware' => [
    'web',
    \Opcodes\LogViewer\Http\Middleware\AuthorizeLogViewer::class,
    \Chanzz\LaraHostedFree\Http\Middleware\AdminAuth::class,
],

// API Middleware — WAJIB pakai 'web' agar session berfungsi
'api_middleware' => [
    'web',
    \Opcodes\LogViewer\Http\Middleware\EnsureFrontendRequestsAreStateful::class,
    \Opcodes\LogViewer\Http\Middleware\AuthorizeLogViewer::class,
    \Chanzz\LaraHostedFree\Http\Middleware\AdminAuth::class,
],
```

> **Catatan**: Package ini otomatis melakukan bypass Gate `viewLogViewer` bawaan opcodesio agar keamanan sepenuhnya ditangani oleh middleware `AdminAuth`.

---

🌐 Cara Penggunaan
-----------------

[](#-cara-penggunaan)

### 1. Akses Web SSH Terminal

[](#1-akses-web-ssh-terminal)

Buka browser Anda dan kunjungi:

```
https://domain-anda.com/admin-ssh

```

*(atau sesuaikan dengan nilai `SSH_PATH_WEB` di `.env`)*

#### Perintah yang Dapat Dijalankan

[](#perintah-yang-dapat-dijalankan)

TipeContoh**Artisan**`php artisan list`, `artisan migrate`, `artisan route:list`, `artisan optimize`**Sistem**`ls -la`, `dir`, `composer -v`, `git status`, `df -h`, `php -v`**Package**`app:clean`, `app:clean --dry-run`, `app:clean --force`#### Fitur Keyboard Terminal

[](#fitur-keyboard-terminal)

ShortcutFungsi`Enter`Jalankan perintah`↑` / `↓`Navigasi riwayat perintah (command history)`clear`Bersihkan layar terminal`help`Tampilkan daftar panduan perintah#### Catatan Teknis Terminal

[](#catatan-teknis-terminal)

- **Timeout**: Perintah yang berjalan lebih dari **60 detik** akan otomatis dibatalkan
- **Loading indicator**: Spinner muncul selama perintah diproses — jangan ketik perintah baru saat proses berjalan
- **Output bersih**: ANSI color code di-strip otomatis agar output mudah dibaca
- **Stderr digabung**: Error output (`stderr`) ditampilkan bersama output normal
- **CSRF expired**: Jika session expired dan muncul pesan kuning, tunggu halaman reload otomatis
- **Artisan otomatis**: Semua perintah `migrate*` otomatis mendapat flag `--force` dan `--no-ansi`

### 2. Akses Log Viewer

[](#2-akses-log-viewer)

```
https://domain-anda.com/admin-log

```

*(atau sesuaikan dengan nilai `LOG_PATH_WEB` di `.env`)*

### 3. Autentikasi

[](#3-autentikasi)

Gunakan kredensial yang sudah Anda definisikan di `.env`:

- **Username**: nilai dari `USERNAME_ADMIN`
- **Password**: password asli yang Anda gunakan saat membuat hash bcrypt

Jika session berakhir (timeout atau logout manual), Anda akan diminta login kembali.

---

🧹 Storage Cleaner (`app:clean`)
-------------------------------

[](#-storage-cleaner-appclean)

Command untuk membersihkan file yang tidak diperlukan dan menghemat ruang penyimpanan hosting.

### Penggunaan

[](#penggunaan)

```
# Preview apa yang akan dihapus (TANPA menghapus)
php artisan app:clean --dry-run

# Jalankan pembersihan (dengan konfirmasi untuk public storage)
php artisan app:clean

# Jalankan pembersihan tanpa konfirmasi (untuk CI/CD atau cron)
php artisan app:clean --force
```

### Apa yang Dibersihkan?

[](#apa-yang-dibersihkan)

\#KategoriDeskripsi1Cache FrameworkView cache, route cache, config cache, event cache2File LogSemua file `*.log` di `storage/logs/`3Temporary FilesFile &amp; folder sampah di `storage/app/` (kecuali yang diproteksi)4Livewire TrashFile temporary upload Livewire5Public StorageFile di `storage/app/public/` (opsional, butuh konfirmasi)6SessionsSemua file session di `storage/framework/sessions/`### Proteksi Folder

[](#proteksi-folder)

Folder-folder berikut **tidak akan dihapus** (konfigurasi di `clean_exclude`):

```
'clean_exclude' => [
    'uploads',       // File upload user
    'livewire-tmp',  // Livewire temporary
    'private',       // File privat
    'public',        // Public storage (dilindungi secara terpisah)
],
```

### Output

[](#output)

Command ini menampilkan:

- Detail setiap file/folder yang dihapus beserta ukurannya
- Folder yang diproteksi ditandai dengan ikon 🔒
- Tabel ringkasan di akhir berisi jumlah file dan total ukuran yang dihemat

---

📁 Struktur Folder Hosting
-------------------------

[](#-struktur-folder-hosting)

### Sebelum (Default Laravel)

[](#sebelum-default-laravel)

```
/home/user/
├── laravel-project/        ← Root Laravel
│   ├── app/
│   ├── config/
│   ├── public/             ← Folder public default
│   └── ...

```

### Sesudah (Shared Hosting dengan lara-hosted-free)

[](#sesudah-shared-hosting-dengan-lara-hosted-free)

```
/home/user/
├── laravel-project/        ← Root Laravel (di atas public_html)
│   ├── app/
│   ├── config/
│   ├── .htaccess           ← dari vendor:publish --tag=lara-hosted-htaccess
│   └── ...
└── public_html/            ← Folder public hosting
    ├── index.php
    ├── .htaccess
    └── ...

```

Set `PUBLIC_PATH=../public_html` di `.env` agar Laravel mengenali folder public yang benar.

---

🔧 Referensi Variabel Environment
--------------------------------

[](#-referensi-variabel-environment)

VariabelDefaultDeskripsi`WEB_CONFIG``true`Aktifkan/nonaktifkan Web SSH &amp; Log Viewer`USERNAME_ADMIN``admin`Username login admin`PASSWORD_ADMIN`*(bcrypt hash)*Password admin (bcrypt hash)`PUBLIC_PATH``public`Path folder public (`public_html`, `htdocs`, dll)`SSH_PATH_WEB``admin-ssh`URL path untuk Web SSH Terminal`LOG_PATH_WEB``admin-log`URL path untuk Log Viewer`LOGIN_PATH_WEB``admin-login`URL path untuk endpoint login`MAX_LOGIN_ATTEMPTS``5`Jumlah percobaan login sebelum IP dikunci`LOCKOUT_MINUTES``15`Durasi lockout dalam menit`SESSION_TIMEOUT_MINUTES``30`Auto-logout jika idle (menit)---

⚠️ Tips Keamanan Produksi
-------------------------

[](#️-tips-keamanan-produksi)

1. **Ganti semua URL path default** — Bot scanner mencari path umum seperti `admin-ssh`. Ganti ke sesuatu yang unik:

    ```
    SSH_PATH_WEB="my-ops-panel-x7k9"
    LOG_PATH_WEB="my-logs-viewer-p3m2"
    LOGIN_PATH_WEB="my-secure-gate-z4n8"
    ```
2. **Ganti password default segera** — Password default `secret123` **WAJIB** diganti sebelum deploy.
3. **Nonaktifkan saat tidak digunakan** — Set `WEB_CONFIG=false` di `.env` jika Anda tidak membutuhkan Web SSH &amp; Log Viewer untuk sementara waktu.
4. **Monitor log** — Periksa `storage/logs/laravel.log` secara berkala. Semua percobaan login (berhasil/gagal) dicatat dengan prefix `[LaraHostedFree]`.
5. **Pastikan `APP_URL` benar** — Fitur Open Redirect Protection membutuhkan `APP_URL` yang akurat di `.env`.
6. **Gunakan HTTPS** — Pastikan hosting Anda mendukung SSL. Data login dikirim via POST dan akan terekspos jika tidak menggunakan HTTPS.

---

🐛 Troubleshooting
-----------------

[](#-troubleshooting)

MasalahSolusi**Login selalu gagal**Pastikan `PASSWORD_ADMIN` berisi hash bcrypt (bukan plain text). Generate ulang: `php artisan tinker` → `Hash::make('password')`. Cek tidak ada spasi/kutip ganda di `.env`.**Terminal tidak menampilkan output**Pastikan `proc_open` tidak ada di `disable_functions` di `php.ini` hosting. Coba perintah `php artisan list` — jika artisan bekerja tapi sistem tidak, kemungkinan `proc_open` diblokir.**Output artisan muncul tapi aneh**ANSI strip sudah otomatis. Jika masih ada karakter aneh, pastikan package versi terbaru digunakan.**Perintah tidak ada respons / loading terus**Perintah mungkin timeout (&gt;60 detik). Coba perintah lebih sederhana dulu untuk verifikasi koneksi.**Muncul pesan kuning "CSRF token expired"**Session habis. Halaman akan reload otomatis dalam 2 detik — login kembali.**Session cepat hilang**Naikkan `SESSION_TIMEOUT_MINUTES` dan pastikan `SESSION_DRIVER=file`.**Log Viewer tidak muncul**Pastikan `opcodesio/log-viewer` sudah terinstall dan middleware sudah dikonfigurasi di `config/log-viewer.php`.**429 Too Many Requests**IP dikunci karena terlalu banyak percobaan login. Tunggu sesuai nilai `LOCKOUT_MINUTES`.**Public path tidak benar**Cek nilai `PUBLIC_PATH` di `.env`. Untuk shared hosting biasanya `../public_html` atau `../htdocs`.**`.htaccess` tidak bekerja**Pastikan `mod_rewrite` diaktifkan di Apache hosting Anda. Hubungi penyedia hosting jika perlu.**`app:clean` tidak merespons**Coba jalankan dengan `--dry-run` dulu untuk verifikasi. Pastikan folder `storage/` memiliki permission yang benar (`755`).---

📦 Artisan Commands
------------------

[](#-artisan-commands)

CommandDeskripsi`php artisan app:clean`Bersihkan storage (cache, log, session, temp)`php artisan app:clean --dry-run`Preview apa yang akan dihapus tanpa benar-benar menghapus`php artisan app:clean --force`Bersihkan tanpa konfirmasi interaktif`php artisan vendor:publish --tag=lara-hosted-config`Publish file konfigurasi ke `config/lara-hosted-free.php``php artisan vendor:publish --tag=lara-hosted-htaccess`Publish file `.htaccess` ke root project---

📄 Lisensi
---------

[](#-lisensi)

MIT License — Bebas digunakan untuk proyek pribadi maupun komersial.

---

*Dibuat dengan 💖 oleh [Chandra Tri Antomo](mailto:chandratriantomo123@gmail.com).*

###  Health Score

36

—

LowBetter than 79% of packages

Maintenance89

Actively maintained with recent releases

Popularity6

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity38

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

58d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/88928844?v=4)[Chandra Tri Antomo](/maintainers/Chandra2004)[@Chandra2004](https://github.com/Chandra2004)

---

Top Contributors

[![Chandra2004](https://avatars.githubusercontent.com/u/88928844?v=4)](https://github.com/Chandra2004 "Chandra2004 (7 commits)")

### Embed Badge

![Health badge](/badges/chandra2004-lara-hosted-free/health.svg)

```
[![Health](https://phpackages.com/badges/chandra2004-lara-hosted-free/health.svg)](https://phpackages.com/packages/chandra2004-lara-hosted-free)
```

###  Alternatives

[slowlyo/owl-admin

基于 laravel、amis 开发的后台框架~

61315.0k26](/packages/slowlyo-owl-admin)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
