Private — geschützt via Cloudflare Access
Code Templates
& Snippets →
Gesammelte Code-Snippets und Templates aus unseren Projekten. Copy & Paste ready für neue Ideas.
Projekte
Neueste Snippets
Alle anzeigen →export async function verifyJwt(token: string, secret: string) {
const [headerB64, payloadB64, signatureB64] = token.split('.');
const key = await crypto.subtle.importKey(
'raw', encoder.encode(secret),
{ name: 'HMAC', hash: 'SHA-256' }, false, ['verify']
);
return crypto.subtle.verify('HMAC', key, signature, data);
}
Cloudflare Worker Auth Middleware
generalLightweight Auth Middleware für Cloudflare Workers mit JWT Validation und Rate Limiting.
cloudflareworkersjwttypescriptauth
export function useProgress() {
const [progress, setProgress] = useState<Record<string, ProgressEntry>>({});
useEffect(() => {
const stored = localStorage.getItem(STORAGE_KEY);
if (stored) setProgress(JSON.parse(stored));
}, []);
return { progress, completeLesson, addTime, getStats };
}
Learning Progress Tracker
learningReact Hook für Lernfortschritt-Tracking mit localStorage Persistenz und Statistiken.
reacthookstypescriptlocalStorage
router.get('/:slug', async (req, res) => {
const { slug } = req.params;
const url = await redis.get(`url:${slug}`);
if (!url) return res.status(404).json({ error: 'Not found' });
trackClick(slug, { ip: req.ip, userAgent: req.get('user-agent') });
return res.redirect(301, url);
});
URL Shortener — Redirect Logic
urlixExpress.js Route-Handler für Video Downloader mit Redis Lookup und Analytics Tracking.
node.jsexpressredistypescript
export async function hashMessage(message: string): Promise<string> {
const encoder = new TextEncoder();
const data = encoder.encode(message);
const hashBuffer = await crypto.subtle.digest('SHA-256', data);
const hashArray = Array.from(new Uint8Array(hashBuffer));
return hashArray.map((b) => b.toString(16).padStart(2, '0')).join('');
}
Message Hashing & Encryption
hashmsgClient-side Message Hashing mit Web Crypto API — SHA-256, AES-GCM Verschlüsselung für sichere E-Mails.
typescriptcryptoweb-apisecurity
export async function generateBerichtsheftPdf(
entries: BerichtsheftEntry[],
trainee: { name: string; profession: string; year: number }
): Promise<Buffer> {
const browser = await puppeteer.launch({ headless: true });
const page = await browser.newPage();
await page.setContent(html, { waitUntil: 'networkidle0' });
}
Berichtsheft PDF Generator
berichtsheftAutomatische PDF-Generierung für Ausbildungsnachweise mit Puppeteer und HTML Templates.
node.jspuppeteerpdftypescript
function showToast(message, type = 'info') {
const container = document.getElementById('toast-container');
const toast = document.createElement('div');
toast.className = `px-4 py-3 rounded-lg border text-white
${colors[type]} animate-slide-in`;
toast.textContent = message;
container.appendChild(toast);
}
Tailwind UI Components
generalWiederverwendbare UI-Komponenten: Toast Notifications, Modal, Loading Skeleton, und Dark Mode Toggle.
tailwindcsshtmluicomponents