
Daftar Isi
- Pendahuluan
- Proyek Saya dari Shaynakit (FREE)
- Deploy GitHub
- Push
- Aturan Online Website Statis di Vercel
- Aturan Default (Public)
- Konvensi Umum di Dunia Web
- Optimasi Tanpa Konfigurasi
- Membedakan Source Code & File Siap Tayang
- Mencegah Error & Akses File yang Gak Perlu
- Langkah-Langkah Public
- Aturan Tailwind CSS (Src)
- Struktur Folder
- Tambahkan file
vercel.json
di root project
- Aturan Default (Public)
- Online-kan di Vercel
Step 1: Upload ke GitHub
Step 2: Daftar Akun Vercel
Step 3: Login ke Overview Vercel
Step 4: Klik “New Project”
Step 5: Klik tombol import yang buildwithangga
Step 6: Klik Deploy
Step 7: Hasil - Penutup
Pendahuluan
Punya website statis udah jadi, tampilannya cakep, animasi smooth, warnanya pas... tapi masih ngumpet di folder, Wah, sayang banget dong. Daripada disimpan sendiri dan cuma kamu doang yang lihat, mending langsung naikin ke internet biar bisa dipamerin ke dunia. Caranya? Gampang banget! Cuma butuh dua alat andalan: GitHub buat naro proyeknya, dan Vercel buat nampilin ke internet. Kayak duo maut: satu nyimpen, satu nampilin.
Di artikel ini, kita bakal bahas step by step-nya mulai dari upload ke GitHub, sampai proyek kamu tampil kece di Vercel. Nggak perlu ribet, nggak perlu coding aneh-aneh. Yuk, kita gas bareng-bareng.
Proyek Saya dari Shaynakit (FREE)

Di tutorial kali ini, kita bakal sru-seruan bareng ngebedah proyek keren dari Shaynakit. Kabar baiknya: ini 100% gratis, dan yang makin mantep, kodenya udah siap tempur. Jadi lo nggak perlu mulai dari nol, tinggal colok, modif dikit, langsung jalan. Nggak ribet, nggak bikin kening berkerut, pokoknya ngoding jadi fun banget!
Shaynakit ini tuh kayak buffet buat front-end developer tinggal pilih desain yang lo suka, semua udah sepaket sama kodenya. Ada versi gratis, ada juga yang premium. Tapi santai, yang gratis pun udah cukup loyal kok. Biasanya yang dibatesin cuma jumlah halaman aja. Nah, kalau yang premium? Itu sih udah kayak pesta coding semua elemen tinggal comot, tinggal pakai, beres!
Sekarang masuk ke inti dari semuanya: gimana cara dapetin template gratisnya. Gampang banget, nggak perlu mantra khusus. Cukup ikutin langkah-langkah ini:
- Buka situs utamanya di sini: https://shaynakit.com/landing.
- Klik menu Register atau langsung aja meluncur ke https://shaynakit.com/register buat daftar akun dulu.
- Setelah berhasil daftar dan login, buka halaman template yang mau dipakai di sini: https://shaynakit.com/details/resto-restaurant-landing-page-html-tailwind-css-template.
- Klik tombol Download, lalu pilih opsi Free Trial.
- Lanjut klik Start Today buat mulai akses gratisnya.
- Setelah itu, balik lagi ke halaman template tadi dan klik tombol Download sekali lagi.
- File-nya bakal langsung keunduh dalam format
.zip
. - Simpan file
.zip
itu ke folder lokal kamu, misalnya ke:./source-code/resto.zip
.
Udah, beres. Sekarang kamu punya satu paket desain + kode yang siap kamu eksplor. Tinggal buka, utak-atik, terus bawa ke proyek kamu.
Deploy Github

