Sistem masjid untuk semua
E-Masjid.My ialah sebuah sistem pengurusan masjid percuma dan sumber terbuka (lesen MIT)
Matlamat-matlamat utama sistem ini ialah seperti berikut.
Mudah untuk digunakan
- Bukan semua orang pakar IT. Mereka bentuk sebuah sistem untuk orang bukan IT memerlukan pertimbangan yang teliti.
Masa untuk menggunakan kemahiran IT untuk berbuat kebaikan
- Sumber terbuka ialah suatu bentuk sedekah — sesuatu yang dituntut dalam Islam.
Jangka hayat yang panjang
- Syarikat pengehosan/teknologi mungkin mati tetapi kami berharap dengan menyerahkan projek ini secara sumber terbuka, projek ini dapat hidup lebih lama demi ummah.
Beri, bukan ambil
- Kita sepatutnya menyumbang kepada komuniti Muslim, terutamanya masjid dan bukan mengambil manfaat daripada mereka.
- Docker
- Java 17 (Spring Boot 3.2.0)
- Maven
- Node 20 (ReactJS 18 + CoreUI + Tailwind CSS)
- VSCode (Disyorkan)
git clone https://github.com/Dev4w4n/e-masjid.my.git;
cd e-masjid.my
sh run-dev.sh
sh run-dev.sh
Skrip ini akan membina semua API secara automatik dan melaksanakan arahan docker-compose yang akan menghidupkan 6 container untuk persekitaran pembangunan.
Apabila kesemua container telah hidup, anda boleh menghentikan mana-mana container yang tidak diperlukan dalam tugasan anda.
Anda juga boleh menggunakan ./gradlew (atau gradlew.bat untuk windows) yg disediakan to memperinci/melaksanakan build. Perintah-perintah di bawah ini akan menunjukkan gradle tasks yang tersedia:
./gradlew task
./gradlew task --all
Sepertimana yang anda dapat lihat pada output ./gradlew task --all
, anda boleh melaksanakan build secara berasingan untuk setiap modul backend. Setiap modul backend ditulis dalam Spring boot, jadi anda boleh menggunakan plugin org.springframework.boot seperti berikut:
cd api
./gradlew api:tabung-api:bootRun --args='--spring.profiles.active=local'
Anda juga boleh menjana fail Jar secara berasingan untuk digunakan pada docker-compose. Cara untuk menjana Jar adalah seperti berikut:
cd api
./gradlew api:tabung-api:bootJar
Fork repo ini dan hantar Pull Request anda.
Kami mahu input anda! Kami ingin menjadikan penyumbangan kepada projek mudah dan telus, sama ada dengan:
- Melaporkan pepijat
- Menghantar pembetulan
- Mencadangkan ciri baru
- Menambah baik ciri
- Dokumentasi
- Ujian unit
Atau anda ingin berbual dengan kami, cari kami di Discord.