base on Aplikasi Penilaian Direktorat SMK Kemdikbudristek Republik Indonesia <p align="center"><img src="http://app.erapor-smk.net/logo.png" width="600"></p>
## Server Requirements
PHP >= 8.1.0
Ctype PHP Extension
cURL PHP Extension
DOM PHP Extension
Fileinfo PHP Extension
Filter PHP Extension
Hash PHP Extension
Mbstring PHP Extension
OpenSSL PHP Extension
PCRE PHP Extension
PDO PHP Extension
Session PHP Extension
Tokenizer PHP Extension
XML PHP Extension
## Cara Install (Untuk Pengguna Baru)
- Clone Repositori ini
```bash
git clone https://github.com/eraporsmk/erapor7.git dataweb
cd dataweb
```
## Membuat file .env
```bash
cp .env.example .env
nano .env
```
- Koneksi Database
```bash
DB_HOST=127.0.0.1
DB_PORT=5432
DB_DATABASE=db_name
DB_USERNAME=db_user
DB_PASSWORD=db_pass
```
- Install Dependencies
```bash
composer install
```
## Generate App Key
```bash
php artisan key:generate
```
## Migration
- Membuat struktur table
```bash
php artisan migrate
```
- Jalankan seeder
```bash
php artisan db:seed
```
## Untuk pengguna windows:
- Panduan aplikasi & installer. silahkan download [disini](http://erapor.ditpsmk.net/pusat-unduhan)
## Cara Install (Untuk Pengguna Lama)
- Clone Repositori ini
```bash
git clone https://github.com/eraporsmk/erapor7.git dataweb
cd dataweb
```
## Copy file .env
Copy file .env dari root folder aplikasi versi 6xx ke root folder aplikasi versi 7xx
- Install Dependencies
```bash
composer install
```
## Update Versi Aplikasi
```bash
php artisan erapor:update
```
## Edit file .env untuk menampilkan foto profile
```APP_URL=http://localhost:8154```
Sesuaikan dengan alamat/domain yang dipakai
Kemudian tambah kode dibawah ini agar laman register tidak tersedia
```REGISTRATION=false```
## Catatan khusus pengguna windows:
- Konfigurasi koneksi database seperti dibawah ini
```
DB_CONNECTION=pgsql
DB_HOST=127.0.0.1
DB_PORT=58154
DB_DATABASE=windows
DB_USERNAME=windows
DB_PASSWORD=windows
```
## Catatan khusus untuk pengguna lama (ALL OS):
Untuk mengambil gambar/foto/logo yang telah di upload di aplikasi versi sebelumnya, silahkan copy dari aplikasi lama di folder storage/public, kemudian paste di aplikasi baru di folder storage/public
## Fitur Reset Password:
Untuk mengaktifkan fitur reset password, silahkan edit file .env, cari kode dibawah ini:
```
MAIL_MAILER=smtp
MAIL_HOST=mailhog
MAIL_PORT=1025
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS="
[email protected]"
MAIL_FROM_NAME="${APP_NAME}"
```
Kemudian ganti dengan kode ini:
```
MAIL_MAILER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
[email protected]
MAIL_PASSWORD="twvv dabv jimx mykw"
MAIL_ENCRYPTION=ssl
[email protected]
MAIL_FROM_NAME="${APP_NAME}"
```
Kemudian simpan perubahan file .env lalu jalankan:
```
php artisan config:clear
```
Catatan: Tidak perlu merubah apapun, copy paste sesuai yang tertera di deskripsi
## Contributing
1. Fork it (<https://github.com/eraporsmk/erapor7/fork>)
2. Create your feature branch (`git checkout -b feature/fooBar`)
3. Commit your changes (`git commit -am 'Add some fooBar'`)
4. Push to the branch (`git push origin feature/fooBar`)
5. Create a new Pull Request
", Assign "at most 3 tags" to the expected json: {"id":"5937","tags":[]} "only from the tags list I provide: [{"id":77,"name":"3d"},{"id":89,"name":"agent"},{"id":17,"name":"ai"},{"id":54,"name":"algorithm"},{"id":24,"name":"api"},{"id":44,"name":"authentication"},{"id":3,"name":"aws"},{"id":27,"name":"backend"},{"id":60,"name":"benchmark"},{"id":72,"name":"best-practices"},{"id":39,"name":"bitcoin"},{"id":37,"name":"blockchain"},{"id":1,"name":"blog"},{"id":45,"name":"bundler"},{"id":58,"name":"cache"},{"id":21,"name":"chat"},{"id":49,"name":"cicd"},{"id":4,"name":"cli"},{"id":64,"name":"cloud-native"},{"id":48,"name":"cms"},{"id":61,"name":"compiler"},{"id":68,"name":"containerization"},{"id":92,"name":"crm"},{"id":34,"name":"data"},{"id":47,"name":"database"},{"id":8,"name":"declarative-gui "},{"id":9,"name":"deploy-tool"},{"id":53,"name":"desktop-app"},{"id":6,"name":"dev-exp-lib"},{"id":59,"name":"dev-tool"},{"id":13,"name":"ecommerce"},{"id":26,"name":"editor"},{"id":66,"name":"emulator"},{"id":62,"name":"filesystem"},{"id":80,"name":"finance"},{"id":15,"name":"firmware"},{"id":73,"name":"for-fun"},{"id":2,"name":"framework"},{"id":11,"name":"frontend"},{"id":22,"name":"game"},{"id":81,"name":"game-engine "},{"id":23,"name":"graphql"},{"id":84,"name":"gui"},{"id":91,"name":"http"},{"id":5,"name":"http-client"},{"id":51,"name":"iac"},{"id":30,"name":"ide"},{"id":78,"name":"iot"},{"id":40,"name":"json"},{"id":83,"name":"julian"},{"id":38,"name":"k8s"},{"id":31,"name":"language"},{"id":10,"name":"learning-resource"},{"id":33,"name":"lib"},{"id":41,"name":"linter"},{"id":28,"name":"lms"},{"id":16,"name":"logging"},{"id":76,"name":"low-code"},{"id":90,"name":"message-queue"},{"id":42,"name":"mobile-app"},{"id":18,"name":"monitoring"},{"id":36,"name":"networking"},{"id":7,"name":"node-version"},{"id":55,"name":"nosql"},{"id":57,"name":"observability"},{"id":46,"name":"orm"},{"id":52,"name":"os"},{"id":14,"name":"parser"},{"id":74,"name":"react"},{"id":82,"name":"real-time"},{"id":56,"name":"robot"},{"id":65,"name":"runtime"},{"id":32,"name":"sdk"},{"id":71,"name":"search"},{"id":63,"name":"secrets"},{"id":25,"name":"security"},{"id":85,"name":"server"},{"id":86,"name":"serverless"},{"id":70,"name":"storage"},{"id":75,"name":"system-design"},{"id":79,"name":"terminal"},{"id":29,"name":"testing"},{"id":12,"name":"ui"},{"id":50,"name":"ux"},{"id":88,"name":"video"},{"id":20,"name":"web-app"},{"id":35,"name":"web-server"},{"id":43,"name":"webassembly"},{"id":69,"name":"workflow"},{"id":87,"name":"yaml"}]" returns me the "expected json"