GitHub itu ibarat lemari kaca super aman tempat kita naro semua karya codingan kita, entah itu proyek pribadi, kerjaan kelompok, atau bahkan eksperimen tengah malam yang cuma kamu ngerti. Di sanalah para developer dari seluruh dunia numpuk kode mereka, jadi kalau suatu saat butuh, tinggal buka lagi, atau bahkan pamerin ke dunia. Bayangin kamu lagi bikin komik, dan tiap panel kamu simpan rapi satu-satu, lengkap dengan sejarah siapa yang gambar, ubah warna, atau nambah dialog. Nah, GitHub tuh kayak arsip digital yang nyatet semua itu otomatis. Kapan kita perlu? Ya setiap kali kita ngoding dan pengen nyimpen progress, kolaborasi sama temen, atau bahkan ngelamar kerja pakai portfolio. Caranya juga gampang banget, kayak ngirim file ke Google Drive, tapi lebih kece karena setiap versi bisa kamu rewind sesuka hati. Serunya lagi, semua orang bisa intip, bantuin, bahkan ikut kontribusi. Jadi bukan cuma tempat nyimpen, tapi juga tempat ngumpulnya semangat kolaborasi developer sejagat raya.
Push
Pertama, buka terminal atau Git Bash, dan pastiin kamu udah ada di dalam folder proyek kamu kayak gini misalnya:

cd path/ke/buildwithangga
selanjutnya kayak ngasih tahu folder kamu: “Eh bro, sekarang kamu udah jadi proyek Git ya”

git init
selanjutnya ibarat kamu masukin semua file proyek ke dalam koper buat dibawa ke GitHub.

git add .
selanjutnya commit yaitu kayak ngasih catatan, "Oke ini versi pertama gue ya!"

git commit -m "First commit buildwithangga"
Sekarang buka https://github.com ➜ Login ➜ Klik tombol New Repository
.

- Masukkan nama repo (misal:
buildwithangga
)

- Pilih public/private
- Jangan centang "Initialize this repository with a README" (biar ga bentrok)
- Klik Create Repository
GitHub bakal kasih kamu URL repo kayak gini:

<https://github.com/tegarfauzan/buildwithangga.git>
Sekarang kita kasih tau Git: “Bro, ini lho alamat rumah barunya di GitHub, simpen di sana ya.”

git remote add origin <https://github.com/tegarfauzan/buildwithangga.git>
Waktunya terbang. Kirim proyek kamu ke GitHub, perintahnya gini:
git push -u origin master
Buka repo GitHub kamu, akhirnya tadaaa! Proyek kamu udah tampil manis di sana, siap dipamerin, dibagikan, atau dideploy ke Vercel. Seperti ini bila sudah berhasil:

Aturan Online Website Statis di Vercel

