Форма в Replit

Replit Agent часто додає для контактної форми Express route і базу даних. Промпт лишає форму у фронтенді й надсилає її в Formgong.

  1. Отримайте access key на головній.
  2. Відкрийте застосунок у Replit і вставте промпт в Agent.
  3. Перевірте, що для форми не з’явилося серверного route, бази чи секрету.
  4. Опублікуйте, надішліть тестову заявку і відкрийте її у вхідних Formgong.

Промпт

Додай у застосунок контактну форму без власного бекенду. Заявки приймає Formgong.
- POST на https://formgong.com/submit (звичайна HTML-форма або fetch)
- Приховане поле access_key зі значенням fk_your_access_key (ключ публічний)
- Поля name, email, message; підписи українською
- Приховане honeypot-поле botcheck поза екраном
- Не додавай Express чи Flask route, базу даних, Replit Secrets і nodemailer для цієї форми
- Для fetch: Accept: application/json; успіх — json.success === true

Додатково:
- Приховане поле _lang зі значенням uk (мова сторінки): так помилки, сторінка подяки й автовідповідь будуть українською.
- Необов'язково: приховане поле _redirect з повною https-адресою вашої сторінки подяки. Без нього Formgong покаже власну сторінку подяки.
- Необов'язково: <script src="https://formgong.com/fg.js" async></script> один раз на сторінці. Він підставляє _lang з <html lang> і рахує перегляди форми без cookies.
- Turnstile додавай лише тоді, коли я дам site key.

Мінімальний код

React-компонент

"use client";
import { useState } from "react";

export function ContactForm() {
  const [status, setStatus] = useState("");
  async function onSubmit(event) {
    event.preventDefault();
    const fields = Object.fromEntries(new FormData(event.currentTarget));
    const response = await fetch("https://formgong.com/submit", {
      method: "POST",
      headers: { "Content-Type": "application/json", Accept: "application/json" },
      body: JSON.stringify({ _lang: "uk", ...fields, access_key: "fk_your_access_key" }),
    });
    const result = await response.json();
    setStatus(result.message || (result.success ? "Надіслано. Дякуємо!" : "Не вдалося надіслати. Спробуйте ще раз."));
  }

  return (
    <form onSubmit={onSubmit}>
      <label>Ім’я <input name="name" placeholder="Ваше ім’я" required /></label>
      <label>Email <input name="email" type="email" placeholder="you@example.com" required /></label>
      <label>Повідомлення <textarea name="message" placeholder="Чим ми можемо допомогти?" required /></label>
      <div aria-hidden="true" style={{ position: "absolute", left: "-10000px" }}>
        <input name="botcheck" tabIndex={-1} autoComplete="off" />
      </div>
      <button type="submit">Надіслати</button>
      <p role="status">{status}</p>
    </form>
  );
}

Перед публікацією

  • Форма надсилає на https://formgong.com/submit (action форми або URL у fetch).
  • У access_key ваш ключ із панелі Formgong, а не fk_your_access_key.
  • Є приховане порожнє поле botcheck.
  • _lang збігається з мовою сторінки.
  • Для форми не з’явилося API route, серверної функції, таблиці в базі чи секрету.
  • Тестова заявка є у вхідних Formgong і у вашій пошті.

Отримати ключ