Membangun Bersama Komunitas Pengembang Indonesia

Panduan Kontribusi Remotika

Terima kasih atas ketertarikan Anda untuk berkontribusi! Proyek ini dibangun secara open-source untuk membantu pengembang dan freelancer Indonesia memetakan perusahaan global yang terbukti mempekerjakan talenta lokal secara remote.

Cara Ikut Berkontribusi

Anda tidak harus menjadi ahli coding untuk berkontribusi. Kami menyambut segala bentuk partisipasi dari komunitas:

Saran Perusahaan

Sampaikan informasi perusahaan remote asing baru yang mempekerjakan developer lokal via fitur "Sarankan Perusahaan" di Direktori. Pipa data kami akan langsung mendeteksi dan memverifikasi profil mereka.

Coba Fitur Saran

Laporkan Masalah

Menemukan bug di UI, kejanggalan dalam pipeline data, atau kesalahan deteksi wilayah? Laporkan langsung dengan membuat Issue baru pada repositori GitHub kami.

Buka GitHub Issue

Pull Request

Suka memodifikasi kode? Bantu kami memperbaiki bug, meningkatkan performa pipeline data, memoles tampilan UI/UX, atau mengoptimalkan SEO melalui pengiriman Pull Request.

Lihat Pull Requests

Memulai Pengembangan Lokal

Jalankan Remotika secara lokal di komputer Anda untuk mulai melakukan modifikasi:

1Prasyarat & Kloning Repositori

Pastikan komputer Anda sudah terpasang Node.js (v18 ke atas) dan paket manager seperti NPM atau Yarn. Kemudian klon repositori dan masuk ke direktori proyek:

# Kloning via SSH atau HTTPS

$ git clone git@github.com:hryagstn/remotika.git

$ cd remotika

2Konfigurasi Environment Variable

Buat berkas bernama .env di direktori utama proyek. Masukkan konfigurasi berikut:

# Personal Access Token klasik untuk memindai organisasi GitHub tanpa kena rate limit

GITHUB_TOKEN=isi_dengan_token_github_pat_anda

# URL Repositori Utama

NEXT_PUBLIC_GITHUB_REPO=https://github.com/hryagstn/remotika

Anda dapat membuat GitHub Personal Access Token klasik dengan hak akses minimal (tanpa mencentang scope apapun untuk akses data publik saja) di akun GitHub Anda.

3Instalasi & Jalankan Server Lokal

Lakukan instalasi seluruh dependensi proyek, kemudian aktifkan development server lokal:

# Mengunduh paket-paket dependensi

$ npm install

# Menjalankan Next.js development server

$ npm run dev

Buka tautan http://localhost:3000 di browser Anda untuk melihat aplikasi berjalan.

Menguji Pipa Data Lokal

Untuk menguji bagaimana pipa data kami mengumpulkan data lowongan kerja global serta memverifikasi pengembang Indonesia secara otomatis:

Pipa data (*data pipeline*) kami dapat dijalankan secara terpisah dari server web dengan mengeksekusi script mandiri menggunakan perintah:

# Menjalankan integrasi lowongan kerja & deteksi talenta GitHub

$ npm run pipeline

3 Tahapan Saringan yang Berjalan di Pipeline:

Saringan A

Public Members

Memeriksa lokasi profil GitHub member organisasi publik terhadap kata kunci wilayah Indonesia.

Saringan B

PR Association

Mendeteksi aktivitas pengiriman Pull Request ke repositori organisasi oleh kontributor resmi asal Indonesia.

Saringan C

Commit Email

Mencocokkan domain email komit git dengan domain perusahaan untuk mengonfirmasi relasi kerja internal.

Siklus Kerja Pengiriman Pull Request

Ikuti langkah terstruktur ini untuk memastikan Pull Request Anda dapat langsung diterima dan di-merge:

1

Lakukan Fork & Buat Branch Baru

Lakukan Fork pada repositori Remotika di GitHub, kemudian buat branch baru di repositori lokal Anda untuk menampung perubahan:

$ git checkout -b fitur/fitur-keren-anda

2

Lakukan Perubahan & Verifikasi Build

Tulis kode atau perbaikan Anda. Sebelum melakukan commit, selalu pastikan seluruh kode berhasil dikompilasi dengan sukses tanpa ada error TypeScript atau Next.js:

$ npm run build

3

Commit Perubahan dengan Pesan Jelas

Tulis commit Anda menggunakan format pesan commit yang jelas dan deskriptif agar mudah dipahami saat proses review:

$ git commit -m "feat: menambah filter pencarian dinamis"

4

Push & Kirim Pull Request

Kirim perubahan Anda ke branch fork Anda di GitHub, lalu ajukan Pull Request ke repositori utama kami:

$ git push origin fitur/fitur-keren-anda

Dokumentasi API Publik (Read-Only)

Gunakan API publik kami yang transparan untuk mengonsumsi data direktori Remotika secara programmatic:

GEThttps://remotika.vercel.app/api/v1/companies

Query Parameters (Opsional)

ParameterTipeDeskripsi
hasActiveJobsbooleanFilter status perekrutan aktif (`true` atau `false`).
labelstringFilter tingkatan verifikasi (`top-pick`, `established`, `indonesia-friendly`, `confirmed`).
minVerifiedCountnumberFilter jumlah minimum talenta Indonesia yang terverifikasi.
industrystringPencarian parsial nama industri (e.g. `technology`).
limitnumberBatasan jumlah data yang dikembalikan (Default: `50`, Max: `200`).
offsetnumberOffset pemotongan data untuk paginasi (Default: `0`).

Contoh Respons JSON (200 OK)

{
  "data": [
    {
      "name": "Automattic",
      "githubOrg": "automattic",
      "githubOrgUrl": "https://github.com/automattic",
      "label": "confirmed",
      "verifiedIndonesianCount": 1,
      "hasActiveJobs": false,
      "verifiedAt": "2026-06-15T00:00:00Z",
      "profileUrl": "https://remotika.vercel.app/company/automattic"
    }
  ],
  "meta": {
    "total": 5,
    "limit": 50,
    "offset": 0
  }
}

Dukungan CORS

Header Access-Control-Allow-Origin: * aktif secara default untuk mendukung panggilan langsung dari klien/sisi browser.

Batasan Throttling (Rate Limit)

Maksimum 60 permintaan per menit per alamat IP. Permintaan berlebih akan mengembalikan kode status 429 Too Many Requests.

Lisensi Kontribusi

Dengan ikut mengirimkan kontribusi ke repositori Remotika, Anda menyetujui bahwa seluruh kode, teks, maupun dokumentasi yang Anda sumbangkan akan dilisensikan secara resmi di bawah Lisensi MIT yang melekat pada proyek ini.

Kembali ke Halaman Direktori