formulir

Formulir yang jalan tanpa backend

Tambahkan satu atribut ke formulir di situs statis kamu dan setiap kiriman mendarat di dashboard. Tanpa JavaScript, tanpa widget tempelan, tanpa layanan pihak ketiga, dan orang yang mengisinya pun tidak perlu mendaftar apa-apa.

index.html
<form harvis-form="contact">
  <input name="email" type="email" required>
  <textarea name="message"></textarea>
  <button>Send</button>
</form>
how it works

Tiga langkah, dan salah satunya cuma deploy ulang

Tidak ada pembuat formulir yang harus dipelajari dan tidak ada endpoint yang harus disalin. Atribut itulah seluruh setelannya.

  1. 01

    Tambahkan atributnya

    Taruh harvis-form di formulir mana pun dalam HTML kamu. Beri nama kalau situsnya punya lebih dari satu. Biarkan action dan method kosong — keduanya diisi saat halaman disajikan.

  2. 02

    Deploy ulang

    Seret foldernya lagi, atau jalankan npx harvis. Tidak ada yang perlu dikonfigurasi, tidak ada kunci yang perlu ditempel, tidak ada sakelar yang harus dinyalakan dulu di dashboard.

  3. 03

    Baca yang masuk

    Kiriman muncul di bawah situs kamu di dashboard, yang terbaru di atas. Buka satu baris untuk membaca semuanya, atau ambil semuanya sekaligus sebagai CSV.

the markup

Semuanya cuma dua atribut

harvis menulis ulang formulirnya saat keluar dari server, jadi halaman yang kamu tulis tetap jadi halaman yang kamu tulis.

yang kamu tulis
<form harvis-form="contact"
      data-harvis-redirect="/thanks.html">
  <input name="email" type="email" required>
  <button>Send</button>
</form>
yang diterima pengunjung kamu
<form harvis-form="contact"
      data-harvis-redirect="/thanks.html"
      action="/__harvis/form/contact" method="post">
  <input type="hidden" name="_harvis_redirect" value="/thanks.html">
  <input type="text" name="_harvis_hp" tabindex="-1" aria-hidden="true" style="…">
  <input name="email" type="email" required>
  <button>Send</button>
</form>

Dua atribut itu

harvis-form
Menandai formulir sebagai formulir yang dikumpulkan. Nilainya jadi namanya, supaya beberapa formulir di satu situs tetap terpisah; kalau nilainya dikosongkan, kiriman dikumpulkan di bawah “default”.
data-harvis-redirect
Opsional. Halaman di situs kamu yang jadi tujuan orang setelah mengirim. Apa pun yang mengarah ke luar situs kamu akan diabaikan.
included

Apa yang kamu dapat

Semua di bawah ini sudah aktif sejak awal. Tidak ada halaman pengaturan untuk satu pun dari ini.

  • Tanpa JavaScript

    Formulir mengirim seperti cara HTML mengirim sejak dulu. Tetap jalan meski skrip diblokir, di ponsel yang lambat, dan di browser yang cuma menampilkan teks.

  • Spam disaring

    Setiap formulir disajikan dengan kolom umpan yang tidak terlihat manusia, dan apa pun yang mengisinya dibuang tanpa pemberitahuan. Batas laju membatasi berapa banyak yang bisa dikirim satu pengunjung, dan satu situs, dalam sejam.

  • Formulir sebanyak yang kamu mau

    Beri nama masing-masing — formulir kontak dan formulir pendaftaran di situs yang sama sama-sama punya daftar sendiri, dan bisa kamu filter serta ekspor terpisah.

  • Halaman terima kasih buatan sendiri

    Arahkan formulir ke halaman yang kamu tulis sendiri, dan di situlah orang mendarat setelah mengirim. Kalau tidak diisi, mereka akan melihat halaman konfirmasi sederhana.

  • Ekspor kapan saja

    Satu tombol memberi kamu CSV dengan satu kolom untuk setiap kolom yang pernah dikirim siapa pun, jadi formulir yang menambah pertanyaan di tengah jalan tetap terbuka sebagai satu tabel.

  • Tidak ada yang mengikuti siapa pun

    Tanpa skrip pelacak, tanpa cookie, tanpa pihak ketiga di dalam halaman. Alamat pengunjung di-hash sebelum disimpan, dan itu pun hanya supaya batas laju bisa membedakan dua kiriman.

limits

Batasannya

Longgar untuk formulir kontak, dan cukup ketat supaya skrip yang diarahkan ke situs kamu tidak membanjiri kotak masuk.

Kolom per kiriman
30
Panjang satu kolom
5.000 karakter
Ukuran satu kiriman
64 KB
Kiriman per situs
60 per jam
Kiriman per pengunjung
20 per jam
Disimpan per situs
1.000, terbaru dulu
faq

Pertanyaan

Yang biasa ditanyakan orang sebelum menaruh formulir di situs statis.

Apa itu formulir statis?

Formulir di situs yang tidak punya server sendiri. Biasanya itu berarti formulirnya tidak punya tempat untuk mengirim apa pun, dan karena itulah situs statis biasanya meminjam layanan formulir pihak ketiga. harvis toh sudah menyajikan setiap halaman situs kamu, jadi dia bisa menerima kirimannya sekalian di jalan.

Apakah aku harus bisa coding?

Kamu cuma perlu bisa menambahkan satu kata ke satu baris HTML. Kalau situsmu ditulis AI, minta saja dia menambahkan atribut harvis-form ke formulirnya — dia tahu caranya, karena instruksi yang harvis terbitkan untuk asisten AI memang menyebutkannya.

Apakah tetap jalan kalau JavaScript dimatikan?

Ya. Justru itu alasannya dibuat seperti ini. Formulirnya melakukan post HTML biasa dan browser mengikuti sebuah pengalihan setelahnya, persis seperti cara formulir bekerja sebelum JavaScript ada.

Bisakah aku tetap pakai endpoint sendiri atau layanan formulir lain?

Bisa — cukup jangan tambahkan atributnya. Formulir tanpa harvis-form disajikan persis seperti yang kamu tulis, action dan semuanya. Pada formulir yang punya atribut itu, harvis mengganti action-nya, karena menambahkan atribut itulah cara kamu menyatakan ke mana kiriman harus pergi.

Bisakah orang melampirkan file?

Belum. Kolom file di formulir yang dikumpulkan tetap berfungsi untuk pengunjung, tapi filenya tidak disimpan — hanya kolom teks yang dipertahankan.

Apa yang terjadi pada kiriman kalau situsnya aku hapus?

Ikut hilang. Kiriman milik situs, bukan milik satu deploy, jadi deploy ulang tetap menyimpannya dan menghapus situs menghilangkannya untuk selamanya. Ekspor CSV dulu kalau kamu ingin menyimpannya.

Bikin situs online dan coba sendiri

Publikasi itu gratis dan makan waktu sekitar dua detik. Tambahkan atributnya ke sebuah formulir, deploy ulang, lalu kirim pesan uji ke dirimu sendiri.

Bikin situs online