Giter Site home page Giter Site logo

kirofyzu / kiupload-vercel Goto Github PK

View Code? Open in Web Editor NEW
2.0 1.0 0.0 75 KB

Layanan upload file sederhana menggunakan Node.js dan Express.

Home Page: https://kiupload.vercel.app

JavaScript 66.62% CSS 11.17% EJS 22.21%
upload-file uploader uploading

kiupload-vercel's Introduction

Layanan Upload File

Proyek ini adalah layanan upload file sederhana menggunakan Node.js dan Express. Layanan ini memungkinkan pengguna untuk mengupload file melalui form atau URL. File yang diupload disimpan sementara dan akan dihapus secara otomatis setelah 12 jam.

Fitur

  • Upload File via Form: Mengupload file melalui form HTML.
  • Upload File via URL: Mengupload file dari URL yang ditentukan.
  • Penyimpanan Sementara: File disimpan sementara dan dihapus setelah 12 jam.
  • Logging: Pencatatan rinci dari permintaan dan kesalahan.
  • Penanganan Kesalahan Kustom: Halaman kesalahan kustom untuk 404 dan kesalahan lainnya.
  • Tema Night/Light Mode: Tampilan dengan mode gelap dan terang untuk pengalaman pengguna yang lebih baik [NEW].
  • Pratinjau Media: Pratinjau gambar dan video yang diunggah langsung di halaman web[NEW].
  • Penghapusan File Otomatis: File yang diunggah akan dihapus secara otomatis setelah 12 jam [NEW].

Persyaratan

  • Node.js
  • npm

Instalasi

  1. Clone repository ini:

    git clone https://github.com/KiroFyzu/kiupload-vercel.git
  2. Masuk ke direktori proyek:

    cd kiupload-vercel
  3. Install dependencies:

    npm install

Konfigurasi

  • Direktori Upload: Direktori upload default diatur ke ../../tmp/ untuk hosting di Vercel. Jika Anda menghosting secara lokal atau di server dedicated, ubah ke ./tmp/ dalam file app.js.

Penggunaan

  1. Mulai server:

    npm start
  2. Server akan berjalan di http://localhost:3000.

API Endpoints

Upload File via Form

  • URL: /upload
  • Metode: POST
  • Field Form: file (file input)

Respons

  • Sukses:

    {
      "credit": "https://github.com/KiroFyzu/",
      "message": "File uploaded successfully",
      "fileUrl": "http://localhost:3000/uploads/<filename>"
    }
  • Error:

    {
      "error": "Tidak ada file yang diupload atau media tidak support"
    }

Upload File via URL

  • URL: /upload-url
  • Metode: GET
  • Parameter Query: url (URL dari file yang akan diupload)

Respons

  • Sukses:

    {
      "credit": "https://github.com/KiroFyzu/",
      "message": "File uploaded successfully",
      "fileUrl": "http://localhost:3000/uploads/<filename>"
    }
  • Error:

    {
      "error": "URL tidak valid"
    }

Tugas Terjadwal

  • Penghapusan File: File lama (lebih dari 12 jam) dihapus setiap jam.

Penanganan Kesalahan

  • 404 Not Found: Dialihkan ke handler kesalahan.
  • Kesalahan Lainnya: Halaman kesalahan kustom dirender berdasarkan lingkungan.

Changelog dan Fitur Baru

  1. Upload dengan Drag and Drop atau Ctrl+V

    • Pengguna dapat menyeret file ke area form upload atau menempelkan file dengan Ctrl+V.
  2. Preview Media setelah Upload

    • File yang diupload melalui form uploadFromFile akan ditampilkan sebagai preview (gambar atau video).
  3. Tombol Night/Light Mode

    • Tambahkan tombol untuk beralih antara mode malam dan mode terang. Preferensi tema disimpan di local storage.
  4. Pemisahan Tag Styling dan Script

    • Gaya CSS dipisahkan ke dalam file style.css.
    • Kode JavaScript dipisahkan ke dalam file script.js.

aplikasi menjadi lebih interaktif dan terstruktur, meningkatkan kemudahan penggunaan dan pemeliharaan kode.

Lisensi

Proyek ini dilisensikan di bawah Lisensi MIT. Lihat file LICENSE untuk detail lebih lanjut.

Kredit


kiupload-vercel's People

Contributors

fizzo-tips avatar kirofyzu avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.