Personal blog sederhana berbasis Astro, TypeScript, Tailwind CSS, dan Markdown/MDX. Website ini siap dipakai sebagai blog pribadi untuk tulisan, opini, catatan belajar, pengalaman, dan konten awal seputar teknologi serta UMKT.
- Homepage dengan intro, CTA, dan artikel terbaru
- Halaman
/blogberisi semua artikel - Halaman detail artikel di
/blog/[slug] - Halaman
/aboutdengan profil singkat dan link sosial placeholder - Navigasi ke website Universitas Muhammadiyah Kalimantan Timur
- 10 artikel awal dalam Markdown lokal
- SEO dasar: title, description, canonical URL, dan heading rapi
- Static build Astro dengan output ke
dist - Script
startmenggunakanservedan membaca port dariPORT
Pastikan Node.js sudah terpasang lebih dulu:
node -v
npm -vLalu jalankan project:
npm install
npm run devBuild production:
npm run build
npm run startJika sebelumnya project sempat di-install dengan pnpm, bersihkan dependency lokal
lebih dulu agar npm tidak membaca struktur node_modules/.pnpm:
rm -rf node_modules .pnpm-store
npm install
npm run devGunakan npm saja untuk pekerjaan harian. Jangan mencampur pnpm install dan
npm install pada node_modules yang sama.
Jika npm menampilkan error internal seperti Cannot read properties of null (reading 'matches'), biasanya penyebabnya adalah node_modules lama dari pnpm.
Bersihkan lalu install ulang:
rm -rf node_modules .pnpm-store
npm install
npm run devArtikel berada di:
src/content/blog
Setiap artikel memakai frontmatter:
title: "Judul artikel"
slug: "judul-artikel"
description: "Ringkasan pendek artikel."
publishDate: 2026-06-01
tags: ["Tag 1", "Tag 2"]
readingTime: "4 menit baca"Ganti data umum seperti nama blog, nama penulis, email, link sosial, dan link UMKT di:
src/lib/site.ts
- Push repo ke GitHub.
- Buat project baru di Railway dari repo tersebut.
- Railway akan menjalankan
npm installlalunpm run build. - Set start command ke:
npm run start- Opsional, tambahkan environment variable
PUBLIC_SITE_URLdengan domain production agar canonical URL sesuai:
PUBLIC_SITE_URL=https://domain-kamu.comScript start sudah memakai:
serve dist -l tcp://0.0.0.0:${PORT:-4321}Railway akan menyediakan PORT, dan folder dist akan disajikan sebagai static site.