a small and dependecy free js library to hide easter eggs on your website. You can use it to hide secret cheatcodes and it also includes a small utility to echo keys.
npm install cheatz
then either use the dist/
files as cjs
or the src
files in type="module"
like so:
<script type="module">
import Cheatz from './Cheatz.js';
import Keyecho from './Keyecho.js';
let keyEcho = null;
addEventListener("DOMContentLoaded", () => {
keyEcho = new Keyecho("body");
new Cheatz("body", "i d d q d", function () {
alternatively you can use the statically hosted lib on surge including it like so:
<script src="https://cheatz.surge.sh/cheatz.js"></script>
<script src="https://cheatz.surge.sh/keyecho.js"></script>
Then you can set the Cheat Codes like so: Cheatz
addEventListener("DOMContentLoaded", () => {
// Konami code
new Cheatz("body", "UP UP DOWN DOWN LEFT RIGHT LEFT RIGHT A B", function () { /* DO SOMETHING */});
});
You can customise also other key codes passing it as 4th parameter of new Cheatz()
.
constructor(mountPoint, sequence, callback, additionalMap = {})
the default ones are those, I am using the event.key
value, defined in here.
const keyMaps = {
"UP": "ArrowUp",
"DOWN": "ArrowDown",
"LEFT": "ArrowLeft",
"RIGHT": "ArrowRight",
"ENTER": "Enter",
"TAB": "Tab",
"CTRL": "Control",
"ALT": "Alt",
"SUPER": "Meta"
};
Keyecho
let keyEcho = null;
addEventListener("DOMContentLoaded", () => {
keyEcho = new Keyecho("body");
});
This will listen to every key press and echo them at the bottom right of the page.
![](https://private-user-images.githubusercontent.com/248805/302335304-74deb376-c1ba-4009-846f-89326bd147ae.gif?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA0MzQ0NTksIm5iZiI6MTcyMDQzNDE1OSwicGF0aCI6Ii8yNDg4MDUvMzAyMzM1MzA0LTc0ZGViMzc2LWMxYmEtNDAwOS04NDZmLTg5MzI2YmQxNDdhZS5naWY_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQwNzA4JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MDcwOFQxMDIyMzlaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT02MGZmYjFjYzZmZGI1YzVhM2Q3MDYwZGMyYjY5MDQ1Y2ViYjcyNjc4ZGNjMDljODQ2Mzg4NDBmNTUwYTU5OWRiJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZhY3Rvcl9pZD0wJmtleV9pZD0wJnJlcG9faWQ9MCJ9.2zDe5KxjU6YRMJxhQNQgA3NTwyQcbJo-CB_k8yfm_GI)