-
Notifications
You must be signed in to change notification settings - Fork 123
Cara Ikut Mengembangkan OpenDK
Siapa saja boleh membantu mengembangkan OpenDK.
Pemahaman teknologi yang anda perlukan tergantung dari tugas yang akan anda kerjakan. Teknologi yang digunakan di OpenDK mencakup:
- PHP menggunakan framework Laravel
- HTML
- CSS
- Database Mysql/MariaDB
- Javascript
Source code OpenSID dikelola di Github (https://github.com/OpenSID/OpenDK). Karena itu, untuk membuat kontribusi pada OpenDK, anda perlu juga menguasai:
- git
- Github
Sebelum membuat kontribusi pelajari dulu aplikasinya. Install OpenDK dan pelajari pengoperasiannya. Pelajari source codenya dan pahami garis besar arsitekturnya.
Bergabung pada forum teknis OpenDK di https://opensid.slack.com. Anda dapat bergabung di forum itu melalui tautan ini: http://bit.ly/slack-opensid. Perkenalkan diri anda di forum itu dan ceritakan kontribusi apa yang akan anda lakukan.
Siapkan tempat anda akan lakukan perubahan OpenDK:
- Buat fork dari repo https://github.com/OpenSID/OpenDK
- Clone fork anda di instalasi OpenDK lokal anda
- Siapkan editor yang akan anda gunakan untuk mengubah source code
- Siapkan debugger untuk melacak terjadinya error
Daftar kutu/bugs dan usulan perbaikan OpenDK ada di https://github.com/OpenSID/OpenDK/issues. Daftar ini mencakup bukan hanya tugas-tugas fungsional yang berasal dari pengguna (seperti penambahan fitur baru), tetapi juga tugas-tugas teknis (seperti upgrade Laravel).
Issue fungsional diprioritaskan oleh Komunitas Open Desa. Issue yang diprioritaskan terdaftar di https://github.com/OpenSID/OpenDK/projects/1.
Programmer yang akan kontribusi dihimbau untuk mengerjakan dulu issue yang diprioritaskan. Tetapi tidak harus selalu begitu. Programmer boleh saja mengambil issue lain sesuai minat dan kemampuannya, untuk dikerjakan.
Kalau programmer mempunyai usul perbaikan yang ingin mereka kerjakan, dan belum ada di daftar issue, silakan buat issuenya dulu.
Sebelum mengerjakan issue, yakinkan issue pilihan anda belum dikerjakan programmer lain. Lihat di comment di issue yang bersangkutan. Juga cek pull request di https://github.com/OpenSID/OpenDK/pulls. Yakinkan belum ada pull request untuk issue tersebut.
Biasanya, satu issue dikerjakan oleh satu programmer saja, supaya pengaturannya tidak menjadi rumit.
Setelah anda memilih issue untuk dikerjakan, beritahu bahwa anda akan mengerjakan suatu issue dengan cara berikut:
- tambahkan comment di issue yang bersangkutan
- beritahu forum teknis https://opensid.slack.com, di channel #general.
Periksa issue yang akan dikerjakan. Yakinkan informasi yang dibutuhkan sudah lengkap. Kalau diperlukan informasi tambahan, anda perlu membuka dialog dengan pembuat issue dan juga dengan Tim Teknis OpenDesa:
- Muat pertanyaan anda di comment di issue yang bersangkutan, dengan menambahkan mention pada pembuat issue.
- Juga buat posting di https://www.facebook.com/groups/OpenDK/, meminta semua pengguna yang berkepentingan dengan tugas itu untuk menjawab pertanyaan di issue.
Tugas yang berdampak pada semua pengguna, misalnya mengubah informasi yang ditampilkan pada suatu menu atau laporan, biasanya perlu disepakati dulu oleh Komunitas OpenDesa sebelum dikerjakan.
Yakinkan git anda sudah mengambil dari branch dev yang terkini. Buat git branch baru sebelum mengerjakan issuenya.
Ikuti praktik terbaik dalam koding anda.
Turuti aturan penulisan script standar bagi pemrograman Laravel.
Kalau tugas yang dikerjakan memerlukan perubahan database, buatkan migrasi database seperti dijelaskan di panduan Laravel.
Lakukan testing secara saksama sebelum koding anda bisa dianggap selesai.
Setelah pengerjaan issue sudah rampung, branch anda bisa dikirimkan ke repository OpensID di github sebagai pull request.
Cara membuat pull request dijelaskan di Panduan-mengirimkan-perubahan-repo-OpenDK.
Sebagai pemula, anda dapat memilih issue yang mempunyai label 'bug' atau 'bagus sbg issue pemula' -- karena biasanya issue tersebut lebih mudah.
- Mengenal Git, oleh Anggie Bratadinata
- Bagaimana berkontribusi pada proyek open source
- Tutorial Git dan Github