Blog Dasar NextJS: Pamula Blog Modern nganggo Next.js 15 & Tailwind

Yen sampeyan nggoleki cithakan pambuka blog modern sing digawe nganggo Next.js, proyek NextJS Base Blog minangka titik wiwitan sing apik banget. Iki minangka aplikasi blog sumber terbuka kanthi fitur lengkap sing digawe nganggo Next.js 15, React 19, TypeScript, lan Tailwind CSS 4 .

Proyèk iki nyedhiyakaké arsitektur sing resik, UI modern components, lan lapisan API tiruan, saéngga cocog kanggo para pangembang sing pengin mbangun blog kanthi cepet tanpa nyetel backend.

Repositori GitHub: https://github.com/bfotool/nextjs-base-blog

Proyek iki migunani banget kanggo:

  • Para pangembang sing lagi sinau Aplikasi Next.jsRouter

  • Nggawe blog utawa situs web konten kanthi cepet

  • Nggawe proyek boilerplate Next.js

  • Ngembangake fitur UI sadurunge nyambungake API backend sing nyata

Ringkesan Proyek

NextJS Base Blog dirancang minangka cithakan blog sing siap produksi kanthi akeh fitur umum sing ditemokake ing situs web konten modern.

Proyèk iki kalebu:

  • kaca ngarep kanthi kiriman unggulan

  • kaca postingan blog

  • panyaringan kategori

  • panelusuran teks lengkap

  • paginasi

  • daftar isi

  • kiriman sing gegandhengan

  • tema peteng/padhang

Salah sawijining bagean sing paling menarik saka proyèk iki yaiku Fake API Layer, sing nyimulasikake REST API nggunakake interceptor Axios. Iki ngidini para pangembang mbangun lan nguji aplikasi tanpa mbutuhake server backend .

Fitur Utama

Kaca ngarep

Halaman ngarep nampilake sawetara bagean penting:

  • postingan pahlawan unggulan

  • filter kategori

  • kothak postingan blog

  • navigasi sing di-pagenasi

Tata letak iki responsif banget lan dioptimalake kanggo piranti desktop lan seluler.

Kaca Posting Blog

Saben artikel bisa diakses liwat rute dinamis:

/blog/[slug]

Kaca postingan blog iki nduweni sawetara fitur sing migunani:

  • isi artikel lengkap

  • daftar isi otomatis

  • wektu maca sing diestimasikake

  • tombol enggo bareng ing media sosial

  • saran postingan sing gegandhengan

Fitur-fitur iki mbantu nggawe pengalaman maca profesional sing padha karo platform blog modern.

Kaca Kategori

Pangguna bisa browsing kiriman miturut kategori.

Tuladha rute:

/blog/category/[slug]

Fitur iki ngidini para pamaca njelajah konten ing topik tartamtu.

Fungsi Panelusuran

Proyèk iki kalebu kaca panelusuran bawaan:

/search

Dhukungan panelusuran:

  • asil wektu nyata

  • input sing dibatalake

  • nggoleki ing antarane judhul, kutipan, lan tag

Iki nambah kegunaan lan mbantu pangguna nemokake konten sing relevan kanthi cepet.

Babagan lan Kaca Kontak

Proyèk iki uga kalebu kaca tambahan sing umum ditemokaké ing blog profesional.

Babagan Kaca

Kaca Babagan ngenalake:

  • tim kasebut

  • critane proyek kasebut

  • nilai-nilai inti

Kaca Kontak

Kaca Kontak kalebu formulir sing wis divalidasi kanthi lengkap karo:

  • validasi formulir

  • kabar roti panggang

  • umpan balik sukses lan kesalahan

Dhukungan Mode Peteng

Blog iki ndhukung mode peteng lan mode padhang .

Fitur-fitur kasebut kalebu:

  • deteksi tema sistem otomatis

  • saklar manual

  • persistensi tema nggunakake localStorage

Lapisan API Palsu(Pangembangan Tanpa Backend)

Salah sawijining bagean sing paling menarik saka proyèk iki yaiku sistem API Palsu .

Tinimbang nelpon server nyata, aplikasi iki nggunakake pencegat Axios kanggo simulasi respon REST API.

Cara Kerja API Palsu

  1. Instansi Axios digawe ing:

src/services/api-client.ts
  1. Nalika variabel lingkungan diaktifake:

NEXT_PUBLIC_USE_MOCK_API=true
  1. Panjaluk dicegat sadurunge tekan jaringan.

  2. Penangan tiruan ngasilake respon palsu kanthi wektu tundha sing realistis(200–600 ms).

  3. Tanggepan tumindak kaya tanggapan API nyata.

Data tiruan disimpen ing:

src/mocks/

Kalebu:

  • conto postingan

  • para penulis

  • kategori

Titik Akhir API sing Kasedhiya

