@segment/in-eu

Privacy conscious EU detection browser library

Usage no npm install needed!

<script type="module">
  import segmentInEu from 'https://cdn.skypack.dev/@segment/in-eu';
</script>

README

🇪🇺 in-eu

Privacy conscious EU detection browser library

in-eu is a library for roughly detecting whether a website user is in the EU, without requiring a roundtrip to your server or a lookup against a GeoIP database.

It uses the browser's timezone (via the brilliant jstz and locale (navigator.languages) to infer whether someone is in the EU. in-eu trades absolute accuracy for a cautious approach that's more lightweight and respectful of end-user privacy.

Usage

$ npm install @segment/in-eu
import inEU from '@segment/in-eu'

inEU()
// => true | false

or try one of the more specific helpers:

import { isInEUTimezone } from '@segment/in-eu'

/*
 Only checks the browser timezone.
 Useful for checking if someone is physically present in the EU
*/

isInEUTimezone()
// => true | false
import { isEULocale } from '@segment/in-eu'

/*
 Only uses the browser's language/locale
 Useful for checking if someone speaks an european language accounting
 for locale. e.g. pt-PT (portuguese from Portugal)
*/

isEULocale()
// => true | false

License

in-eu is released under the MIT license.