Mari kita bahas satu per satu paket yang diinstal:
1. bcryptjs
:
- Digunakan untuk hashing dan verifikasi password. Fungsi utamanya adalah untuk mengamankan password dengan melakukan hashing sebelum disimpan di database.
2. cors
:
- Paket ini mengaktifkan Cross-Origin Resource Sharing (CORS), yang memungkinkan aplikasi untuk menerima permintaan dari domain atau asal yang berbeda (misalnya, API yang diakses dari browser yang berbeda domain).
3. crypto-js
:
- Library enkripsi berbasis JavaScript yang menyediakan algoritma kriptografi seperti AES, SHA, dan MD5. Digunakan untuk mengamankan data dengan enkripsi.
4. dotenv
:
- Paket ini memungkinkan Anda untuk memuat variabel lingkungan dari file
.env
ke dalam aplikasi Node.js. Biasanya digunakan untuk menyimpan konfigurasi sensitif seperti API key, credential database, dsb.
5. express
:
- Framework web minimalis untuk Node.js yang digunakan untuk membangun aplikasi web dan API. Ini menyediakan berbagai fitur untuk routing, middleware, dan penanganan permintaan HTTP.
6. express-rate-limit
:
- Middleware untuk Express yang digunakan untuk membatasi jumlah permintaan yang dapat dibuat dari klien tertentu selama periode waktu tertentu. Digunakan untuk mencegah brute force attack atau flooding.
7. jsonwebtoken
:
- Library untuk membuat dan memverifikasi JSON Web Tokens (JWT). JWT adalah metode populer untuk otentikasi di API berbasis token.
8. multer
:
- Middleware untuk mengunggah file di Node.js. Ini digunakan untuk menangani data file multipart/form-data, terutama untuk upload file melalui form di aplikasi web.
9. mysql
:
- Library Node.js yang digunakan untuk berinteraksi dengan database MySQL. Ini memungkinkan aplikasi untuk menjalankan query SQL dan mengelola data di database MySQL.
10. prisma
:
- ORM (Object Relational Mapping) modern untuk Node.js. Prisma mempermudah pengelolaan database dengan menyediakan API yang lebih intuitif dan tipe-safety untuk query database.
11. helmet
:
- Middleware untuk Express yang membantu mengamankan aplikasi web dengan mengatur header HTTP. Misalnya, mencegah beberapa serangan umum seperti Cross-site Scripting (XSS) dan Clickjacking.
12. @prisma/client
:
- Klien Prisma yang digunakan untuk mengakses database menggunakan Prisma. Ini dihasilkan secara otomatis berdasarkan skema Prisma dan memungkinkan Anda menjalankan query database dengan Prisma.
Fungsi keseluruhan
Perintah ini akan menginstal semua paket di atas, yang secara kolektif memungkinkan Anda membangun aplikasi web berbasis Node.js dengan:
- Keamanan (bcryptjs, helmet, express-rate-limit, jsonwebtoken, crypto-js)
- Otentikasi (jsonwebtoken)
- Pengelolaan file (multer)
- Manajemen data (mysql, prisma)
- Fitur-fitur server (express, cors, dotenv)
Dengan menggabungkan semua paket ini, Anda dapat membuat aplikasi back-end yang aman, dapat diandalkan, dan fungsional.
0 comments:
Post a Comment