Proyek ini adalah aplikasi website multi-role sederhana yang memungkinkan pengguna dengan role berbeda untuk memiliki hak akses yang berbeda. Aplikasi ini mendukung dua peran utama: admin dan user, di mana user dapat mengelola produk yang mereka buat, sementara admin memiliki kontrol penuh atas pengguna dan produk.
Peran:
Backend Developer
Fitur:
- Manajemen Pengguna (Admin):
- Admin dapat menambah, memperbarui, dan menghapus pengguna.
- Admin dapat menambah, memperbarui, dan menghapus produk yang dibuat oleh user.
- Manajemen Produk (User):
- User dapat menambah dan melihat produk yang mereka buat.
- Autentikasi:
- Login multi-role untuk admin dan user dengan validasi JWT.
Teknologi:
- Backend: Node.js, ExpressJS
- Database: MySQL
- Dokumentasi API: Swagger
- Container: Docker
Penggunaan:
- Clone repositori ini:
git clone https://github.com/yourusername/multirole-website.git
- Pindah ke direktori proyek:
cd multirole-website
- Install dependensi:
npm install
- Siapkan file
.env
untuk kredensial database dan JWT. - Jalankan server:
npm run start
Menjalankan Docker:
- Jalankan program di Docker untuk Windows:
npm run docker:windows
- Untuk Linux:
npm run docker:linux
Import Koleksi Postman:
Sebuah koleksi Postman disediakan untuk pengujian API:
- Buka Postman.
- Klik Import dan pilih file JSON mentah yang disediakan di file
postman_collection.json
. - Anda sekarang dapat menggunakan koleksi tersebut untuk menguji endpoint API.
Struktur Proyek:
- controllers/: Berisi logika penanganan rute.
- services/: Berisi logika bisnis.
- models/: Mendefinisikan model database.
- routes/: Mendefinisikan rute API.
Source Code :
Untuk informasi lebih lanjut tentang proyek ini atau untuk berdiskusi tentang kolaborasi proyek, silakan hubungi saya atau kunjungi website saya.
: