Formulare, die ohne Backend funktionieren
Setz ein Attribut auf ein Formular deiner statischen Site und jede Einsendung landet in deinem Dashboard. Kein JavaScript, kein eingebettetes Widget, kein fremder Dienst — und wer es ausfüllt, muss sich nirgends anmelden.
<form harvis-form="contact"> <input name="email" type="email" required> <textarea name="message"></textarea> <button>Send</button> </form>
Drei Schritte, und einer davon ist neu deployen
Es gibt keinen Formularbaukasten zu lernen und keinen Endpunkt zu kopieren. Das Attribut ist die ganze Einrichtung.
- 01
Attribut setzen
Schreib harvis-form an ein beliebiges Formular in deinem HTML. Gib ihm einen Namen, wenn die Site mehr als eines hat. Lass action und method weg — die werden beim Ausliefern der Seite ergänzt.
- 02
Neu deployen
Zieh den Ordner noch einmal rein oder führ npx harvis aus. Nichts zu konfigurieren, kein Schlüssel zum Einfügen, kein Schalter, den du vorher im Dashboard umlegen musst.
- 03
Lesen, was reinkommt
Die Einsendungen erscheinen im Dashboard unter deiner Site, die neuesten zuerst. Öffne eine Zeile, um alles zu lesen, oder nimm den ganzen Stapel als CSV.
Das Ganze sind zwei Attribute
harvis schreibt das Formular auf dem Weg aus dem Server um, damit die Seite, die du geschrieben hast, die Seite bleibt, die du geschrieben hast.
<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>Die zwei Attribute
- harvis-form
- Markiert das Formular als eines, das gesammelt wird. Der Wert benennt es, damit mehrere Formulare auf einer Site auseinandergehalten werden; lässt du den Wert weg, wird unter „default“ gesammelt.
- data-harvis-redirect
- Optional. Die Seite auf deiner Site, auf die Leute nach dem Absenden geschickt werden. Alles, was von deiner Site wegzeigt, wird ignoriert.
Was du bekommst
Alles hier drunter ist von Haus aus an. Für nichts davon gibt es eine Einstellungsseite.
Kein JavaScript
Das Formular sendet so, wie HTML schon immer gesendet hat. Es funktioniert auch mit blockierten Skripten, auf einem langsamen Handy und in einem Browser, der nichts außer Text darstellt.
Spam wird gefiltert
Jedes Formular wird mit einem Lockfeld ausgeliefert, das kein Mensch sehen kann, und was es ausfüllt, wird kommentarlos verworfen. Rate-Limits begrenzen, wie viel ein einzelner Besucher — und eine einzelne Site — pro Stunde senden kann.
So viele Formulare, wie du willst
Gib ihnen Namen — ein Kontaktformular und ein Anmeldeformular auf derselben Site behalten je ihre eigene Liste, und du kannst sie getrennt filtern und exportieren.
Deine eigene Danke-Seite
Zeig mit dem Formular auf eine Seite, die du geschrieben hast, und genau dort landen die Leute nach dem Absenden. Lass es weg, und sie bekommen stattdessen eine schlichte Bestätigungsseite.
Exportieren, wann du willst
Ein Klick gibt dir eine CSV mit einer Spalte für jedes Feld, das jemals jemand abgeschickt hat — ein Formular, das unterwegs eine Frage dazubekommen hat, öffnet sich also trotzdem als eine Tabelle.
Niemandem folgt hier irgendwas
Kein Tracking-Skript, kein Cookie, keine dritte Partei in der Seite. Die Adresse der Besucher wird vor dem Speichern gehasht, und das nur, damit das Rate-Limit zwei Einsendungen auseinanderhalten kann.
Die Grenzen
Großzügig für ein Kontaktformular, eng genug, dass ein auf deine Site gerichtetes Skript dir nicht das Postfach füllt.
- Felder pro Einsendung
- 30
- Länge eines Feldes
- 5.000 Zeichen
- Größe einer Einsendung
- 64 KB
- Einsendungen pro Site
- 60 pro Stunde
- Einsendungen pro Besucher
- 20 pro Stunde
- Aufbewahrt pro Site
- 1.000, neueste zuerst
Fragen
Was Leute fragen, bevor sie ein Formular auf eine statische Site stellen.
Was ist ein statisches Formular?
Ein Formular auf einer Site, die keinen eigenen Server hat. Normalerweise heißt das, dass das Formular nirgendwohin senden kann — deshalb borgen sich statische Sites meist einen fremden Formulardienst. harvis liefert ohnehin jede Seite deiner Site aus und kann die Einsendung deshalb gleich im Vorbeigehen entgegennehmen.
Muss ich programmieren können?
Du musst ein Wort in eine Zeile HTML einfügen können. Wenn eine KI deine Site geschrieben hat, bitte sie, das Attribut harvis-form an das Formular zu schreiben — sie weiß, wie das geht, denn genau das steht in den Anweisungen, die harvis für KI-Assistenten veröffentlicht.
Funktioniert das mit abgeschaltetem JavaScript?
Ja. Genau deshalb ist es so gebaut. Das Formular macht einen ganz gewöhnlichen HTML-Post und der Browser folgt danach einer Weiterleitung — exakt so, wie Formulare funktioniert haben, bevor es JavaScript gab.
Kann ich weiter meinen eigenen Endpunkt oder einen anderen Formulardienst nutzen?
Ja — lass das Attribut einfach weg. Formulare ohne harvis-form werden genau so ausgeliefert, wie du sie geschrieben hast, action inklusive. Bei einem Formular, das es hat, ersetzt harvis die action, denn das Attribut zu setzen ist die Art, zu sagen, wohin die Einsendung gehen soll.
Können Leute Dateien anhängen?
Noch nicht. Ein Datei-Feld auf einem gesammelten Formular funktioniert für die Besucher weiterhin, aber die Datei wird nicht gespeichert — aufbewahrt werden nur die Textfelder.
Was passiert mit den Einsendungen, wenn ich die Site lösche?
Sie gehen mit. Einsendungen gehören zur Site und nicht zu einem Deploy: Neu deployen behält sie, die Site löschen entfernt sie endgültig. Exportier vorher eine CSV, wenn du sie behalten willst.
Stell eine Site online und probier es aus
Veröffentlichen ist kostenlos und dauert etwa zwei Sekunden. Setz das Attribut auf ein Formular, deploye neu und schick dir selbst eine Testnachricht.