Featured Post
Membangun Web App dengan Express.js: Langkah demi Langkah
- Dapatkan link
- X
- Aplikasi Lainnya
Express.js telah menjadi salah satu framework paling populer untuk membangun web application menggunakan Node.js. Ringan, fleksibel, dan mudah dipelajari, Express membantu developer membuat aplikasi web yang cepat, scalable, dan siap integrasi dengan teknologi modern.
Artikel ini akan membahas cara membangun web app dari nol, langkah demi langkah, lengkap dengan tips SEO-friendly, struktur folder, dan praktik terbaik.
1. Persiapan Lingkungan Development
Sebelum memulai, pastikan kamu memiliki:
-
Node.js terbaru
-
NPM atau Yarn untuk manajemen paket
-
Code editor seperti VS Code
-
Terminal untuk menjalankan perintah CLI
Langkah awal:
mkdir my-webapp
cd my-webapp
npm init -y
npm install express
Ini membuat folder project, menginisialisasi package.json, dan menginstal Express.js.
2. Membuat Server Dasar Express
Buat file index.js dan tulis kode dasar berikut:
const express = require('express');
const app = express();
const PORT = 3000;
// Route sederhana
app.get('/', (req, res) => {
res.send('Halo, dunia! Selamat datang di Web App Express.js.');
});
app.listen(PORT, () => {
console.log(`Server berjalan di http://localhost:${PORT}`);
});
Buka terminal:
node index.js
Jika berhasil, buka browser di http://localhost:3000, dan kamu akan melihat pesan “Halo, dunia!”.
3. Membuat Struktur Folder yang Rapi
Struktur folder yang baik membantu pengembangan aplikasi besar:
my-webapp/
│─ index.js
│─ package.json
│─ routes/
│ └─ index.js
│─ controllers/
│ └─ mainController.js
│─ views/
│ └─ index.ejs
│─ public/
└─ css/
└─ js/
-
routes/ → Tempat mendefinisikan semua URL endpoint
-
controllers/ → Logika bisnis aplikasi
-
views/ → Template HTML (EJS, Pug, atau Handlebars)
-
public/ → File statis seperti CSS, JS, dan gambar
4. Routing dan Controller
Contoh routing dengan controller:
// routes/index.js
const express = require('express');
const router = express.Router();
const mainController = require('../controllers/mainController');
router.get('/', mainController.home);
router.get('/about', mainController.about);
module.exports = router;
// controllers/mainController.js
exports.home = (req, res) => {
res.send('Selamat datang di halaman Home!');
};
exports.about = (req, res) => {
res.send('Ini halaman About.');
};
Di index.js:
const indexRoutes = require('./routes/index');
app.use('/', indexRoutes);
5. Menambahkan Middleware
Middleware membantu memproses request sebelum mencapai route handler. Contoh:
const morgan = require('morgan');
app.use(morgan('dev')); // Logging HTTP request
app.use(express.json()); // Parsing JSON body
app.use(express.static('public')); // File statis
Tips SEO: pastikan file statis (CSS/JS) mudah diakses dan cepat dimuat.
6. Menghubungkan Database
Web app biasanya memerlukan database. Misalnya MongoDB:
npm install mongoose
Contoh koneksi:
const mongoose = require('mongoose');
mongoose.connect('mongodb://localhost:27017/mydb', {
useNewUrlParser: true,
useUnifiedTopology: true
}).then(() => console.log('MongoDB connected'))
.catch(err => console.log(err));
Gunakan model untuk menyimpan data pengguna, artikel, atau produk.
7. Menambahkan Template Engine
Untuk membuat halaman HTML dinamis:
npm install ejs
Di index.js:
app.set('view engine', 'ejs');
app.set('views', './views');
Contoh render halaman:
res.render('index', { title: 'Home', message: 'Selamat datang!' });
Template engine membantu mengatur struktur HTML yang SEO-friendly dan mudah diindeks Google.
8. SEO dan Best Practices
-
Gunakan meta tags dinamis di halaman HTML
-
Buat URL bersih (
/aboutbukan/about.php?id=1) -
Optimasi kecepatan loading → Gzip, caching, minify JS/CSS
-
Redirect 301 jika ada perubahan URL agar tidak kehilangan ranking
-
Gunakan sitemap.xml dan robots.txt untuk indexing
9. Testing dan Deployment
-
Testing lokal: Jalankan
node index.jsataunodemon index.jsuntuk hot reload -
Deployment: Gunakan Vercel, Heroku, atau DigitalOcean
-
Pastikan environment variable (misal MongoDB URI) aman dan tidak hardcoded
10. Kesimpulan
Dengan Express.js, membangun web app modern jadi lebih mudah, cepat, dan scalable. Kombinasi Express + Node.js memungkinkan developer membuat aplikasi interaktif, SEO-friendly, dan siap diintegrasikan dengan framework front-end atau API pihak ketiga.
Langkah kunci:
-
Siapkan environment development
-
Buat server dan route dasar
-
Gunakan struktur folder rapi
-
Tambahkan middleware dan database
-
Optimasi SEO & kecepatan
-
Testing dan deployment
Dengan panduan ini, bro bisa mulai membangun web app modern dari nol yang aman, cepat, dan mudah diindeks Google.
Komentar