CookieNoticeJS is a very simple, extendable and small (→ 2 kB gzip) vanilla JS script with multi language support for GDPR/DSGVO transparency and notification purposes that provides an easy way to show a cookie notice on your website.
Cookie notice at the bottom of the page
Cookie notice at the top of the page
Available via npm
npm install cookie-notice
npm test
To use in your project There are plenty ways for integration:
When installed via npm, include in any project by using path below:
<script src="node-modules/cookie-notice/dist/cookie.notice.min.js"></script>
For usage with Angular2+ add line below in "scripts" section in angular-cli.json:
{
"scripts": [
"../node_modules/cookie-notice/dist/cookie.notice.js",
"../optional/path/to/custom/cookie-notice-config.js"
]
}
When cloned directly from gitHub use path below:
<script src="cookie-notice/dist/cookie.notice.min.js"></script>
You will get a dismissable banner on the bottom of your pages showing a default cookie audit like the following:
We use cookies to make sure you can have the best experience on our website. If you continue to use this site we assume that you will be happy with it.
You can check out an example integration at Deutsche Telekom.
Depending on the visitor browser language one of the preloaded translations will be shown. At the moment ** CookieNoticeJS** supports following languages out of the box:
- IT (Italiano)
- EN (English)
default
- FR (Français)
- PT (Português)
- ES (Español)
- NL (Nederlands)
- DE (Deutsch)
- PL (Polski)
You can also add any other language code
If you want to contribute with an extra language or find translation issues do not hesitate to open an issue or a PR.
CookieNoticeJS has been successfully tested on IE9+, Chrome, Firefox and Safari.
For the most of you including the script should be enough but CookieNoticeJS comes with many customization options. Let's see an example:
<script src="js/cookie.notice.min.js"></script>
<script>
new cookieNoticeJS({
// Localizations of the notice message
'messageLocales': {
'it': 'Custom localized message'
},
// Localizations of the dismiss button text
'buttonLocales': {
'it': 'Chiudi'
},
// Position for the cookie-notifier (default=bottom)
'cookieNoticePosition': 'top',
// Shows the "learn more button (default=false)
'learnMoreLinkEnabled': false,
// The href of the learn more link must be applied if (learnMoreLinkEnabled=true)
'learnMoreLinkHref': '/learn/more/index.html',
// Text for optional learn more button
'learnMoreLinkText': {
'en': 'learn more'
},
// The message will be shown again in X days
'expiresIn': 30,
// Specify a custom font family and size in pixels
'fontFamily': 'inherit',
'fontSize': '12px',
// Dismiss button background color
'buttonBgColor': '#d35400',
// Dismiss button text color
'buttonTextColor': '#fff',
// Notice background color
'noticeBgColor': '#000',
// Notice text color
'noticeTextColor': '#fff',
// the learnMoreLink color (default='#009fdd')
'linkColor': '#f00',
// The target of the learn more link (default='', or '_blank')
'linkTarget': '',
// Print debug output to the console (default=false)
'debug': false
});
</script>
Configuration options can be put in a data-cookie-notice
HTML attribute in JSON format. Note, you can include the
Javascript from the unpkg CDN (browse). For example:
<script
data-cookie-notice='{ "learnMoreLinkEnabled": true, "learnMoreLinkHref": "/privacy.html" }'
src="https://unpkg.com/cookie-notice@^1/dist/cookie.notice.min.js"
></script>
Alessandro Benoit
License: MIT