EU CAPTCHA for Vue.js
Vue.js is a progressive JavaScript framework for building user interfaces, designed to be incrementally adoptable and widely used for single-page applications and interactive components. Protect your Vue.js forms from bots and spam with a privacy-first, EU-hosted CAPTCHA that works with Vue 3 and the Composition API.
Why choose Myra EU CAPTCHA?
Interaction-free user experience
No puzzles, no clicks – invisible bot protection with zero user friction.
Digital sovereignty made in Germany
Fully GDPR-compliant, no cookies, no tracking – developed and hosted in Germany.
Intelligent threat detection
Smart protection trained by more than 100 billion daily Myra CDN signals.
Proven technology
Over 5 billion successfully secured authentication attempts.
How the integration works
1. Create an EU CAPTCHA account
Creating an account is completely free, all you need is a valid email address and you’re ready to go. Choose a plan that covers your needs. The first 3 months are free of charge.
Create an Account2. Create a sitekey
Create a sitekey in the EU CAPTCHA dashboard for the domain you want to protect. Provide a clear label so you can easily identify it later. This sitekey links the widget on your Vue app to your EU CAPTCHA account.
3. Integrate EU CAPTCHA into your Vue app
Install the package by running npm i @myrasec/eu-captcha-vue, then share the integration guide with your developer to add the EU CAPTCHA component to your Vue application.
View integration guide4. Verify the token on your server
To finish the integration, share your sitekey with your developer and validate the eu-captcha-response token against the EU CAPTCHA API before processing any submission.
View server-side guide
5. The EU CAPTCHA widget will appear in your Vue application.
Frequently Asked Questions
How do I add EU CAPTCHA to a Vue.js application?
Install the package with npm i @myrasec/eu-captcha-vue. In your <script setup>, import { EuCaptcha, isEuCaptchaDone } from '@myrasec/eu-captcha-vue'. Place <EuCaptcha :sitekey="captchaSitekey" /> in your form template and call isEuCaptchaDone() in your submit handler before sending data to the server.
Does EU CAPTCHA work with Vue 3 Composition API?
Yes. The @myrasec/eu-captcha-vue package is built for Vue 3 and integrates naturally with the Composition API. Import the component and helper directly in your <script setup> block. Use the :on-complete, :on-expired, and :on-error props to react to widget events and manage verification state.
How do I defer or manually trigger the EU CAPTCHA challenge in Vue?
Set :autostart="false" and provide a widgetId prop on the EuCaptcha component. When you are ready — for example, on a button click — call window.euCaptcha.execute(widgetId). This gives you full control over when the challenge runs, which is useful for multi-step forms or custom submission flows.
Can I use EU CAPTCHA with Vuex or Pinia for state management?
Yes. You can store the eu-captcha-response token in Vuex or Pinia if needed for complex form flows. For most use cases, reading the token directly from the hidden input at the time of submission is simpler and does not require global state management.
Does EU CAPTCHA work with Vue Router when navigating between pages?
Yes. The EuCaptcha component follows standard Vue component lifecycle rules and reinitialises each time it mounts. When navigating between Vue Router routes, components unmount and remount, so the widget reinitialises automatically. Use a :key prop tied to the route if you need to force a full reinitialisation.
Is EU CAPTCHA GDPR compliant for Vue.js applications?
Yes. EU CAPTCHA is operated by an EU-based company, is hosted entirely in Germany, and does not rely on US cloud providers or infrastructure subject to US surveillance laws. The service processes only the data necessary to provide and verify the CAPTCHA (such as IP address and technical browser or device information) in line with the requirements of the GDPR. Your organization remains responsible for providing transparent privacy information, selecting an appropriate legal basis, and obtaining any required consent for your specific Vue.js implementation. This information does not constitute legal advice; please consult your legal counsel for an assessment of your individual case.
Is @myrasec/eu-captcha-vue compatible with Nuxt 3?
Yes. The @myrasec/eu-captcha-vue package works in Nuxt 3 projects. Since the widget requires browser APIs, import and render it inside an onMounted composable or use the <ClientOnly> wrapper component to prevent SSR rendering errors. For server-side token verification, use a Nuxt server route in server/api/.
Ready for a better CAPTCHA?
Experience invisible bot protection with privacy‑first, GDPR‑compliant verification made and hosted in Germany. Try Myra EU CAPTCHA now 3 months for free and secure your web forms without adding friction for your users.
Privacy-first technology
We guarantee zero data transfer to third-country jurisdictions.
Read our privacy policyFast and easy setup
We offer ready-made integrations for many CMS and popular frameworks.
Read our quick start guide