SilentShield je neviditeľná alternatíva CAPTCHA v súlade s GDPR pre aplikácie React a Next.js. Načítate odľahčený klientsky skript, získate token a overíte ho na serveri pomocou balíka @forge12interactive/silentshield-sdk-js a jediného API kľúča. Nie sú tu žiadne súbory cookie, žiadne sledovanie ani osobné údaje a hosting je v predvolenom nastavení iba v EÚ.

Neviditeľná CAPTCHA pre React & Next.js

Funguje s ľubovoľnou aplikáciou React alebo Next.js vďaka odľahčenému skriptu SilentShield: pri odoslaní získate nonce a overíte ho na backende pomocou @forge12interactive/silentshield-sdk-js. Neviditeľná a v súlade s GDPR.

Integrácia CAPTCHA v Reacte

Developer Experience

Nezávislá od frameworku — funguje s ľubovoľnou aplikáciou React alebo Next.js
Odľahčený klientský skript — nie je potrebný ťažký React balík
Založená na nonce — neviditeľná, bez interakcie používateľa
@forge12interactive/silentshield-sdk-js na overenie na backende
Funguje s App Router aj Pages Router
Kompatibilná s TypeScriptom

Príklady kódu

Vloženie klientského skriptu

<!-- Add to <head> with SRI for security -->
(function () {
  var KEY = "YOUR_API_KEY";
  var SITE = location.hostname;
  var V = "2025.09.1";
  var s = document.createElement('script');
  s.src = "https://api.silentshield.io/client.js?k=" + encodeURIComponent(KEY)
    + "&v=" + encodeURIComponent(V)
    + "&site=" + encodeURIComponent(SITE);
  s.async = true;
  s.crossOrigin = "anonymous";
  document.head.appendChild(s);
})();

React komponent

import React, { useState } from "react";

export default function ContactForm() {
  const [loading, setLoading] = useState(false);
  const [message, setMessage] = useState("");

  const handleSubmit = async (e) => {
    e.preventDefault();
    setLoading(true);

    try {
      // client.js injects a hidden behavior_nonce input into the form —
      // read it from the form data (there is no global SilentShield object).
      const formData = new FormData(e.currentTarget);
      const nonce = formData.get("behavior_nonce");

      // Verify on your backend
      const res = await fetch("/api/verify", {
        method: "POST",
        headers: { "Content-Type": "application/json" },
        body: JSON.stringify({ nonce }),
      });

      const data = await res.json();

      if (res.ok && data.success) {
        setMessage("Successfully verified!");
        // Process form submission
      } else {
        setMessage("Bot detected. Please try again.");
      }
    } catch (error) {
      console.error("Verification failed:", error);
      setMessage("Verification failed. Please try again.");
    } finally {
      setLoading(false);
    }
  };

  return (
    <form onSubmit={handleSubmit}>
      <input type="email" placeholder="Email" required />
      <button type="submit" disabled={loading}>
        {loading ? "Verifying..." : "Submit"}
      </button>
      {message && <p>{message}</p>}
    </form>
  );
}

Overenie na backende (Next.js)

// app/api/verify/route.ts
import { SilentShield } from "@forge12interactive/silentshield-sdk-js";

export async function POST(req: Request) {
  const { nonce } = await req.json();
  const result = await SilentShield.verifyNonce(nonce, process.env.SILENTSHIELD_API_KEY);
  const human = result.ok && result.verdict === "human" && result.confidence >= 0.7;

  if (!human) {
    return Response.json({ error: "Bot detected" }, { status: 403 });
  }

  // Human — process the form
  return Response.json({ success: true });
}

Ako SilentShield funguje v Reacte

SilentShield načíta malý klientsky skript, ktorý vykonáva neviditeľnú kontrolu, kým používateľ interaguje s vaším formulárom. Pri odoslaní váš komponent React alebo Next.js pošle vygenerovaný token na váš backend, kde ho overíte pomocou balíka @forge12interactive/silentshield-sdk-js. Používatelia nikdy nevidia hádanku a váš bundle zostáva ľahký, pretože sa nevykresľuje žiadny náročný widget.

Klientsky skript plus serverové overenie