API tiruan ndhukung sawetara titik pungkasan:

Metode Titik pungkasan Katrangan
ENTUK /postingan Kiriman blog sing di-pagenasi
ENTUK /kiriman/unggulan Kiriman unggulan
ENTUK /postingan/:slug Posting blog tunggal
ENTUK /kategori Daftar kategori
ENTUK /penulis Daftar penulis
POSTING /kontak Kirim formulir kontak

Tumpukan Teknologi

Proyèk iki migunakaké tumpukan frontend modern.

Lapisan Teknologi
Kerangka Sabanjure.js 15
Perpustakaan UI Reaksi 19
Basa TypeScript
Gaya CSS Tailwind 4
Klien HTTP Aksios
Ikon Reaksi Lucide
Linting ESLint
Formatting Luwih ayu

Tumpukan iki nyedhiyakake:

  • keamanan tipe sing kuwat

  • arsitektur sing bisa dipertahankan

  • pengalaman pangembang modern

Struktur Proyek

Struktur proyèk iki ngetutaké arsitèktur sing resik lan bisa diskalakaké.

src/ 
├── app/ 
├── components/ 
├── services/ 
├── mocks/ 
├── contexts/ 
├── hooks/ 
├── types/ 
└── lib/ 

AplikasiRouter

Direktori kasebut appngemot kabeh rute aplikasi.

Tuladhane:

app/page.tsx 
app/blog/[slug]/page.tsx 
app/search/page.tsx 

Iki ngetutake arsitektur Aplikasi Next.jsRouter sing dikenalake ing versi Next.js sing luwih anyar.

Komponen

UI componentsdiatur dadi klompok logis:

components/layout 
components/common 
components/blog 

Struktur iki njaga kode UI tetep teratur lan luwih gampang dirawat.

Lapisan Layanan

Folder iki servicesngemot logika sing ana gandhengane karo API:

  • Konfigurasi klien API

  • layanan pos

  • layanan kategori

  • layanan formulir kontak

Lapisan iki misahake logika njupuk data saka UIcomponents, sing ningkatake skalabilitas.

Pandhuan Instalasi

Syarat

Sadurunge miwiti, priksa manawa sampeyan duwe:

  • Node.js 18 utawa luwih anyar

  • npm, benang, utawa pnpm

Kloning Repositori

git clone https://github.com/bfotool/nextjs-base-blog.git 
cd nextjs-base-blog 

Ketergantungan Instalasi

npm install

Konfigurasi Variabel Lingkungan

cp .env.example .env

Miwiti Server Pangembangan

npm run dev

Bukak browser sampeyan lan bukak:

http://localhost:3000

Skrip sing Kasedhiya

Komando Katrangan
npm mbukak pangembang Miwiti server pangembangan
mbangun npm Nggawe bangunan produksi
npm miwiti mlaku Miwiti server produksi
npm mbukak lint Jalanake ESLint
format npm kanggo mlaku Format kode nganggo Prettier
pamriksan jinis npm Jalanake pamriksan TypeScript

Ngalih menyang API Nyata

Yen sampeyan pengin nyambungake proyèk menyang API backend sing nyata, tindakake langkah-langkah iki.

Langkah 1: Nonaktifake Mock API

Sunting .envberkas iki:

NEXT_PUBLIC_USE_MOCK_API=false

Langkah 2: Setel URL Basis API

NEXT_PUBLIC_API_BASE_URL=https://your-api-server.com

Langkah 3: Cocokake Jinis Data

Priksa manawa API backend sampeyan ngasilake data sing cocog karo definisi TypeScript ing:

src/types/index.ts

Ora perlu owah-owahan kode tambahan.

Ngatur Konten

Konten tiruan bisa diowahi ing njero:

src/mocks/posts.ts 
src/mocks/categories.ts 
src/mocks/authors.ts 

Iki ngidini para pangembang ngatur konten demo kanthi cepet.

Ngatur Tema lan UI

Gaya global bisa ditemokake ing:

src/app/globals.css

Proyèk iki migunakaké font ing ngisor iki:

  • DM Sans

  • JetBrains Mono

Sampeyan bisa ngowahi gaya utawa ngganti font gumantung saka kabutuhan desain sampeyan.

Dudutan

NextJS Base Blog kuwi cithakan pamula sing kuat lan modern kanggo mbangun blog nganggo Next.js.

Kauntungan utama saka proyek kasebut kalebu:

  • tumpukan teknologi modern

  • arsitektur sing resik

  • API tiruan kanggo pangembangan

  • integrasi sing gampang karo API backend nyata

  • UI responsif lan fitur modern

Yen sampeyan lagi nggawe blog, situs web pangembang, utawa platform konten nganggo Next.js, repositori iki bisa ngirit wektu pangembangan sing signifikan.

Jelajahi kode sumber ing kene: https://github.com/bfotool/nextjs-base-blog