Repositori ini menampung daftar prototype dan menampilkannya sebagai card di landing page. Kontributor menambahkan satu folder proyek di root repo, lalu sistem akan meng-generate projects.json secara otomatis saat PR di-merge ke main.
- Fork repo ini di GitHub.
- Clone repo hasil fork:
git clone https://github.com/<username>/prototype-spinotek.git
cd prototype-spinotek- Pastikan kamu berada di branch
main:
git status -sb- Buat folder proyek di root repo.
- Isi
project.jsondan siapkancard.png. - Commit dan push ke fork.
- Buat Pull Request ke repo utama.
- Setelah PR di-merge ke
main, GitHub Actions akan otomatis meng-updateprojects.json. - Card muncul di landing page.
prototype-spinotek/
nama-proyek-kamu/
project.json
card.png
(file lain: index.html, assets, dsb)
Catatan:
- Folder harus di root repo, bukan di subfolder lain.
- Nama folder gunakan slug (huruf kecil, tanda hubung, tanpa spasi).
- Jangan gunakan nama:
script,asset,assets,.github,dist,public.
Contoh:
{
"name": "Nama Proyek Kamu",
"description": "Deskripsi singkat satu-dua kalimat.",
"icon": "rocket",
"category": "Web App",
"status": "COMPLETED",
"tech": ["javascript", "tailwindcss"],
"demo_url": "https://demo.spinotek.com/nama-proyek",
"repo_url": "https://github.com/username/repo",
"added_at": "2026-02-23"
}Field reference:
| Field | Wajib | Keterangan |
|---|---|---|
name |
tidak | Jika kosong, sistem pakai nama folder |
description |
tidak | Maks 150 karakter (boleh kosong) |
icon |
tidak | Emoji atau URL gambar |
category |
ya | Web App / Mobile / Dashboard / AI |
status |
ya | COMPLETED / IN DEVELOPMENT / LIVE DEMO |
tech |
tidak | Slug teknologi |
demo_url |
tidak | Link demo |
repo_url |
tidak | Link repository |
added_at |
tidak | Format YYYY-MM-DD |
Tech slug yang didukung:
html, css, javascript, typescript, tailwindcss, react, react-native, vuejs, laravel, firebase, flutter, dart, python, nodejs, mysql, postgresql, docker
- Ukuran: 1200 x 630 px (rasio 16:9)
- Format: PNG atau JPG (rename jadi
card.png) - Maks ukuran file: 500 KB
- Fork repo ini.
- Clone repo hasil fork:
git clone https://github.com/<username>/prototype-spinotek.git
cd prototype-spinotek- Buat folder proyek di root repo:
nama-proyek-kamu/
- Tambahkan
project.jsondancard.pngke dalam folder tersebut. - Commit dan push ke fork:
git add nama-proyek-kamu/
git commit -m "feat: add [Nama Proyek Kamu]"
git push origin main- Buat Pull Request ke branch
maindi repo utama. - Setelah PR di-merge, sistem akan meng-generate
projects.jsonotomatis dan card muncul.
Workflow Generate projects.json akan berjalan saat ada push ke main yang menyentuh:
*/project.json*/card.pngscript/generate-projects.js
Workflow ini akan:
- Scan semua folder di root yang punya
project.json. - Menggabungkan data menjadi
projects.json. - Commit hasilnya ke
main.
Untuk melihat card secara lokal:
- Jalankan generator:
node script/generate-projects.js- Jalankan server lokal:
python -m http.server 8000- Buka:
http://localhost:8000
- Card tidak muncul di hosting:
- Pastikan
projects.jsonbisa diakses langsung dari URL root hosting. - Pastikan GitHub Pages source =
main / root. - Cek Console di browser untuk error
Failed to load projects.json.
- Pastikan
| Tipe Contributor | Proses |
|---|---|
| Internal Spinotek | 1 approval -> merge |
| External / Klien | Review ketat oleh tim Spinotek |