Next.js 14 menjadi standar de‑facto untuk aplikasi React modern. Tutorial ini membimbing Anda dari instalasi hingga deployment di Vercel, lengkap dengan konfigurasi TypeScript, Tailwind CSS, dan best practice untuk produksi.
1. Prasyarat
Pastikan Anda memiliki:
- Node.js >= 20.0 (LTS) –
node -vuntuk cek. - npm atau Yarn (versi terbaru).
- Git terinstall.
- Akun Vercel (opsional untuk deployment).
2. Instalasi Next.js 14
Langkah 2.1: Buat proyek baru
npx create-next-app@latest my-next-app --typescript --eslint --tailwind
Flag --typescript menyiapkan konfigurasi TypeScript otomatis, --eslint menambahkan linting standar, dan --tailwind mengintegrasikan Tailwind CSS.
Langkah 2.2: Masuk ke direktori
cd my-next-app
Langkah 2.3: Verifikasi
npm run dev
Buka http://localhost:3000 – Anda harus melihat halaman selamat datang Next.js.
3. Konfigurasi App Router (Next 14)
Next.js 14 memperkenalkan App Router sebagai default. Pastikan struktur app/ ada di root.
Langkah 3.1: Membuat layout dasar
// app/layout.tsx
import './globals.css';
export const metadata = {title: 'My Next 14 App', description: 'Demo app'};
export default function RootLayout({children}: {children: React.ReactNode}) {
return (
{children}
);
}
Langkah 3.2: Menambahkan halaman beranda
// app/page.tsx
export default function Home() {
return (
Hello, Next.js 14!
);
}
4. Integrasi Tailwind CSS (Jika belum otomatis)
Langkah 4.1: Instal dependensi
npm install -D tailwindcss@latest postcss@latest autoprefixer@latest
Langkah 4.2: Inisialisasi konfigurasi
npx tailwindcss init -p
File tailwind.config.cjs secara default sudah meng‑scan app/**/*.{js,ts,jsx,tsx} dan pages/**/*.{js,ts,jsx,tsx}.
Langkah 4.3: Tambahkan direktif Tailwind
/* app/globals.css */
@tailwind base;
@tailwind components;
@tailwind utilities;
5. Menyiapkan ESLint & Prettier (Best Practice)
Langkah 5.1: Instal paket
npm install -D eslint prettier eslint-config-prettier eslint-plugin-react eslint-plugin-react-hooks
Langkah 5.2: Buat file .eslintrc.cjs
module.exports = {
root: true,
parser: '@typescript-eslint/parser',
plugins: ['@typescript-eslint', 'react', 'react-hooks'],
extends: [
'eslint:recommended',
'plugin:@typescript-eslint/recommended',
'plugin:react/recommended',
'plugin:react-hooks/recommended',
'prettier'
],
settings: {react: {version: 'detect'}},
env: {browser: true, node: true, es2022: true},
rules: {/** custom rules **/}
};
Langkah 5.3: Tambahkan script npm
"scripts": {
"lint": "eslint . --ext .js,.jsx,.ts,.tsx",
"format": "prettier --write ."
}
6. Menggunakan Environment Variables yang Aman
Next.js 14 mendukung .env.local untuk variabel rahasia.
Langkah 6.1: Buat file .env.local
NEXT_PUBLIC_API_URL=https://api.example.com
SECRET_KEY=super-secret-token
Langkah 6.2: Akses di kode
const apiUrl = process.env.NEXT_PUBLIC_API_URL; // dapat di‑expose ke client
const secret = process.env.SECRET_KEY; // hanya server‑side
7. Penambahan API Route dengan Edge Runtime
Langkah 7.1: Buat file route
// app/api/hello/route.ts
import { NextResponse } from 'next/server';
export const runtime = 'edge';
export async function GET() {
return NextResponse.json({message: 'Hello from Edge!'});
}
Langkah 7.2: Uji endpoint
Buka http://localhost:3000/api/hello – respons JSON harus muncul dalam milidetik.
8. Optimasi Performa untuk Produksi
- Image Optimization: Gunakan
next/imagedenganloader: 'custom'bila memakai CDN pihak ketiga. - Static Generation (SSG): Pada halaman yang tidak memerlukan data runtime, tambahkan
export const revalidate = 60;untuk ISR. - Bundling: Jalankan
npm run builddan periksa laporan.next/analyze(aktifkan denganANALYZE=true npm run build). - Security Headers: Tambahkan middleware untuk CSP, X‑Content‑Type‑Options, dll.
Contoh Middleware CSP
// middleware.ts
import { NextResponse } from 'next/server';
export function middleware(request) {
const response = NextResponse.next();
response.headers.set('Content-Security-Policy', "default-src 'self'; img-src https: data:; script-src 'self' 'unsafe-inline'");
return response;
}
9. Deployment ke Vercel (One‑Click)
Langkah 9.1: Push ke GitHub
git init
git add .
git commit -m "Initial commit"
git branch -M main
git remote add origin https://github.com/youruser/my-next-app.git
git push -u origin main
Langkah 9.2: Import di Vercel
Masuk ke vercel.com, klik New Project, pilih repository, dan biarkan pengaturan default (Next.js, otomatis build npm run build).
Langkah 9.3: Set Environment Variables
Tambahkan NEXT_PUBLIC_API_URL dan SECRET_KEY melalui dashboard Vercel → Settings → Environment Variables.
Langkah 9.4: Verifikasi Deploy
Setelah build selesai, buka URL https://my-next-app.vercel.app. Semua fitur (Tailwind, API Edge, CSP) harus berfungsi.
10. Pemeliharaan & Upgrade ke Next.js 15 (Preview)
Next.js 15 dijadwalkan rilis beta pada Q4 2026 dengan dukungan React Server Components v2. Untuk upgrade:
npm install next@beta
# Periksa breaking changes di https://nextjs.org/docs/upgrading
Pastikan semua plugin ESLint, Tailwind, dan TypeScript kompatibel sebelum promosi ke produksi.
Dengan mengikuti langkah‑langkah di atas, Anda kini memiliki aplikasi Next.js 14 yang modern, teroptimasi, dan siap diproduksi. Menggunakan TypeScript, Tailwind CSS, serta best practice keamanan dan performa memastikan kode Anda mudah dipelihara dan skalabel. Jangan lupa mengawasi rilis Next.js 15 untuk memanfaatkan fitur server‑side terbaru, dan selalu jalankan linting serta CI/CD untuk menjaga kualitas kode.
Tutorial step-by-step setup Next.js 14 dengan App Router, TypeScript, Tailwind CSS, serta best practice keamanan dan performa. Panduan lengkap untuk developer tahun 2026.
Programming,Software Engineering,Web Development
#Programming #SoftwareEngineering #WebDev #Tech #Coding
0 Komentar