Skip to content

PerjakaSunda/pikobar-jabarprov-go-id

 
 

Repository files navigation

PIKOBAR WEB

Netlify Status

Web Pikobar (Pusat Informasi dan Koordinasi COVID-19 Jawa Barat), dapat diakses di https://pikobar.jabarprov.go.id

Index

Firebase Setup

Pikobar menggunakan Firebase sebagai backend.

Environment Variable Setup

Service Account

  1. Masuk dengan Google Account, lalu buka https://console.firebase.google.com/.
  2. Buat projek baru. Aktifkan opsi Enable Analytics.
  3. Pada sidebar, lihat grup Develop. Pilih Database. Pilih Create database. Pilih Start in production mode, lalu pilih location yang diinginkan untuk Cloud Firestore. Create Database
  4. Pada sidebar, klik ikon menu ⚙️. Pilih Project settings. Pilih tab Service accounts. Klik Generate new private key. Service account credentials akan diunduh dalam bentuk JSON. Generate service account private key
  5. Ubah nama file JSON dari langkah (4) menjadi config.firebase.service-account.js.
  6. Buka file tersebut lalu ganti isinya menjadi seperti ini. Catatan: sesuaikan nilai dari <VALUE>.
    module.exports = {
      type: '<VALUE>',
      project_id: '<VALUE>',
      private_key_id: '<VALUE>',
      private_key: '<VALUE>',
      client_email: '<VALUE>',
      client_id: '<VALUE>',
      auth_uri: '<VALUE>',
      token_uri: '<VALUE>',
      auth_provider_x509_cert_url: '<VALUE>',
      client_x509_cert_url: '<VALUE>'
    }
  7. Simpan file pada langkah (6) ke dalam root folder project, yakni sejajar dengan package.json.

Firebase SDK

  1. Pada sidebar, pilih Project Overview.
  2. Jika projek masih kosong, pilih ikon berlambang </>.
  3. Jika sudah terdapat aplikasi lain dalam projek, pilih Add app, lalu pilih Web. Add app
  4. Salin nilai variabel firebaseConfig ke dalam file bernama config.firebase.sdk.js. firebaseConfig variable
  5. Taruh file dari langkah (4) pada root folder projek, yakni sejajar dengan package.json.
  6. Buka file tersebut, lalu ganti isinya menjadi seperti ini. Catatan: sesuaikan nilai dari <VALUE>.
    module.exports = {
      apiKey: '<VALUE>',
      authDomain: '<VALUE>',
      databaseURL: '<VALUE>',
      projectId: '<VALUE>',
      storageBucket: '<VALUE>',
      messagingSenderId: '<VALUE>',
      appId: '<VALUE>',
      measurementId: '<VALUE>',
      publicVapidKey: '<VALUE>'
    }
  7. Untuk mendapatkan nilai dari publicVapidKey, klik menu ⚙️ pada sidebar. Pilih Project settings. Pilih tab Cloud Messaging.
  8. Pada bagian Web configuration > Web Push certificates, klik Generate Key Pair. Salin nilai yang muncul ke dalam variabel publicVapidKey pada file di langkah (6). Cloud Messaging generate key pair

Membuat file .env

  1. Pada langkah ini, Anda telah mempunyai file bernama config.firebase.service-account.js dan config.firebase.sdk.js pada root folder projek Anda.
  2. Buka terminal, lalu arahkan ke folder projek Anda.
  3. Jalankah perintah berikut.
    $ npm run write:env
  4. Pastikan perintah tersebut menghasilkan .env yang berkesesuaian dengan .env.example.

Firestore Setup

  1. Di Firebase Console, pada sidebar group Develop, pilih Database, lalu pilih tab Rules. Salin isi file migration/firestore.rules ke area yang disediakan. Lalu pilih Publish. Update Firestore Rules
  2. Buka terminal, lalu arahkan ke folder projek Anda.
  3. Jalankan perintah berikut.
    $ npm run migrate
  4. Proses ini dapat memakan waktu 5-10 menit.
  5. Suksesnya perintah akan ditandai dengan log bertuliskan Firestore data successfully imported.

Build Setup

# install dependencies
$ npm install

# serve with hot reload at localhost:3000
$ npm run dev

# build for production and launch server
$ npm run build
$ npm run start

# generate static project
$ npm run generate

For detailed explanation on how things work, check out Nuxt.js docs.

Pedoman Kontributor

Jabar Digital Service mengucapkan terima kasih kepada publik yang ingin berkontribusi untuk Pikobar 🙏.

Sebagai panduan, kami mempunyai panduan umum untuk kontributor dan panduan kontributor untuk repositori ini.

Releases

No releases published

Packages

No packages published

Languages

  • Vue 92.7%
  • JavaScript 5.5%
  • HTML 1.6%
  • CSS 0.2%