Lewati ke konten
Corsace Documentation
DiscordGitHubTwitchTwitterYouTube

Struktur Direktori

Bagian ini akan menjelaskan struktur direktori repositori Corsace. Informasi di bawah ini akan berguna bagi kamu untuk memahami bagaimana caranya untuk menemukan berkas tertentu, dan di mana kamu harus menempatkan berkas baru. Di samping itu, informasi ini juga berguna untuk memahami bagaimana repositori Corsace diorganisir, dan bagaimana masing-masing komponen situs saling berinteraksi antar satu sama lain.

Dokumentasi ini hanya mencakup struktur direktori yang ada secara garis besar. Untuk informasi yang lebih rinci, klik salah satu tautan pada bagian Navigasi di bawah.

Folder Utama

Sistem Corsace dapat dibagi menjadi tiga bagian utama:

  • Frontend/Client - Rangkaian situs web yang dikunjungi oleh pengguna beserta seluruh asetnya. Seluruh situs Corsace dibuat dengan framework Nuxt 2, kecuali bagian dokumentasi yang dibuat dengan Astro/Starlight.
  • Backend/Server - Berbagai program yang berjalan di server dan terkadang berinteraksi dengan situs frontend.
  • Both/Miscellaneous - Berbagai berkas yang digunakan baik oleh frontend maupun backend serta yang tidak masuk ke dalam kedua kategori lainnya.

Ketiga bagian di atas diwakilkan oleh rangkaian folder berikut:

Berikut merupakan berbagai label yang digunakan untuk menandai kegunaan masing-masing folder:

📁 Frontend/Client📁 Backend/Server📁 Both/Miscellaneous

Berikut merupakan berbagai folder di dalam repositori yang relevan terhadap proyek Corsace:

📁 AYIM - Frontend/Client📁 Assets - Frontend/Client📁 BanchoBot - Backend/Server📁 Closed - Frontend/Client📁 DiscordBot - Backend/Server📁 Docs - Frontend/Client📁 Interfaces - Both/Miscellaneous📁 MCA - Frontend/Client📁 Main - Frontend/Client📁 Models - Backend/Server📁 Open - Frontend/Client📁 Server - Backend/Server📁 Typing - Both/Miscellaneous📁 config - Both/Miscellaneous📁 corsace-chart - Both/Miscellaneous

The following section navigation is currently under construction.

Tergantung dari area yang ingin kamu kembangkan, kamu mungkin hanya akan perlu menggunakan sebagian folder yang ada. Berikut merupakan rincian masing-masing folder:

Frontend/Client

Rangkaian folder berikut digunakan untuk bagian frontend situs web, yang merupakan bagian dari sistem yang dilihat dan diinteraksikan oleh pengguna.

Folder-folder ini (beserta situs web-nya masing-masing) meliputi:

Folder sisanya (📁 Assets) digunakan untuk menyimpan aset-aset berikut untuk seluruh situs web di atas:

  • Gambar/Ikon
  • Font
  • CSS
  • Komponen
  • Terjemahan

Backend/Server

The following section backend/server is currently under construction.

Rangkaian folder berikut digunakan untuk bagian backend situs web, yang berisi server tempat situs web saling berkomunikasi atau node yang digunakan untuk berinteraksi dengan layanan eksternal seperti Discord, osu!, dan lain sebagainya.

Folder-folder ini (beserta layanannya masing-masing) meliputi:

  • 📁 BanchoBot - Bot IRC osu!
  • 📁 DiscordBot - Bot Discord
  • 📁 Server
    • Server - Instansi node yang berjalan pada server utama situs web
    • CronRunner - Instansi node yang menjalankan job cron yang dihasilkan oleh berbagai instansi server yang berbeda
  • Centrifugo - Instansi node yang menjalankan server Centrifugo
    • Berhubung Centrifugo merupakan berkas tunggal yang dijalankan melalui perintah npm (lihat Development/Getting Started#Centrifugo, layanan ini tidak memiliki foldernya tersendiri. Meskipun demikian, terdapat endpoint untuk Centrifugo yang tersimpan pada folder 📁 Server](#).

Folder sisanya (📁 Models) digunakan untuk menyimpan model database untuk server.

Both/Miscellaneous

Rangkaian folder berikut memiliki kegunaannya tersendiri yang tidak tergolong ke dalam kedua kategori di atas:

  • 📁 [Interfaces] - Berkas typing untuk komunikasi antara Nuxt dan Koa
  • 📁 Typing - Tipe augment khusus untuk berbagai pustaka npm yang digunakan
  • 📁 config - Berkas konfigurasi untuk masing-masing instansi sistem
  • 📁 [corsace-chart] - Berkas untuk bagan helm Kubernetes