CHESS-SHEET & TOOLKIT UTAMA WEB DEVELOPER

WEB DEV CHEAT SHEET & LANDING PAGE BUILDER KIT

Contekan wajib, kode siap pakai (copas-able), shortcut sakti, dan panduan langsung eksekusi landing page dari nol sampai terbit online.

Pencarian Cepat:

VS Code & Emmet Shortcuts Wajib

Ngebut koding 10x lebih cepat dengan shortcut & trik ekspres ini.

Essential Tricks
Duplikat Baris Kode Shift + Alt + Down

Copy & paste baris aktif langsung ke bawah tanpa blok teks terlebih dahulu.

Select Multiple Match Ctrl + D

Pilih kata yang sama satu per satu untuk edit sekaligus di banyak tempat (Multi-cursor).

Pindah Baris Kode Alt + Up / Down

Pindahkan baris/blok kode ke atas atau bawah tanpa perlu cut & paste.

Toggle Komentar Ctrl + /

Jadikan baris/blok teks sebagai komentar atau sebaliknya dengan cepat.

Hapus 1 Baris Utuh Ctrl + Shift + K

Hapus seluruh baris posisi kursor tanpa perlu memblok teks dari awal.

Emmet: Bikin Struct Card EMMET

div.card>img+h3+p+button

Tekan Tab untuk menghasilkan struktur Card komplit seketika.

Emmet: Navigasi 5 Menu EMMET

ul.nav-menu>li*5>a[href="#"]

Membuat list tag `ul` berisi 5 `li` dan tag `a` secara otomatis.

Emmet: Dummies Text EMMET

lorem20

Tekan Tab untuk generate 20 kata teks contoh instan untuk dummy layout.

Format Kode Rapih Shift + Alt + F

Merapihkan seluruh indentasi dan spasifikasi kode HTML/CSS/JS secara otomatis.

Starter Code Snippets (Tinggal Copas)

Kumpulan fondasi kodelanding page penting yang sering kepake.

1-Click Copy
1. Starter Boilerplate HTML5 + Tailwind & FontAwesome CDN
<!DOCTYPE html>
<html lang="id" class="scroll-smooth">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Landing Page Saya</title>
    <!-- Tailwind CSS CDN -->
    <script src="https://cdn.tailwindcss.com"></script>
    <!-- Font Awesome Icons CDN -->
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
    <!-- Google Font (Inter) -->
    <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700;800&display=swap" rel="stylesheet">
    <link rel="stylesheet" href="style.css">
</head>
<body class="bg-slate-900 text-slate-100 font-['Inter'] antialiased min-h-screen">

    <!-- Konten Landing Page Disini -->
    <h1 class="text-3xl font-bold text-center py-10">Hello World!</h1>

    <script src="script.js"></script>
</body>
</html>
2. Modern CSS Reset & Root Variables (style.css)
/* CSS Reset dasar */
*, *::before, *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

:root {
    --bg-main: #0a0f1d;
    --bg-card: #1e293b;
    --primary: #06b6d4;
    --text-main: #f8fafc;
    --text-muted: #94a3b8;
}

body {
    background-color: var(--bg-main);
    color: var(--text-main);
    line-height: 1.6;
}

/* Biar Gambar Tidak Lewat / Break Layout */
img, video {
    max-width: 100%;
    height: auto;
    display: block;
}
3. Grid Card Landing Page Responsive (Tailwind CSS)
<!-- Grid Container: 1 kolom di HP, 2 di Tablet, 3 di Desktop -->
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6 p-6">
    
    <!-- Card Item -->
    <div class="bg-slate-800/80 border border-slate-700 rounded-xl overflow-hidden hover:border-cyan-500/50 transition-all shadow-lg">
        <img src="https://images.unsplash.com/photo-1555066931-4365d14bab8c?w=600&auto=format&fit=crop" alt="Card Cover" class="w-full h-48 object-cover">
        <div class="p-5 space-y-3">
            <span class="text-xs font-semibold px-2.5 py-1 bg-cyan-950 text-cyan-400 rounded-full border border-cyan-800">Kategori</span>
            <h3 class="text-xl font-bold text-white">Judul Produk / Layanan</h3>
            <p class="text-slate-400 text-sm">Deskripsi singkat menarik tentang penawaran kamu di landing page ini.</p>
            <button class="w-full py-2.5 bg-cyan-500 hover:bg-cyan-400 text-slate-950 font-bold text-sm rounded-lg transition">Beli Sekarang</button>
        </div>
    </div>

</div>
4. Video/Image Responsive Background Overlay Setup
<!-- Hero Section dengan Background Video & Dark Overlay -->
<div class="relative w-full h-[500px] flex items-center justify-center overflow-hidden">
    <!-- Video Elements (autoplay muted loop) -->
    <video autoplay muted loop class="absolute w-full h-full object-cover z-0">
        <source src="assets/videos/hero-bg.mp4" type="video/mp4">
    </video>

    <!-- Dark Overlay Biar Teks Tetap Kelihatan Terang -->
    <div class="absolute inset-0 bg-black/60 z-10"></div>

    <!-- Teks Konten Utama (z-20 agar di atas video) -->
    <div class="relative z-20 text-center px-4 max-w-2xl">
        <h1 class="text-4xl font-extrabold text-white mb-3">Pengalaman visual Luar Biasa</h1>
        <p class="text-slate-200 mb-6">Solusi modern untuk memukau pengunjung dalam detik pertama.</p>
        <a href="#cta" class="px-6 py-3 bg-cyan-500 text-black font-bold rounded-lg shadow-lg hover:bg-cyan-400 transition">Pelajari Selengkapnya</a>
    </div>
