Fakultas Ilmu Komputer UI

README.md 3.12 KB
Newer Older
1
## Tentang Aplikasi
FadhilP's avatar
init  
FadhilP committed
2

3
Diskuy adalah sebuah aplikasi forum berbasis web. Thread-thread diskusi dengan topic yang bermacam-macam. Pengguna diwajibkan untuk mebuat akun apabila pengguna ingin mebuat topic, thread dan komen baru.
FadhilP's avatar
init  
FadhilP committed
4

5
6


7
8
## Cara Menjalankan Aplikasi
Untuk menjalankan aplikasi pada local server, perlu dilakukan langkah-langkah dibawah ini :
FadhilP's avatar
init  
FadhilP committed
9

FadhilP's avatar
FadhilP committed
10
    1. Untuk menjalankan Aplikasi, jalankan perintah
11
            npm i
FadhilP's avatar
FadhilP committed
12
13
14
15
16
            npm run dev
            
    2. Buka http://localhost:3000 , aplikasi sudah dapat digunakan.
    
    3. Untuk melakukan register pengguna perlu dicatat panjang password minimal harus 8 huruf untuk dapat terdaftar
FadhilP's avatar
init  
FadhilP committed
17

18
19
20
21
22
23
24
25
26
27
28
29
## Cara Build Docker Image

1. Aplikasi Ini menggunakan Oauth google sehingga membutuhkan variable client_id oauth google. Untuk membuat client oauth google dapat mengikuti tutorial berikut https://support.google.com/cloud/answer/6158849?hl=en. 

2. Setelah membuat client oauth google, anda akan mendapatkan credentials client_id. client ID harap disimpan untuk langkah selanjutnya.

3. Client id yang didapatkan akan menjadi nilai variabel ```REACT_APP_CLIENT_ID``` pada image ini. 

4. Buka file ```nginx/default.conf``` dan perhatikan line berikut

   ```shell
   location /api/ {
30
       proxy_pass 'http://diskuy-backend:4000/api/';
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
      }    
   ```

   Ubah file tersebut sesuai dengan base_url dari api backend yang akan digunakan oleh aplikasi ini

   Contoh template:

   

   ```shell
   location /api/ {
       proxy_pass 'http://<HOST>:<PORT>/api/';
      }    
   ```

   bila menggunakan docker-compose dan server backend satu network dengan yang lain, Maka HOST akan menjadi nama container dan PORT akan menjadi PORT yang di-expose pada Backend server. 

5. Build image dengan perintah berikut.

   ```shell
51
   docker build --build-arg REACT_APP_CLIENT_ID=<GOOGLE_OAUTH_CLIENT_ID> -t diskuy-frontend .
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
   ```

   opsi ```--build-arg``` adalah opsi untuk memasukkan environment variable saat Build image.

   

   Notes:

   Untuk Variabel ```REACT_APP_CLIENT_ID``` belum dapat di dilakukan akibat keterbatasan REACT.

   URL API Backend server belum dapat dipasang secara runtime saat membuat container sehingga harus  dilakuakn secara manual.



## Deploy Docker Image

1. Jalankan perintah ``` docker-compose up``` di root project aplikasi ini


Muhammad Rafif Elfazri's avatar
Muhammad Rafif Elfazri committed
71
## Cara Kontribusi
72

Muhammad Rafif Elfazri's avatar
Muhammad Rafif Elfazri committed
73
74
75
76
77
1. Fork Pada repository ini.
2. Clone pada repository hasil fork pada tahap 1.
3. Set git remote upstream dengan repository original dengan command ```git remote add upstream https://gitlab.cs.ui.ac.id/functional-programming/diskuy-backend.git``` (https) atau ```git remote add upstream git@gitlab.cs.ui.ac.id:functional-programming/diskuy-backend.git``` (ssh)
4. Buatlah branch baru pada repository fork dengan penamaan branch ```feature/nama-feature```
5. Jika fitur tersebut ingin disubmit / merge ke repo upstream, push branch fitur tersebut dan lakukan merge request ke branch master. Set reviewer merge request tersebut dengan owner dari repository ini.
78
79


80
Kelompok 18
FadhilP's avatar
init  
FadhilP committed
81

82
83
84
85
  * Fadhil Pradipta - 1806205344
  * Jonathan - 1806204985
  * Muhammad Rafif ELfazri- 1806205722
  * Ryo Axton Lie - 1806205571
FadhilP's avatar
init  
FadhilP committed
86

87
88
## Acknowledgements
  * CS UI - Functional Programming 2020