PANTAS Logo

PANTAS - Pelaporan Aduan Tumpukan Sampah

PANTAS merupakan sebuah sistem atau platform pelaporan sampah yang memudahkan masyarakat dalam melaporkan tumpukan sampah liar. Pengguna dapat mengaksesnya melalui platform ini tanpa registrasi, hanya perlu mengaktifkan GPS untuk menentukan lokasi, dan mengunggah foto tumpukan sampah yang akan dilaporkan. Dengan adanya PANTAS, diharapkan masyarakat dapat lebih aktif menjaga kebersihan lingkungan dan lebih peduli terhadap lingkungan.

⭐ Tim C624-PS102

🚀 Fitur Utama PANTAS

Merupakan pengimplementasian Leaflet API dimana sistem dapat mengambil lokasi pelapor atau pengguna saat ini ketika akan membuat sebuah laporan baru, dengan mengizinkan akses lokasi terhadap sistem ini, adapun beberapa fitur utama yang ada pada sistem ini diantaranya:

  • 📍 Location Report History: Memungkinkan website melihat riwayat dimana saja lokasi/titik yang sudah pernah dilaporkan oleh pelapor lain(dapat dilihat pada peta lokasi pada formulir laporan).
  • 📨 Mail Scheduler : Memungkinkan website mengirimkan notifikasi melalui email secara Real-Time kepada pelapor dan admin terkait laporan yang masuk ataupun sedang diproses admin.
  • 📱 WhatsApp Scheduler : Memungkinkan website mengirimkan notifikasi melalui whatsapp secara Real-Time kepada pelapor dan admin terkait laporan yang masuk ataupun sedang diproses admin.

⚙️ Teknologi Pengembangan

  • Frontend :

    javascript React ReactQeury Formik ReactBootstrap Leaflet

  • Backend :

    javascript Express Node.js JWT Prisma Zod NodeMailer

  • DevOps :

    Ubuntu Nginx NginxReveseProxy LetsEncrypt

  • Database :

    PostgreSQL

📘 Panduan Penggunaan 📘

📝 Prerequisites

  • Node Package Manager (NPM)
  • PostgreSQL
  • Node JS 18+
  • Express
  • React

👣 Langkah Instalasi

  1. Cloning proyek

    git clone https://github.com/wahyu12v/Final_Capstone/
  2. Instalasi package

    Untuk menginstall package, kamu perlu menjalankan perintah:

    ./app.sh install
  3. Pergi ke folder Backend

    cd backend/
  4. Buat file konfigurasi .env

    Konfigurasi Database URL:

    DATABASE_URL

    Konfigurasi Client URL:

    CLIENT_URL

    Konfigurasi Client JWT:

    JWT_ACCESS_TOKEN_SECRET JWT_ACCESS_TOKEN_EXPIRES_IN JWT_REFRESH_TOKEN_SECRET JWT_REFRESH_TOKEN_EXPIRES_IN

    Konfigurasi Email SMTP:

    MAIL_HOST MAIL_PORT MAIL_USER MAIL_PASS

    referensi bisa lihat pada file .env.example

  5. Migrasi Database

    Untuk melakukan migrasi, kamu perlu menjalankan perintah:

    npm run migrate
  6. Mempersiapkan akun admin

    Untuk menjalankan seed akun admin, kamu perlu menjalankan perintah:

    npm run seed
  7. Pergi ke folder Client

    cd ../client
  8. Buat file konfigurasi .env

    Konfigurasi Base URL Backend:

    VITE_BASE_URL

    referensi bisa lihat pada file .env.example

  9. Menjalankan Proyek

    Untuk menjalankan Proyek di perangkat, kamu dapat menjalankan perintah:

    ./app.sh start

    pastikan kalian berada pada root folder /Final_Capstone

  10. Untuk mulai mengaksesnya halaman beranda aplikasi kamu perlu mengunjungi http://localhost:5371

  11. Untuk mengakses dashboard kamu perlu masuk terlebih dahulu melalui http:/localhost:5371/masuk Nama Pengguna : admin_pantas

    Kata Sandi : admin123

  12. Akses Dashboard pada http:/localhost:5371/dashboard