</div>
5. JSONBin.io Cloud Database Sync (script.js)
// Konfigurasi JSONBin.io
const BIN_ID = 'GANTI_DENGAN_BIN_ID_KAMU';
const MASTER_KEY = 'GANTI_DENGAN_MASTER_KEY_KAMU'; 
const API_URL = `https://api.jsonbin.io/v3/b/${BIN_ID}`;

// 1. Fungsi Ambil Data (GET)
async function getCloudData() {
    try {
        const response = await fetch(`${API_URL}/latest`, {
            method: 'GET',
            headers: { 'X-Master-Key': MASTER_KEY }
        });
        const result = await response.json();
        console.log("Data Berhasil Diambil:", result.record);
        return result.record;
    } catch (error) {
        console.error("Gagal mengambil data:", error);
    }
}

// 2. Fungsi Simpan / Update Data (PUT)
async function updateCloudData(newDataObject) {
    try {
        const response = await fetch(API_URL, {
            method: 'PUT',
            headers: {
                'Content-Type': 'application/json',
                'X-Master-Key': MASTER_KEY
            },
            body: JSON.stringify(newDataObject)
        });
        const result = await response.json();
        alert("Data Berhasil Disimpan ke Cloud!");
    } catch (error) {
        console.error("Gagal update data:", error);
    }
}
6. Mobile Navbar Toggle Menu (script.js)
// script.js - Mobile Menu Toggle Simple
const btnMenu = document.getElementById('btn-menu');
const mobileMenu = document.getElementById('mobile-menu');

btnMenu.addEventListener('click', () => {
    // Toggle class 'hidden' pada div menu HP
    mobileMenu.classList.toggle('hidden');
});

Interactive Live Code Playground

Uji coba kode landing page kamu langsung di browser secara real-time!

HTML + Tailwind Editor
Live Preview Result Auto-Updated Target

Kamus Istilah Web Dev (Analogis & Bahasa Gaul)

Gak perlu pusing sama bahasa planet, ini arti sederhananya.

API

Kurir Data

Ibarat Pelayan Restoran. Kamu (Frontend) pesan makanan ke pelayan (API), lalu pelayan ambil pesanan ke Dapur (Backend/Database) dan anter balik ke mejamu.

DOM (Document Object Model)

Pohon HTML

Struktur pohon elemen web yang bisa ditarik, diubah warna, atau disembunyiin sama JavaScript secara *live* saat pengguna ngeklik tombol.

Path (Relative vs Absolute)

Alamat File

Relative (`./assets/pic.jpg`): Patokan dari folder tempat kamu berdiri.
Absolute (`https://site.com/pic.jpg`): Patokan URL lengkap dari luar.

Fetch()

Perintah Ambil Data

Fungsi JavaScript untuk memanggil URL API buat ngambil atau ngirim data dari/ke internet tanpa perlu reload halaman web.

Deploy / Hosting

Terbit Online

Proses mengupload file web dari laptop kamu ke server internet biar bisa dibuka oleh orang di seluruh dunia pakai link URL khusus.

JSON

Format Paket Data

Format standar bertukar teks data antar aplikasi yang rapih bentuknya kunci-nilai, misal: {"nama": "Fiq", "role": "Dev"}.

Workflow Eksekusi: Dari Folder Kosong Sampai Online

Ikuti 4 langkah terstruktur ini agar proyek landing page kamu rapih & berhasil.

01

Struktur Folder

Buat folder utama proyek di laptop. Rapihkan aset agar tidak berantakan.

📁 my-landing-page/
┣ 📁 assets/
┃ ┣ 📁 images/
┃ ┗ 📁 videos/
┣ 📄 index.html
┣ 📄 style.css
┗ 📄 script.js
02

Setup Layout & CSS

Pasang boilerplate HTML5, panggil Tailwind CDN, buat Navbar, Hero Section, & Grid Cards.

  • Gunakan Flexbox untuk Navbar.
  • Gunakan Grid untuk kartu produk.
  • Pastikan responsive di ukuran HP.
03

Konekkan JSONBin

Biar data landing page kamu (harga/produk/testimoni) tidak statis keras.

  • Daftar akun gratis di JSONBin.io
  • Buat Bin Baru berisi array JSON.
  • Fetch data lewat script.js.
04

Deploy Online Gratis

Upload web kamu ke internet tanpa bayar sepeserpun!

GitHub Pages
Upload repo -> Settings -> Pages -> Live!
Vercel / Netlify
Drag & drop folder -> Terbit URL rapih!
UJI PEMAHAMAN DIRI (QUIZ DINGIN)

Tes Kemampuan Web Dev Kamu

Uji ingatan mengenai penulisan path file, CSS, dan skrip dalam 3 pertanyaan cepat.

1. Jika file gambar ada di dalam folder `assets/images`, penulisan path HTML yang benar dari `index.html` adalah?

2. Shortcut VS Code apa yang dipakai untuk menduplikat baris kode langsung ke bawah?