Kontribusi kode

Menjalankan majalengka.tech di komputermu dan mengirim perbaikan lewat GitHub.

Kode situs ini terbuka dengan lisensi MIT di github.com/majalengkatech/majalengka.tech. Kirim laporan bug, usulan, atau pull request lewat repositori itu.

Teknologi yang dipakai

BagianTeknologi
FrameworkNuxt 4
Komponen UINuxt UI 4 dengan Tailwind CSS 4
Konten (panduan, changelog)Nuxt Content 3
DatabaseNuxtHub dengan SQLite, lewat Drizzle ORM
Penyimpanan gambarCloudinary
LoginBetter Auth (email dan kata sandi, GitHub, Google)
Package managerBun

Menjalankan di komputermu

  1. Clone repositori, lalu pasang dependensi:
    Terminal
    bun install
    
  2. Salin .env.example menjadi .env, lalu isi NUXT_BETTER_AUTH_SECRET dengan teks acak minimal 32 karakter. Kolom OAuth GitHub dan Google boleh kosong kalau kamu cukup masuk dengan email.
  3. Jalankan server pengembangan:
    Terminal
    bun run dev
    
    Server pengembangan membuat database SQLite di .data/ dan menjalankan migrasinya sendiri.
Unggah gambar bisa dicoba di komputer lokal. Kalau kolom Cloudinary di .env kosong, gambar tersimpan di folder .data/blob.

Sebelum mengirim pull request

Terminal
bun run lint
bun run typecheck

Kalau perubahanmu besar, coba juga build produksi. Build membutuhkan memori lebih besar dari bawaan Node:

Terminal
NODE_OPTIONS=--max-old-space-size=8192 bun run build

Mengubah struktur database

Ubah server/db/schema.ts, lalu buat file migrasi dengan:

Terminal
bunx nuxt-db generate

Jangan menulis atau mengubah tabel lewat skrip manual. Setelah pull request digabungkan, pengelola situs menjalankan migrasinya di server produksi.