Nie je potrebné inštalovať žiadny samostatný webový balík @silentshield/react — SilentShield funguje v akejkoľvek aplikácii React alebo Next.js prostredníctvom klientskeho skriptu a serverového overenia. Pridáte skript https://api.silentshield.io/client.js?k=YOUR_API_KEY, prečítate token vo svojom komponente a potvrdíte ho voči https://api.silentshield.io/v1/verify pomocou hlavičky api-key z route handlera alebo API route.

Postup nastavenia

Vytvorte účet a skopírujte svoj API kľúč. Pridajte klientsky skript SilentShield do svojej aplikácie a zachyťte token pri odoslaní formulára. Nainštalujte @forge12interactive/silentshield-sdk-js na svoj server, vytvorte klienta so svojím API kľúčom a zavolajte verify s tokenom. Ak je výsledkom človek, spracujte požiadavku; inak ju odmietnite.

Súkromie a prístupnosť v predvolenom nastavení

SilentShield neukladá žiadne súbory cookie, nevykonáva žiadne sledovanie a nezhromažďuje žiadne osobné údaje, takže vaša aplikácia zostáva v súlade s GDPR. Overovanie beží v predvolenom nastavení na infraštruktúre iba v EÚ. Neviditeľná kontrola spĺňa WCAG 2.1 AA, čo udržiava vaše formuláre použiteľné pre používateľov klávesnice a čítačiek obrazovky bez akejkoľvek vizuálnej výzvy.

Integrujte React teraz

Pridajte skript, overte pomocou @forge12interactive/silentshield-sdk-js — pripravené za pár minút.

Časté otázky

Ako pridať CAPTCHA do aplikácie React?

Načítajte klientský skript SilentShield `https://api.silentshield.io/client.js?k=YOUR_API_KEY` vo svojej aplikácii React alebo Next.js, pri odoslaní získajte nonce a overte ho na svojom backende na adrese `https://api.silentshield.io/v1/verify` pomocou SDK `@forge12interactive/silentshield-sdk-js`. Neexistuje žiadny samostatný webový balík pre React — vzorom je klientský skript plus backendové overenie.

Existuje balík React pre SilentShield?

Samostatný webový balík pre React neexistuje. V Reacte a Next.js pridáte klientsky skript `https://api.silentshield.io/client.js?k=YOUR_API_KEY` a vložený `behavior_nonce` overíte na svojom backende — niekoľkými riadkami fetch alebo oficiálnym balíkom `@forge12interactive/silentshield-sdk-js`. React Native SDK pre mobilné aplikácie je momentálne dostupné na vyžiadanie (early access).

Ako SilentShield funguje s Next.js?

V Next.js zahrniete klientský skript SilentShield do svojich stránok a potom overíte nonce na strane servera — v route handleri alebo API route — pomocou SDK `@forge12interactive/silentshield-sdk-js`, ktoré volá `https://api.silentshield.io/v1/verify` s hlavičkou `api-key`. Tým sa formuláre chránia neviditeľne jediným API kľúčom.

Podporuje SilentShield React Native?

React Native SDK pre mobilné aplikácie je momentálne v early access — vyžiadajte si ho na [email protected]. Overovanie na backende funguje už dnes s `@forge12interactive/silentshield-sdk-js` alebo jednoduchým HTTP volaním na `https://api.silentshield.io/v1/verify` a blokuje automatizované zneužívanie bez toho, aby používateľom zobrazovalo hádanky.

Je SilentShield v súlade s GDPR v aplikácii React?

Áno. Bez ohľadu na framework hostuje SilentShield dáta v predvolenom nastavení v EÚ, nenastavuje žiadne cookies, nevykonáva žiadne sledovanie a ukladá iba pseudonymizované dáta. Váš frontend React načítava jediný klientský skript a váš backend overuje nonce — neukladajú sa žiadne osobné identifikovateľné údaje.

Pridáva SilentShield veľkú záťaž aplikácii React?

Nie. SilentShield načítava jeden odľahčený klientský skript a nemá žiadne obrazové súbory na stiahnutie. Overenie prebieha pomocou behaviorálnych signálov a proof-of-work nonce, overovaných na vašom backende, bez sledovacích volaní tretích strán — takže pridáva len minimálnu záťaž vašej aplikácii React alebo Next.js.