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.
<form harvis-form="contact"> <input name="email" type="email" required> <textarea name="message"></textarea> <button>Send</button> </form>
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.
- 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.
- 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.
- 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.
Semuanya cuma dua atribut
harvis menulis ulang formulirnya saat keluar dari server, jadi halaman yang kamu tulis tetap jadi halaman yang kamu tulis.
<form harvis-form="contact"
data-harvis-redirect="/thanks.html">
<input name="email" type="email" required>
<button>Send</button>
</form><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.
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.
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
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.