Bayangin kamu punya laptop yang nyala 24 jam, koneksi internetnya super cepat, dan bisa diakses siapa aja, kapan aja. Nah, Vercel itu ibarat laptop online yang bisa menyimpan dan menjalankan website kamu tanpa ribet.
Vercel ini platform hosting yang fokus banget buat front-end dan static site mulai dari HTML biasa, CSS, sampai framework modern kayak Next.js.
Kalau kamu punya website statis, artinya website kamu cuma butuh file HTML
, CSS
, JS
, tanpa database atau server dinamis, maka Vercel ini bener-bener sahabat sejati. Misalnya kamu pakai Tailwind CSS via CLI, atau pakai CSS biasa yang ditulis manual. Vercel bakal menyajikan semua file statis itu secepat kilat. Gak perlu server-side processing, cukup upload file-nya dan... BOOM! langsung online.
Aturan Default (Public)
Kalau kamu deploy atau online-in proyek ke Vercel, biasanya ada cara default yang harus kamu ikutin, yaitu dengan punya folder public
. Nah, di bawah ini aku jelasin kenapa sih folder public
itu penting banget buat proses deploy kamu di Vercel.
1. Konvensi Umum di Dunia Web
Di banyak framework modern kayak Next.js, Vue, atau React, folder public/
itu udah jadi tempat langganan buat nyimpen file-file statis yang langsung bisa diakses browser—misalnya index.html
, style.css
, gambar .png
atau .jpg
, file JavaScript, sampai favicon. Nah, karena itu udah jadi kebiasaan umum di dunia web, Vercel juga ngikutin pola itu. Jadi kalau kamu gak bilang apa-apa soal folder mana yang mau ditayangin, Vercel bakal otomatis mikir: “Oh, pasti maksudnya folder public/
nih.”
2. Optimasi Tanpa Konfigurasi
Vercel emang didesain biar proses deploy itu semudah klik upload aja. Makanya, mereka bikin folder public/
jadi default. Jadi kalau kamu udah pake public/
, kamu gak perlu ribet bikin vercel.json
, gak usah ngatur output directory manual, tinggal masukin aja semua file HTML, CSS, JS kamu ke dalam public/
, terus deploy, langsung tayang! Ini sejalan sama filosofi mereka yang namanya zero-config, alias: “Kalau kamu gak ngatur apa-apa, tenang aja, kami udah siapin jalur yang paling aman dan paling umum buat kamu.”
3. Membedakan Source Code & File Siap Tayang
Misalnya kamu punya folder:
src/ → tempat source code, Tailwind, JSX, dll
public/ → hasil akhir / file yang siap tayang
Nah, Vercel tuh paham banget alurnya developer. Mereka tahu kalau folder src/
itu biasanya isinya masih bahan mentah, perlu di-build dulu, belum siap tayang. Sedangkan folder public/
itu udah kayak etalase, tempat semua file final yang siap disajikan ke pengunjung. Jadi, berdasarkan asumsi itu, Vercel secara default langsung ngarahin domain kamu ke isi dari public/
, tanpa kamu perlu ngatur-ngatur dulu.
4. Mencegah Error & Akses File yang Gak Perlu
Dengan cuma nyajiin file yang ada di dalam folder public/
, Vercel juga sekalian ngasih perlindungan ekstra. Jadi, file-file internal kayak .env
, package.json
, atau file config lainnya gak bakal ikut-ikutan tampil ke publik. Ini juga bikin performa website kamu lebih oke, karena yang disajikan cuma file statis yang memang dibutuhkan. Plus, kamu terhindar dari error aneh atau kebocoran file development yang sebenarnya gak perlu dilihat sama pengunjung. Aman, ringan, dan rapi.
5. Langkah-Langkah Public
Bayangin kamu bikin website company profile semacam halaman resmi buat bisnis kamu. Atau mungkin kamu lagi bikin website portofolio buat nunjukin karya-karya kamu, landing page promosi produk, blog pribadi yang tampilannya simpel, atau sekadar playground buat ngoprek HTML & CSS
Semua itu masuk ke dalam kategori website statis, karena isinya cuma HTML, CSS, dan JavaScript, tanpa backend atau database yang ribet. Kalau kayak gitu kamu perlu ikutin di bawah ini agar bisa online di Vercel:
Folder public/
:
Taruh semua file kamu di sini: index.html
, style.css
, main.js
, gambar, dll.
project/
└── public/
├── index.html
├── style.css
└── main.js
Tipsnya simpel: pastikan kamu punya file index.html
di dalam folder public/
dan semua path ke CSS atau JS menggunakan awalan /
supaya pakai absolute path (contohnya /style.css
bukan style.css
), dan enaknya lagi, kamu gak perlu bikin file vercel.json
kalau pakai cara ini, jadi lebih simpel, bersih, dan langsung bisa deploy tanpa ribet.
Aturan Tailwind CSS (Src)
Biasanya nih, kalau kamu pakai Tailwind CSS lewat Tailwind CLI, kamu bakal sering nemuin yang namanya folder src
. Contohnya, kamu jalanin perintah kayak npx @tailwindcss/cli -i ./src/input.css -o ./src/output.css --watch
, itu artinya Tailwind lagi nge-proses file yang ada di dalam folder src
. Nah, cara pakai folder src
ini nggak cuma buat Tailwind doang, kamu juga bisa terapin buat folder lain kalau mau. Aku bahas Tailwind karena secara default CLI-nya memang ngarah ke folder src
, jadi supaya bisa lancar online di Vercel, kamu perlu trik khusus biar hasilnya bisa langsung dipakai tanpa ribet. Langsung aja pahami berikut :
1. Struktur Folder
project/
├── vercel.json
├── package.json
├── package.lock.json
├── .gitignore
└── src/
├── index.html
├── input.css
├── output.css
└── script.js
Misalkan kamu punya struktur proyek Tailwind kayak gini. Biasanya, di Tailwind versi 4, kamu nggak selalu butuh file tailwind.config.js
secara default karena Tailwind udah makin pintar nangkep settingan dasar tanpa harus dikonfigurin manual. Nah, keuntungan dari versi 4 ini, kamu bisa dapetin struktur Tailwind yang lebih simpel dan bersih kayak yang kamu lihat sekarang, jadi nggak ribet harus bikin banyak file konfigurasi dulu sebelum mulai ngoding.
2. Tambahkan file vercel.json
di root project
{
"builds": [
{
"src": "src/**/*",
"use": "@vercel/static"
}
],
"routes": [
{
"src": "/(.*)",
"dest": "/src/$1"
}
]
}
Builds
{
"src": "src/**/*",
"use": "@vercel/static"
}
Artinya semua file yang ada di dalam folder src/
beserta subfoldernya akan dianggap sebagai file statis oleh Vercel, karena plugin @vercel/static
dipakai untuk langsung menyajikan file HTML, CSS, dan JS tanpa proses build, dan tanda */*
menunjukkan semua file dan folder dalam src/
akan diproses dan disajikan langsung sebagai file statis oleh Vercel.
Routes
{
"src": "/(.*)",
"dest": "/src/$1"
}
Artinya, setiap permintaan ke URL apa pun (karena /(.*)
itu wildcard) akan diarahkan ke file yang sama persis di dalam folder src/
. Misalnya, kalau kamu akses /about.html
, Vercel bakal sajikan file /src/about.html
, atau kalau kamu akses /assets/input.css
, dia akan ambil file /src/assets/input.css
. Jadi, walaupun filenya ada di dalam folder src/
, URL yang terlihat di browser tetap kelihatan dari root, bikin semuanya jadi rapi dan gampang diakses.
Online-kan di Vercel
Cara ng-online-in proyek statis ke Vercel dari folder public
atau src
, itu sebenarnya gampang banget, apalagi kalau konfigurasi yang tadi udah kamu terapin, ibaratnya kamu udah nyiapin "bekal" buat piknik, tinggal berangkat doang nih. Nah, sekarang, kalau bekalnya udah siap (alias konfigurasi beres), langkah selanjutnya tinggal eksekusi. Eksekusinya kayak gini:
Step 1: Upload ke GitHub

Pastiin dulu proyek kamu udah nangkring di GitHub.
Anggep aja GitHub itu semacam cloud storage khusus developer, tempat nyimpen proyek biar bisa dijemput sama Vercel nanti. Kalau belum, upload dulu yaa, pakai Git, GitHub Desktop, atau upload manual langsung di GitHub.
Step 2: Daftar Akun Vercel
Sekarang buka https://vercel.com dan bikin akun Vercel. Ini kayak kamu harus punya akun ojek online dulu sebelum bisa mesen makanan.
Step 3: Login ke Overview Vercel

Udah punya akun? Mantap! Sekarang login ke Vercel, dan kamu bakal lihat dashboard-nya.
Step 4: Klik “New Project”

Langsung aja klik tombol “New Project”. Vercel akan minta akses ke akun GitHub kamu, karena dia pengin tau proyek mana yang mau kamu online-in.
Step 5: Klik tombol import yang buildwithangga

Step 6: Klik Deploy

Langsung klik Deploy, dan... Bumm! Proyek kamu langsung ngacir ke internet.
Ibarat masak mie instan, air udah mendidih, bumbu udah masuk, mie udah mateng, tinggal sajikan.
Step 7: Hasil

Kalau kayak gini artinya sudah berhasil. Kamu tinggal klik tombol continue aja nanti bakal di arahin untuk akses websitenya.
Penutup
Nah, itu dia langkah-langkah lengkap buat ngedeploy website statis ke Vercel lewat GitHub. Gampang banget, kan? Kayak lagi ngantar paket, asal alamatnya bener (GitHub), kurirnya siap (Vercel), tinggal tunggu aja nyampe ke internet.
Sekarang website kamu udah bisa diakses siapa aja, kapan aja, dari mana aja. Tinggal kamu kembangkan lebih keren lagi, atau bahkan... kasih sentuhan backend dikit kalau udah siap naik level.
Semoga artikel ini ngebantu kamu yang pengen tampil profesional dengan cara yang simpel. Sampai ketemu di tutorial selanjutnya, dan selamat berselancar di dunia web.