Repository ini berisi proyek pengembangan sistem autentikasi berbasis PHP native, yang dirancang untuk mempelajari kembali konsep dasar pengembangan aplikasi dengan struktur folder yang terorganisir. Proyek ini bertujuan untuk menerapkan praktik terbaik dalam pemisahan logika aplikasi, manajemen keamanan, dan modularitas kode.
-
Modularitas Kode
Pemisahan antara Controller, Model, dan Service untuk meningkatkan keterbacaan dan skalabilitas. -
Keamanan
Implementasi dasar fitur keamanan seperti autentikasi pengguna dan perlindungan data. -
Struktur Direktori Terorganisir
/secure-auth
βββ /config # File konfigurasi
β βββ db.php # Pengaturan koneksi database
βββ /public # File yang dapat diakses oleh web server
β βββ index.php # Entry point, file utama yang memberi tampilan login dan menangani login
β βββ register.php # File yang akan menangani dan menampilkan proses registrasi user
β βββ logout.php # File yang menangani proses logout user
β βββ dashboard.php # File yang akan menampilkan halaman utama yang akan dilihat user setelah login
β βββ forgot-password.php # File yang menangani dan menampilkan proses forgot password
β βββ reset-password.php # File yang menangani login
β βββ /assets # File CSS, JS, dan gambar
β β βββ /css # CSS file
β β βββ /js # JavaScript file
β β βββ /img # Gambar dan media
βββ /src # Folder untuk logika aplikasi
β βββ /Controller # Logika aplikasi
β β βββ AuthController.php # Menangani login dan pendaftaran
β βββ /Model # Interaksi dengan database
β β βββ UserModel.php # Query database
β βββ /Service # Proses tambahan seperti MFA dan throttling
β β βββ AuthService.php
β β βββ LoginAttemptService.php
β β βββ LogService.php
βββ /vendor
βββ .env
βββ composer.json
βββ composer.lock
- Membangun kembali pemahaman dasar tentang pengembangan PHP native.
- Melatih strukturisasi kode yang rapi dan sesuai standar.
- Menyediakan starter template untuk proyek autentikasi sederhana.
- Clone repository ini:
git clone https://github.com/lmnzxx/Secure-Auth-PHP-ReLearning-NativePHP.git
cd Secure-Auth-PHP-ReLearning-NativePHP
- Konfigurasi database pada file /config/database.php.
- Jalankan server PHP lokal, bisa dengan menggunakan developing environment seperti Laragon, XAMPP maupun MAMP, bisa juga dengan menggunakan native PHP dengan cara
php -S localhost:8000 -t public
- Kemudian akses aplikasi melalui http://localhost:8000 atau sesuaikan dengan konfigurasi yang dilakukan.
Kontribusi sangat terbuka! Silakan fork repository ini, buat fitur baru, atau perbaikan bug, lalu ajukan pull request.