Atom eve seo
11
.claude/launch.json
Normal file
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"version": "0.0.1",
|
||||
"configurations": [
|
||||
{
|
||||
"name": "dev",
|
||||
"runtimeExecutable": "npm",
|
||||
"runtimeArgs": ["run", "dev"],
|
||||
"port": 3050
|
||||
}
|
||||
]
|
||||
}
|
||||
52
.eve/agent-summary.json
Normal file
7048
.eve/cache/model-catalog.json
vendored
Normal file
7
.eve/compile/channel-instrumentation-types.d.ts
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
// Generated by eve. Do not edit by hand.
|
||||
import type { InferChannelMetadata } from "eve/channels";
|
||||
|
||||
declare module "eve/channels" {
|
||||
interface ChannelMetadataMap {}
|
||||
interface ChannelReferenceMap {}
|
||||
}
|
||||
30
.eve/compile/compile-metadata.json
Normal file
@@ -0,0 +1,30 @@
|
||||
{
|
||||
"compile": {
|
||||
"moduleMap": {
|
||||
"path": ".eve/compile/module-map.mjs",
|
||||
"sha256": "c76cab7c1a37dca6eb591740264f371cca3e74760abc1f9fc4652f959f1e0353"
|
||||
}
|
||||
},
|
||||
"discovery": {
|
||||
"diagnostics": {
|
||||
"path": ".eve/discovery/diagnostics.json",
|
||||
"sha256": "b26fc8e66ee943f962b1bab4a790f6a611ce7e6738aa29f83ea53b73cc362c63"
|
||||
},
|
||||
"manifest": {
|
||||
"path": ".eve/discovery/agent-discovery-manifest.json",
|
||||
"sha256": "305c68e3493f0a1ba53702641dbf8675e60374b68a24b73f13b69ac6246dbcaa"
|
||||
},
|
||||
"sourceGraphHash": "3370c163e654fd12b5b4097da0747ee823445d615e0713c04b38ac808c739532",
|
||||
"summary": {
|
||||
"errors": 0,
|
||||
"warnings": 0
|
||||
}
|
||||
},
|
||||
"generator": {
|
||||
"name": "eve",
|
||||
"version": "0.16.2"
|
||||
},
|
||||
"kind": "eve-compile-metadata",
|
||||
"status": "ready",
|
||||
"version": 5
|
||||
}
|
||||
180
.eve/compile/compiled-agent-manifest.json
Normal file
258
.eve/compile/compiled-artifacts-bootstrap.mjs
Normal file
21
.eve/compile/module-map.mjs
Normal file
@@ -0,0 +1,21 @@
|
||||
// Generated by eve. Do not edit by hand.
|
||||
|
||||
import * as module_0 from "../../agent/connections/dataforseo.ts";
|
||||
import * as module_1 from "../../agent/sandbox/sandbox.ts";
|
||||
import * as module_2 from "../../agent/tools/list_search_console_sites.ts";
|
||||
import * as module_3 from "../../agent/tools/query_search_analytics.ts";
|
||||
|
||||
export const moduleMap = Object.freeze({
|
||||
"nodes": Object.freeze({
|
||||
"__root__": Object.freeze({
|
||||
"modules": Object.freeze({
|
||||
"connections/dataforseo.ts": module_0,
|
||||
"sandbox/sandbox.ts": module_1,
|
||||
"tools/list_search_console_sites.ts": module_2,
|
||||
"tools/query_search_analytics.ts": module_3
|
||||
})
|
||||
})
|
||||
})
|
||||
});
|
||||
|
||||
export default moduleMap;
|
||||
@@ -0,0 +1,88 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
|
||||
mkdir -p "${AGENT_BROWSER_ASSETS_DIR:-reports/assets}"
|
||||
if [ ! -f package.json ]; then
|
||||
npm init -y >/dev/null
|
||||
fi
|
||||
if [ ! -x node_modules/.bin/agent-browser ]; then
|
||||
npm install agent-browser@latest playwright@latest "$@"
|
||||
fi
|
||||
|
||||
install_agent_browser_shim() {
|
||||
local bin_dir="/usr/local/bin"
|
||||
mkdir -p "$bin_dir"
|
||||
cat > "$bin_dir/agent-browser" <<'SHIM'
|
||||
#!/usr/bin/env bash
|
||||
exec /workspace/node_modules/.bin/agent-browser "$@"
|
||||
SHIM
|
||||
chmod +x "$bin_dir/agent-browser"
|
||||
}
|
||||
|
||||
install_agent_browser_shim
|
||||
|
||||
run_agent_browser_setup_check() {
|
||||
if command -v timeout >/dev/null 2>&1; then
|
||||
timeout 60s npx agent-browser --session setup-check open about:blank >/tmp/agent-browser-setup-check.log 2>&1
|
||||
else
|
||||
npx agent-browser --session setup-check open about:blank >/tmp/agent-browser-setup-check.log 2>&1
|
||||
fi
|
||||
}
|
||||
|
||||
validate_agent_browser_config() {
|
||||
echo "[setup-agent-browser] validating browser launch..."
|
||||
if run_agent_browser_setup_check; then
|
||||
npx agent-browser --session setup-check close >/dev/null 2>&1 || true
|
||||
echo "[setup-agent-browser] browser launch validation passed."
|
||||
return 0
|
||||
fi
|
||||
|
||||
npx agent-browser --session setup-check close >/dev/null 2>&1 || true
|
||||
echo "[setup-agent-browser] browser launch validation failed:" >&2
|
||||
cat /tmp/agent-browser-setup-check.log >&2 || true
|
||||
rm -f agent-browser.json
|
||||
return 1
|
||||
}
|
||||
|
||||
if [ -f .agent-browser-ready ] && validate_agent_browser_config; then
|
||||
exit 0
|
||||
fi
|
||||
rm -f .agent-browser-ready
|
||||
|
||||
install_system_chromium() {
|
||||
if ! command -v apt-get >/dev/null 2>&1; then
|
||||
return 1
|
||||
fi
|
||||
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
echo "[setup-agent-browser] installing system Chromium..."
|
||||
apt-get update
|
||||
if ! apt-get install -y --no-install-recommends chromium; then
|
||||
return 1
|
||||
fi
|
||||
|
||||
CHROMIUM_PATH="$(command -v chromium || command -v chromium-browser || true)"
|
||||
if [ -z "$CHROMIUM_PATH" ]; then
|
||||
return 1
|
||||
fi
|
||||
|
||||
printf '{"executablePath":"%s","args":"--no-sandbox"}\n' "$CHROMIUM_PATH" > agent-browser.json
|
||||
echo "[setup-agent-browser] using Chromium at $CHROMIUM_PATH"
|
||||
validate_agent_browser_config
|
||||
}
|
||||
|
||||
install_playwright_chromium() {
|
||||
echo "[setup-agent-browser] installing Playwright Chromium fallback..."
|
||||
npx playwright install --with-deps chromium
|
||||
CHROMIUM_PATH="$(node -e "const { chromium } = require('playwright'); console.log(chromium.executablePath())")"
|
||||
printf '{"executablePath":"%s","args":"--no-sandbox"}\n' "$CHROMIUM_PATH" > agent-browser.json
|
||||
echo "[setup-agent-browser] using Playwright Chromium at $CHROMIUM_PATH"
|
||||
validate_agent_browser_config
|
||||
}
|
||||
|
||||
if ! install_system_chromium; then
|
||||
echo "[setup-agent-browser] system Chromium unavailable or unusable; falling back to Playwright Chromium..."
|
||||
install_playwright_chromium
|
||||
fi
|
||||
touch .agent-browser-ready
|
||||
32
.eve/compile/workspace-resources/__root__/setup-gh.sh
Normal file
@@ -0,0 +1,32 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
AGENT_NAME="${1:-atom-eve-agent}"
|
||||
|
||||
if ! command -v gh >/dev/null 2>&1; then
|
||||
GH_VERSION="2.62.0"
|
||||
TARBALL="gh_${GH_VERSION}_linux_amd64.tar.gz"
|
||||
URL="https://github.com/cli/cli/releases/download/v${GH_VERSION}/${TARBALL}"
|
||||
|
||||
mkdir -p "$HOME/.local"
|
||||
curl -fsSL "$URL" -o "/tmp/${TARBALL}"
|
||||
tar -xzf "/tmp/${TARBALL}" -C "$HOME/.local" --strip-components=1
|
||||
rm -f "/tmp/${TARBALL}"
|
||||
|
||||
export PATH="$HOME/.local/bin:$PATH"
|
||||
if ! grep -qs '.local/bin' "$HOME/.profile" 2>/dev/null; then
|
||||
printf '\nexport PATH="$HOME/.local/bin:$PATH"\n' >> "$HOME/.profile"
|
||||
fi
|
||||
fi
|
||||
|
||||
if ! command -v gh >/dev/null 2>&1; then
|
||||
echo "gh installed but not found on PATH; expected $HOME/.local/bin/gh" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
git config --global user.name "$AGENT_NAME"
|
||||
git config --global user.email "${AGENT_NAME}@users.noreply.github.com"
|
||||
|
||||
if gh auth status >/dev/null 2>&1; then
|
||||
gh auth setup-git >/dev/null 2>&1 || true
|
||||
fi
|
||||
75
.eve/discovery/agent-discovery-manifest.json
Normal file
9
.eve/discovery/diagnostics.json
Normal file
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"diagnostics": [],
|
||||
"kind": "eve-discovery-diagnostics",
|
||||
"summary": {
|
||||
"errors": 0,
|
||||
"warnings": 0
|
||||
},
|
||||
"version": 1
|
||||
}
|
||||
3
.eve/nitro/eve-cache.json
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"eveVersion": "0.16.2"
|
||||
}
|
||||
17
.eve/nitro/workflow/steps.mjs
Normal file
@@ -0,0 +1,17 @@
|
||||
// Generated by eve. Do not edit by hand.
|
||||
import "file:///C:/Users/timo/Documents/qrmaster/QR-master/node_modules/eve/dist/src/internal/workflow/builtins.js";
|
||||
import "file:///C:/Users/timo/Documents/qrmaster/QR-master/.eve/compile/compiled-artifacts-bootstrap.mjs";
|
||||
import "file:///C:/Users/timo/Documents/qrmaster/QR-master/node_modules/eve/dist/src/execution/create-session-step.js";
|
||||
import "file:///C:/Users/timo/Documents/qrmaster/QR-master/node_modules/eve/dist/src/execution/delegated-parent-notification.js";
|
||||
import "file:///C:/Users/timo/Documents/qrmaster/QR-master/node_modules/eve/dist/src/execution/dispatch-runtime-actions-step.js";
|
||||
import "file:///C:/Users/timo/Documents/qrmaster/QR-master/node_modules/eve/dist/src/execution/dispatch-workflow-runtime-actions-step.js";
|
||||
import "file:///C:/Users/timo/Documents/qrmaster/QR-master/node_modules/eve/dist/src/execution/durable-session-store.d.ts";
|
||||
import "file:///C:/Users/timo/Documents/qrmaster/QR-master/node_modules/eve/dist/src/execution/forward-turn-delivery-step.js";
|
||||
import "file:///C:/Users/timo/Documents/qrmaster/QR-master/node_modules/eve/dist/src/execution/route-child-delivery.d.ts";
|
||||
import "file:///C:/Users/timo/Documents/qrmaster/QR-master/node_modules/eve/dist/src/execution/session-callback-step.js";
|
||||
import "file:///C:/Users/timo/Documents/qrmaster/QR-master/node_modules/eve/dist/src/execution/subagent-adapter.js";
|
||||
import "file:///C:/Users/timo/Documents/qrmaster/QR-master/node_modules/eve/dist/src/execution/turn-control-protocol.js";
|
||||
import "file:///C:/Users/timo/Documents/qrmaster/QR-master/node_modules/eve/dist/src/execution/workflow-entry.d.ts";
|
||||
import "file:///C:/Users/timo/Documents/qrmaster/QR-master/node_modules/eve/dist/src/execution/workflow-steps.d.ts";
|
||||
import "file:///C:/Users/timo/Documents/qrmaster/QR-master/node_modules/eve/dist/src/execution/workflow-steps.js";
|
||||
export const __steps_registered = true;
|
||||
6
.eve/nitro/workflow/workflows-handler.mjs
Normal file
@@ -0,0 +1,6 @@
|
||||
// Generated by eve. Do not edit by hand.
|
||||
import { POST } from "../../../node_modules/eve/.eve/workflow-cache/97d43a998b3c/workflows.mjs";
|
||||
|
||||
export default async ({ req }) => {
|
||||
return await POST(req);
|
||||
};
|
||||
@@ -0,0 +1,88 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
|
||||
mkdir -p "${AGENT_BROWSER_ASSETS_DIR:-reports/assets}"
|
||||
if [ ! -f package.json ]; then
|
||||
npm init -y >/dev/null
|
||||
fi
|
||||
if [ ! -x node_modules/.bin/agent-browser ]; then
|
||||
npm install agent-browser@latest playwright@latest "$@"
|
||||
fi
|
||||
|
||||
install_agent_browser_shim() {
|
||||
local bin_dir="/usr/local/bin"
|
||||
mkdir -p "$bin_dir"
|
||||
cat > "$bin_dir/agent-browser" <<'SHIM'
|
||||
#!/usr/bin/env bash
|
||||
exec /workspace/node_modules/.bin/agent-browser "$@"
|
||||
SHIM
|
||||
chmod +x "$bin_dir/agent-browser"
|
||||
}
|
||||
|
||||
install_agent_browser_shim
|
||||
|
||||
run_agent_browser_setup_check() {
|
||||
if command -v timeout >/dev/null 2>&1; then
|
||||
timeout 60s npx agent-browser --session setup-check open about:blank >/tmp/agent-browser-setup-check.log 2>&1
|
||||
else
|
||||
npx agent-browser --session setup-check open about:blank >/tmp/agent-browser-setup-check.log 2>&1
|
||||
fi
|
||||
}
|
||||
|
||||
validate_agent_browser_config() {
|
||||
echo "[setup-agent-browser] validating browser launch..."
|
||||
if run_agent_browser_setup_check; then
|
||||
npx agent-browser --session setup-check close >/dev/null 2>&1 || true
|
||||
echo "[setup-agent-browser] browser launch validation passed."
|
||||
return 0
|
||||
fi
|
||||
|
||||
npx agent-browser --session setup-check close >/dev/null 2>&1 || true
|
||||
echo "[setup-agent-browser] browser launch validation failed:" >&2
|
||||
cat /tmp/agent-browser-setup-check.log >&2 || true
|
||||
rm -f agent-browser.json
|
||||
return 1
|
||||
}
|
||||
|
||||
if [ -f .agent-browser-ready ] && validate_agent_browser_config; then
|
||||
exit 0
|
||||
fi
|
||||
rm -f .agent-browser-ready
|
||||
|
||||
install_system_chromium() {
|
||||
if ! command -v apt-get >/dev/null 2>&1; then
|
||||
return 1
|
||||
fi
|
||||
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
echo "[setup-agent-browser] installing system Chromium..."
|
||||
apt-get update
|
||||
if ! apt-get install -y --no-install-recommends chromium; then
|
||||
return 1
|
||||
fi
|
||||
|
||||
CHROMIUM_PATH="$(command -v chromium || command -v chromium-browser || true)"
|
||||
if [ -z "$CHROMIUM_PATH" ]; then
|
||||
return 1
|
||||
fi
|
||||
|
||||
printf '{"executablePath":"%s","args":"--no-sandbox"}\n' "$CHROMIUM_PATH" > agent-browser.json
|
||||
echo "[setup-agent-browser] using Chromium at $CHROMIUM_PATH"
|
||||
validate_agent_browser_config
|
||||
}
|
||||
|
||||
install_playwright_chromium() {
|
||||
echo "[setup-agent-browser] installing Playwright Chromium fallback..."
|
||||
npx playwright install --with-deps chromium
|
||||
CHROMIUM_PATH="$(node -e "const { chromium } = require('playwright'); console.log(chromium.executablePath())")"
|
||||
printf '{"executablePath":"%s","args":"--no-sandbox"}\n' "$CHROMIUM_PATH" > agent-browser.json
|
||||
echo "[setup-agent-browser] using Playwright Chromium at $CHROMIUM_PATH"
|
||||
validate_agent_browser_config
|
||||
}
|
||||
|
||||
if ! install_system_chromium; then
|
||||
echo "[setup-agent-browser] system Chromium unavailable or unusable; falling back to Playwright Chromium..."
|
||||
install_playwright_chromium
|
||||
fi
|
||||
touch .agent-browser-ready
|
||||
@@ -0,0 +1,32 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
AGENT_NAME="${1:-atom-eve-agent}"
|
||||
|
||||
if ! command -v gh >/dev/null 2>&1; then
|
||||
GH_VERSION="2.62.0"
|
||||
TARBALL="gh_${GH_VERSION}_linux_amd64.tar.gz"
|
||||
URL="https://github.com/cli/cli/releases/download/v${GH_VERSION}/${TARBALL}"
|
||||
|
||||
mkdir -p "$HOME/.local"
|
||||
curl -fsSL "$URL" -o "/tmp/${TARBALL}"
|
||||
tar -xzf "/tmp/${TARBALL}" -C "$HOME/.local" --strip-components=1
|
||||
rm -f "/tmp/${TARBALL}"
|
||||
|
||||
export PATH="$HOME/.local/bin:$PATH"
|
||||
if ! grep -qs '.local/bin' "$HOME/.profile" 2>/dev/null; then
|
||||
printf '\nexport PATH="$HOME/.local/bin:$PATH"\n' >> "$HOME/.profile"
|
||||
fi
|
||||
fi
|
||||
|
||||
if ! command -v gh >/dev/null 2>&1; then
|
||||
echo "gh installed but not found on PATH; expected $HOME/.local/bin/gh" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
git config --global user.name "$AGENT_NAME"
|
||||
git config --global user.email "${AGENT_NAME}@users.noreply.github.com"
|
||||
|
||||
if gh auth status >/dev/null 2>&1; then
|
||||
gh auth setup-git >/dev/null 2>&1 || true
|
||||
fi
|
||||
@@ -0,0 +1,17 @@
|
||||
{
|
||||
"env": {
|
||||
"HOME": "/",
|
||||
"PATH": "/usr/bin:/bin",
|
||||
"IFS": " \t\n",
|
||||
"OSTYPE": "linux-gnu",
|
||||
"MACHTYPE": "x86_64-pc-linux-gnu",
|
||||
"HOSTTYPE": "x86_64",
|
||||
"HOSTNAME": "localhost",
|
||||
"PWD": "/workspace",
|
||||
"OLDPWD": "/workspace",
|
||||
"OPTIND": "1",
|
||||
"SHELLOPTS": "braceexpand:hashall:interactive-comments",
|
||||
"BASHOPTS": "globskipdots"
|
||||
},
|
||||
"version": 1
|
||||
}
|
||||
3
.output/eve-cache.json
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"eveVersion": "0.16.2"
|
||||
}
|
||||
17
.output/nitro.json
Normal file
@@ -0,0 +1,17 @@
|
||||
{
|
||||
"date": "2026-07-15T12:01:57.010Z",
|
||||
"preset": "node-server",
|
||||
"framework": {
|
||||
"name": "nitro",
|
||||
"version": "3.0.260610-beta"
|
||||
},
|
||||
"versions": {
|
||||
"nitro": "3.0.260610-beta"
|
||||
},
|
||||
"serverEntry": "server/index.mjs",
|
||||
"publicDir": "public",
|
||||
"commands": {
|
||||
"preview": "node ./server/index.mjs"
|
||||
},
|
||||
"config": {}
|
||||
}
|
||||
4
.output/public/.well-known/security.txt
Normal file
@@ -0,0 +1,4 @@
|
||||
Contact: mailto:security@qrmaster.net
|
||||
Expires: 2027-01-01T00:00:00.000Z
|
||||
Strategies: https://www.qrmaster.net/.well-known/security.txt
|
||||
Preferred-Languages: en, de
|
||||
BIN
.output/public/1234567890abcdef.txt
Normal file
1
.output/public/5b9d3b9b2d156ee884bbfc4700bdf2b4.txt
Normal file
@@ -0,0 +1 @@
|
||||
5b9d3b9b2d156ee884bbfc4700bdf2b4
|
||||
BIN
.output/public/Background__White_#FFFFFF_202604201334.png
Normal file
|
After Width: | Height: | Size: 1.5 MiB |
BIN
.output/public/Move_the_4-5_202604201400.png
Normal file
|
After Width: | Height: | Size: 1.4 MiB |
BIN
.output/public/Screenshot 2026-04-20 132947.png
Normal file
|
After Width: | Height: | Size: 108 KiB |
BIN
.output/public/Screenshot 2026-04-22 123347.png
Normal file
|
After Width: | Height: | Size: 128 KiB |
BIN
.output/public/Split-screen_product_comparison_202604201333.png
Normal file
|
After Width: | Height: | Size: 2.0 MiB |
1
.output/public/ads.txt
Normal file
@@ -0,0 +1 @@
|
||||
google.com, pub-2782770414424875, DIRECT, f08c47fec0942fa0
|
||||
BIN
.output/public/barcode-generator-preview.png
Normal file
|
After Width: | Height: | Size: 398 KiB |
1
.output/public/bb6dfaacf1ed41a880281c426c54ed7c.txt
Normal file
@@ -0,0 +1 @@
|
||||
bb6dfaacf1ed41a880281c426c54ed7c
|
||||
BIN
.output/public/blog/1-hero.webp
Normal file
|
After Width: | Height: | Size: 86 KiB |
BIN
.output/public/blog/2-body.webp
Normal file
|
After Width: | Height: | Size: 139 KiB |
BIN
.output/public/blog/2-hero.webp
Normal file
|
After Width: | Height: | Size: 126 KiB |
BIN
.output/public/blog/best-qr-generator-2026.png
Normal file
|
After Width: | Height: | Size: 749 KiB |
BIN
.output/public/blog/building-qr-generator.png
Normal file
|
After Width: | Height: | Size: 737 KiB |
BIN
.output/public/blog/bulk-qr-events-hero.png
Normal file
|
After Width: | Height: | Size: 804 KiB |
BIN
.output/public/blog/dynamic-vs-static-hero-v2.png
Normal file
|
After Width: | Height: | Size: 860 KiB |
BIN
.output/public/blog/editing_qr_dashboard.png
Normal file
|
After Width: | Height: | Size: 696 KiB |
BIN
.output/public/blog/free-barcode-generator-guide.png
Normal file
|
After Width: | Height: | Size: 623 KiB |
BIN
.output/public/blog/free-vs-paid-qr.png
Normal file
|
After Width: | Height: | Size: 601 KiB |
BIN
.output/public/blog/instagram-qr-code.png
Normal file
|
After Width: | Height: | Size: 577 KiB |
BIN
.output/public/blog/qr-analytics-guide-hero.png
Normal file
|
After Width: | Height: | Size: 630 KiB |
BIN
.output/public/blog/qr-api.png
Normal file
|
After Width: | Height: | Size: 865 KiB |
BIN
.output/public/blog/qr-code-analytics-dashboard.png
Normal file
|
After Width: | Height: | Size: 350 KiB |
BIN
.output/public/blog/qr-code-analytics-hero-v2.png
Normal file
|
After Width: | Height: | Size: 863 KiB |
BIN
.output/public/blog/qr-code-analytics-hero.webp
Normal file
|
After Width: | Height: | Size: 99 KiB |
BIN
.output/public/blog/qr-code-events.png
Normal file
|
After Width: | Height: | Size: 896 KiB |
BIN
.output/public/blog/qr-code-generator-guide-hero.png
Normal file
|
After Width: | Height: | Size: 454 KiB |
BIN
.output/public/blog/qr-code-tracking-guide-body.png
Normal file
|
After Width: | Height: | Size: 215 KiB |
BIN
.output/public/blog/qr-code-tracking-guide-hero.webp
Normal file
|
After Width: | Height: | Size: 94 KiB |
BIN
.output/public/blog/qr-code-tracking-hero-v2.png
Normal file
|
After Width: | Height: | Size: 646 KiB |
BIN
.output/public/blog/qr-marketing-best-practices-hero.png
Normal file
|
After Width: | Height: | Size: 699 KiB |
BIN
.output/public/blog/qr-marketing-strategy.png
Normal file
|
After Width: | Height: | Size: 672 KiB |
BIN
.output/public/blog/qr-print-sizes.png
Normal file
|
After Width: | Height: | Size: 614 KiB |
BIN
.output/public/blog/qr-security.png
Normal file
|
After Width: | Height: | Size: 966 KiB |
BIN
.output/public/blog/qr-sizes-body.png
Normal file
|
After Width: | Height: | Size: 668 KiB |
BIN
.output/public/blog/qr-statistics-2026.png
Normal file
|
After Width: | Height: | Size: 712 KiB |
BIN
.output/public/blog/restaurant-qr-body.png
Normal file
|
After Width: | Height: | Size: 706 KiB |
BIN
.output/public/blog/restaurant-qr-menu.png
Normal file
|
After Width: | Height: | Size: 741 KiB |
BIN
.output/public/blog/small-business-body.png
Normal file
|
After Width: | Height: | Size: 759 KiB |
BIN
.output/public/blog/small-business-qr.png
Normal file
|
After Width: | Height: | Size: 766 KiB |
BIN
.output/public/blog/spotify-qr-code.png
Normal file
|
After Width: | Height: | Size: 577 KiB |
BIN
.output/public/blog/static-vs-dynamic-qr-code.png
Normal file
|
After Width: | Height: | Size: 2.2 MiB |
BIN
.output/public/blog/static-vs-dynamic-qr-codes-body.png
Normal file
|
After Width: | Height: | Size: 320 KiB |
BIN
.output/public/blog/static-vs-dynamic-qr-codes-hero.png
Normal file
|
After Width: | Height: | Size: 266 KiB |
BIN
.output/public/blog/static_vs_dynamic.png
Normal file
|
After Width: | Height: | Size: 714 KiB |
BIN
.output/public/blog/sustainable-packaging-qr.png
Normal file
|
After Width: | Height: | Size: 726 KiB |
51
.output/public/blog/teams-qr-code.svg
Normal file
@@ -0,0 +1,51 @@
|
||||
<svg width="1600" height="900" viewBox="0 0 1600 900" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect width="1600" height="900" rx="48" fill="url(#bg)"/>
|
||||
<circle cx="1320" cy="160" r="220" fill="#7C7DFF" fill-opacity="0.18"/>
|
||||
<circle cx="1260" cy="720" r="260" fill="#4F52D9" fill-opacity="0.16"/>
|
||||
<rect x="84" y="88" width="1432" height="724" rx="36" fill="#FFFFFF" fill-opacity="0.88"/>
|
||||
<rect x="132" y="136" width="660" height="628" rx="32" fill="#F6F7FF"/>
|
||||
<rect x="180" y="188" width="118" height="118" rx="28" fill="#6264A7"/>
|
||||
<path d="M214 218H284V236H258V320H240V236H214V218Z" fill="white"/>
|
||||
<rect x="330" y="194" width="250" height="28" rx="14" fill="#1E293B"/>
|
||||
<rect x="330" y="242" width="178" height="18" rx="9" fill="#64748B"/>
|
||||
<rect x="180" y="350" width="564" height="150" rx="28" fill="white"/>
|
||||
<rect x="212" y="382" width="214" height="86" rx="20" fill="#EEF2FF"/>
|
||||
<rect x="454" y="382" width="258" height="18" rx="9" fill="#334155"/>
|
||||
<rect x="454" y="416" width="210" height="16" rx="8" fill="#94A3B8"/>
|
||||
<rect x="454" y="448" width="182" height="16" rx="8" fill="#CBD5E1"/>
|
||||
<rect x="180" y="532" width="564" height="184" rx="28" fill="#1E1B4B"/>
|
||||
<rect x="216" y="568" width="200" height="112" rx="24" fill="#312E81"/>
|
||||
<rect x="452" y="568" width="228" height="20" rx="10" fill="white"/>
|
||||
<rect x="452" y="606" width="194" height="16" rx="8" fill="#C7D2FE"/>
|
||||
<rect x="452" y="638" width="152" height="16" rx="8" fill="#A5B4FC"/>
|
||||
<rect x="852" y="136" width="616" height="628" rx="32" fill="#F8FAFC"/>
|
||||
<rect x="916" y="200" width="488" height="488" rx="36" fill="white"/>
|
||||
<rect x="964" y="248" width="112" height="112" rx="18" fill="#0F172A"/>
|
||||
<rect x="984" y="268" width="72" height="72" rx="10" fill="white"/>
|
||||
<rect x="1244" y="248" width="112" height="112" rx="18" fill="#0F172A"/>
|
||||
<rect x="1264" y="268" width="72" height="72" rx="10" fill="white"/>
|
||||
<rect x="964" y="516" width="112" height="112" rx="18" fill="#0F172A"/>
|
||||
<rect x="984" y="536" width="72" height="72" rx="10" fill="white"/>
|
||||
<rect x="1112" y="248" width="44" height="44" rx="8" fill="#0F172A"/>
|
||||
<rect x="1176" y="248" width="44" height="44" rx="8" fill="#0F172A"/>
|
||||
<rect x="1112" y="312" width="44" height="44" rx="8" fill="#0F172A"/>
|
||||
<rect x="1176" y="312" width="108" height="44" rx="8" fill="#0F172A"/>
|
||||
<rect x="1112" y="392" width="44" height="44" rx="8" fill="#0F172A"/>
|
||||
<rect x="1176" y="392" width="44" height="108" rx="8" fill="#0F172A"/>
|
||||
<rect x="1240" y="392" width="44" height="44" rx="8" fill="#0F172A"/>
|
||||
<rect x="1304" y="392" width="44" height="44" rx="8" fill="#0F172A"/>
|
||||
<rect x="1112" y="456" width="108" height="44" rx="8" fill="#0F172A"/>
|
||||
<rect x="1304" y="456" width="44" height="44" rx="8" fill="#0F172A"/>
|
||||
<rect x="1112" y="520" width="44" height="44" rx="8" fill="#0F172A"/>
|
||||
<rect x="1240" y="520" width="108" height="44" rx="8" fill="#0F172A"/>
|
||||
<rect x="1112" y="584" width="172" height="44" rx="8" fill="#0F172A"/>
|
||||
<rect x="1304" y="584" width="44" height="44" rx="8" fill="#0F172A"/>
|
||||
<rect x="916" y="712" width="252" height="20" rx="10" fill="#334155"/>
|
||||
<rect x="916" y="744" width="188" height="16" rx="8" fill="#94A3B8"/>
|
||||
<defs>
|
||||
<linearGradient id="bg" x1="160" y1="96" x2="1464" y2="804" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#4F46E5"/>
|
||||
<stop offset="1" stop-color="#0F172A"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.4 KiB |
BIN
.output/public/blog/trackable-qr-codes.png
Normal file
|
After Width: | Height: | Size: 662 KiB |
BIN
.output/public/blog/utm-qr-codes.png
Normal file
|
After Width: | Height: | Size: 679 KiB |
BIN
.output/public/blog/vcard-qr-body.png
Normal file
|
After Width: | Height: | Size: 720 KiB |
BIN
.output/public/blog/vcard-qr-code.png
Normal file
|
After Width: | Height: | Size: 577 KiB |
BIN
.output/public/blog/whatsapp-qr-code.png
Normal file
|
After Width: | Height: | Size: 584 KiB |
BIN
.output/public/email-hero-light.png
Normal file
|
After Width: | Height: | Size: 531 KiB |
BIN
.output/public/favicon.ico
Normal file
|
After Width: | Height: | Size: 933 B |
32
.output/public/favicon.svg
Normal file
@@ -0,0 +1,32 @@
|
||||
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<!-- Modern gradient background -->
|
||||
<defs>
|
||||
<linearGradient id="bgGradient" x1="0%" y1="0%" x2="100%" y2="100%">
|
||||
<stop offset="0%" style="stop-color:#3B82F6;stop-opacity:1" />
|
||||
<stop offset="100%" style="stop-color:#1D4ED8;stop-opacity:1" />
|
||||
</linearGradient>
|
||||
</defs>
|
||||
|
||||
<rect width="32" height="32" rx="7" fill="url(#bgGradient)"/>
|
||||
|
||||
<!-- Modern QR code pattern with rounded corners -->
|
||||
<!-- Top left corner finder -->
|
||||
<rect x="5" y="5" width="10" height="10" rx="2" fill="white"/>
|
||||
<rect x="7" y="7" width="6" height="6" rx="1" fill="#1D4ED8"/>
|
||||
|
||||
<!-- Top right corner finder -->
|
||||
<rect x="17" y="5" width="10" height="10" rx="2" fill="white"/>
|
||||
<rect x="19" y="7" width="6" height="6" rx="1" fill="#1D4ED8"/>
|
||||
|
||||
<!-- Bottom left corner finder -->
|
||||
<rect x="5" y="17" width="10" height="10" rx="2" fill="white"/>
|
||||
<rect x="7" y="19" width="6" height="6" rx="1" fill="#1D4ED8"/>
|
||||
|
||||
<!-- Modern data pattern with circles and rounded squares -->
|
||||
<circle cx="19" cy="17" r="1.5" fill="white"/>
|
||||
<circle cx="23" cy="17" r="1.5" fill="white"/>
|
||||
<circle cx="19" cy="21" r="1.5" fill="white"/>
|
||||
<circle cx="23" cy="21" r="1.5" fill="white"/>
|
||||
<circle cx="19" cy="25" r="1.5" fill="white"/>
|
||||
<circle cx="23" cy="25" r="1.5" fill="white"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.4 KiB |
BIN
.output/public/favicon1.png
Normal file
|
After Width: | Height: | Size: 119 KiB |
1
.output/public/googleccd5315437d68a49.html
Normal file
@@ -0,0 +1 @@
|
||||
google-site-verification: googleccd5315437d68a49.html
|
||||
3
.output/public/grid-pattern.svg
Normal file
@@ -0,0 +1,3 @@
|
||||
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M24 0H0V24" stroke="currentColor" stroke-width="0.5" stroke-opacity="0.1"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 193 B |
BIN
.output/public/hero-fluid.png
Normal file
|
After Width: | Height: | Size: 518 KiB |
BIN
.output/public/hero-qr-scan-mockup.png
Normal file
|
After Width: | Height: | Size: 70 KiB |
13
.output/public/humans.txt
Normal file
@@ -0,0 +1,13 @@
|
||||
/* TEAM */
|
||||
Founder: Timo Knuth
|
||||
Site: https://qrmaster.net
|
||||
Twitter: @qrmaster
|
||||
|
||||
/* THANKS */
|
||||
Thanks to: Next.js, Vercel, Tailwind CSS, Stripe, Supabase
|
||||
|
||||
/* SITE */
|
||||
Last update: 2026/01/12
|
||||
Language: English, German
|
||||
Doctype: HTML5
|
||||
IDE: VS Code
|
||||
|
After Width: | Height: | Size: 657 KiB |
|
After Width: | Height: | Size: 516 KiB |
|
After Width: | Height: | Size: 423 KiB |
|
After Width: | Height: | Size: 650 KiB |
|
After Width: | Height: | Size: 646 KiB |
|
After Width: | Height: | Size: 492 KiB |
|
After Width: | Height: | Size: 700 KiB |
|
After Width: | Height: | Size: 422 KiB |
BIN
.output/public/images/og/og-crypto-generator.png
Normal file
|
After Width: | Height: | Size: 531 KiB |
BIN
.output/public/images/og/og-custom-qr-generator.png
Normal file
|
After Width: | Height: | Size: 464 KiB |
BIN
.output/public/images/og/og-email-generator.png
Normal file
|
After Width: | Height: | Size: 496 KiB |
BIN
.output/public/images/og/og-event-generator.png
Normal file
|
After Width: | Height: | Size: 593 KiB |
BIN
.output/public/images/og/og-facebook-generator.png
Normal file
|
After Width: | Height: | Size: 583 KiB |
BIN
.output/public/images/og/og-geolocation-generator.png
Normal file
|
After Width: | Height: | Size: 511 KiB |
BIN
.output/public/images/og/og-image.png
Normal file
|
After Width: | Height: | Size: 464 KiB |
BIN
.output/public/images/og/og-instagram-generator.png
Normal file
|
After Width: | Height: | Size: 448 KiB |
BIN
.output/public/images/og/og-location-generator.png
Normal file
|
After Width: | Height: | Size: 511 KiB |