Panduan Lengkap Build Aplikasi Fullstack: NodeJS dan React
Daftar Isi
Pendahuluan
Dalam panduan ini, Anda akan mempelajari cara membangun aplikasi fullstack menggunakan NodeJS untuk backend dan React untuk frontend. Panduan ini dirancang untuk pemula hingga menengah yang ingin memahami proses lengkap mulai dari persiapan lingkungan hingga deployment aplikasi.

Persiapan Lingkungan
Sebelum mulai coding, pastikan Anda sudah menyiapkan lingkungan pengembangan yang tepat. Berikut adalah langkah-langkah yang perlu dilakukan:
- Install NodeJS dan npm: Unduh dan pasang NodeJS dari situs resmi nodejs.org . npm akan terpasang otomatis bersama NodeJS.
- Editor Kode: Gunakan editor seperti Visual Studio Code untuk kemudahan pengembangan.
- Install Git: Untuk version control dan kolaborasi.
- Setup React: Kita akan menggunakan Create React App untuk memulai proyek frontend.

Membangun Backend dengan NodeJS
Backend adalah bagian server yang menangani logika aplikasi, database, dan API. Kita akan menggunakan ExpressJS, framework populer untuk NodeJS.
1. Membuat Proyek Baru
mkdir backend
cd backend
npm init -y
npm install express
2. Membuat Server Express Sederhana
const express = require('express');
const app = express();
const port = 3001;
app.use(express.json());
app.get('/api/hello', (req, res) => {
res.json({ message: 'Halo dari backend NodeJS!' });
});
app.listen(port, () => {
console.log(`Server berjalan di http://localhost:${port}`);
});
Jalankan server dengan perintah
node index.js
(pastikan file disimpan sebagai
index.js
).

Membangun Frontend dengan React
Frontend adalah bagian aplikasi yang berinteraksi langsung dengan pengguna. Kita akan menggunakan React untuk membangun UI yang dinamis dan responsif.
1. Membuat Proyek React
npx create-react-app frontend
cd frontend
npm start
2. Membuat Komponen Sederhana
import React, { useEffect, useState } from 'react';
function App() {
const [message, setMessage] = useState('');
useEffect(() => {
fetch('/api/hello')
.then(res => res.json())
.then(data => setMessage(data.message));
}, []);
return (
<div className="p-6 max-w-xl mx-auto">
<h1 className="text-3xl font-bold mb-4">Halo dari React!</h1>
<p>Pesan dari backend: {message}</p>
</div>
);
}
export default App;

Menghubungkan Frontend dan Backend
Agar frontend React dapat berkomunikasi dengan backend NodeJS, kita perlu mengatur proxy dan memastikan API dapat diakses dengan benar.
1. Menambahkan Proxy di React
Tambahkan properti
proxy
di
package.json
frontend React:
{
"name": "frontend",
"version": "0.1.0",
"private": true,
"proxy": "http://localhost:3001",
"dependencies": {
// dependencies lainnya
}
}
2. Menjalankan Kedua Server
Jalankan backend di port 3001 dan frontend di port 3000. React akan meneruskan request API ke backend secara otomatis.

Deployment Aplikasi
Setelah aplikasi selesai dikembangkan, langkah selanjutnya adalah deployment agar aplikasi dapat diakses oleh pengguna.
1. Deployment Backend
Anda dapat menggunakan layanan seperti Heroku, DigitalOcean, atau Vercel untuk menjalankan backend NodeJS.
2. Deployment Frontend
Frontend React dapat di-deploy ke layanan hosting statis seperti Netlify, Vercel, atau GitHub Pages.
3. Contoh Deployment dengan Heroku dan Netlify
- Deploy backend ke Heroku dengan menghubungkan repository Git dan menjalankan build serta start script.
- Deploy frontend ke Netlify dengan drag & drop folder build hasil
npm run build
.

Kesimpulan
Membangun aplikasi fullstack dengan NodeJS dan React memungkinkan Anda membuat aplikasi modern yang scalable dan responsif. Dengan mengikuti panduan ini, Anda sudah memahami dasar-dasar mulai dari setup lingkungan, pembuatan backend dan frontend, hingga deployment aplikasi.
Teruslah belajar dan eksplorasi fitur-fitur lanjutan seperti database, autentikasi, dan state management untuk meningkatkan kemampuan Anda dalam membangun aplikasi fullstack.
