Skip to content

Rynnsza/smart-earchive

Repository files navigation

Smart E-Archive

Smart E-Archive adalah sistem informasi manajemen arsip digital berbasis web yang dibangun menggunakan Framework Laravel. Aplikasi ini dirancang untuk mempermudah pengelolaan surat masuk, surat keluar, serta pengarsipan dokumen dengan fitur integrasi penyimpanan cloud (Google Drive) dan pelaporan otomatis.

Laravel Badge PHP Badge Tailwind Badge

🌟 Fitur Utama

  • Manajemen Surat Masuk & Keluar: CRUD (Create, Read, Update, Delete) data surat dengan lampiran file.
  • Arsip Digital: Penyimpanan dokumen terpusat yang aman.
  • Integrasi Cloud Storage: Sinkronisasi dokumen otomatis ke Google Drive menggunakan Google Drive API.
  • Laporan & Ekspor:
    • Generate laporan surat dalam format PDF (barryvdh/laravel-dompdf).
    • Ekspor data ke Excel (maatwebsite/excel).
  • Manajemen Pengguna (ACL): Hak akses bertingkat (Administrator & User biasa) menggunakan middleware.
  • Activity Logs: Pencatatan riwayat aktivitas pengguna untuk audit sistem.
  • Dashboard Interaktif: Ringkasan statistik arsip.

🛠 Teknologi yang Digunakan

  • Backend: Laravel 11 Framework
  • Language: PHP ^8.2
  • Frontend: Blade Templates, Tailwind CSS
  • Build Tool: Vite
  • Database: MySQL / MariaDB
  • Third-Party Libraries:
    • google/apiclient & masbug/flysystem-google-drive-ext (Google Drive Integration)
    • maatwebsite/excel (Excel Export)
    • barryvdh/laravel-dompdf (PDF Generation)

📋 Prasyarat Sistem

Sebelum menginstal, pastikan sistem Anda memiliki:

  • PHP >= 8.2
  • Composer
  • Node.js & NPM
  • Database MySQL
  • Akun Google Cloud Platform (untuk kredensial Google Drive API)

🚀 Panduan Instalasi

Ikuti langkah-langkah berikut untuk menjalankan project di lokal:

  1. Clone Repository

    git clone [https://github.com/username/smart-earchive.git](https://github.com/username/smart-earchive.git)
    cd smart-earchive
  2. Instal Dependensi PHP & JavaScript

    composer install
    npm install
  3. Konfigurasi Environment Salin file .env.example menjadi .env:

    cp .env.example .env

    Buka file .env dan sesuaikan konfigurasi database:

    DB_CONNECTION=mysql
    DB_HOST=127.0.0.1
    DB_PORT=3306
    DB_DATABASE=nama_database_anda
    DB_USERNAME=user_database
    DB_PASSWORD=password_database
  4. Generate Application Key

    php artisan key:generate
  5. Migrasi Database & Seeding

    php artisan migrate --seed
  6. Build Assets

    npm run build
  7. Setup Google Drive API (Penting) Agar fitur cloud storage berjalan, Anda perlu mengatur kredensial Google Drive di .env:

    GOOGLE_DRIVE_CLIENT_ID=your_client_id
    GOOGLE_DRIVE_CLIENT_SECRET=your_client_secret
    GOOGLE_DRIVE_FOLDER_ID=your_target_folder_id

    Kemudian jalankan command khusus yang telah disediakan untuk mendapatkan Refresh Token:

    php artisan google:token

    Ikuti instruksi di terminal untuk melakukan otorisasi via browser.

  8. Jalankan Server

    php artisan serve

    Akses aplikasi di http://localhost:8000.

📂 Struktur Project

Berikut adalah gambaran umum struktur folder penting dalam project ini:

smart-earchive/
├── app/
│   ├── Console/Commands/   # Command khusus (mis: GenerateGoogleDriveToken)
│   ├── Http/Controllers/   # Controller logika aplikasi (Archive, Mail, Reports)
│   ├── Models/             # Eloquent Models
│   └── Services/           # CloudStorageService (Logika integrasi Drive)
├── database/
│   ├── migrations/         # Struktur tabel database
│   └── seeders/            # Data awal (User admin, dll)
├── resources/
│   ├── views/              # Tampilan Blade (Frontend)
│   └── css/                # Tailwind configuration
├── routes/
│   └── web.php             # Definisi routing aplikasi
└── composer.json           # Daftar dependensi backend

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages