php
<?php

namespace App\Message;

final class PurgeExpiredTokensMessage
{

Recurring Cleanup Task with Symfony Scheduler and Messenger Handler

symfony scheduler messenger
by codesnips 4 tabs
javascript
const { AsyncLocalStorage } = require('async_hooks');

const storage = new AsyncLocalStorage();

function runWithTenant(tenantId, userId, callback) {
  return storage.run({ tenantId, userId }, callback);

Per-Tenant Request Context in Express With AsyncLocalStorage and a Scoped Repository

express multi-tenancy middleware
by codesnips 4 tabs
typescript
import { useCallback, useState } from 'react';

type CopiedValue = string | null;
type CopyFn = (text: string) => Promise<boolean>;

function legacyCopy(text: string): boolean {

React useCopyToClipboard Hook With execCommand Fallback and Reset Timeout

react hooks clipboard
by codesnips 3 tabs
java
package com.example.security.metrics;

import io.micrometer.core.instrument.Counter;
import io.micrometer.core.instrument.MeterRegistry;
import org.springframework.stereotype.Service;

Track Failed Login Attempts with a Custom Micrometer Counter in Spring Boot

spring-boot micrometer metrics
by codesnips 3 tabs
ruby
class DiscountCode < ApplicationRecord
  has_many :redemptions, dependent: :destroy

  enum discount_type: { percentage: 0, fixed: 1 }

  validates :code, presence: true, uniqueness: { case_sensitive: false }

Redeem Discount Codes in Rails with a Locking Service and Row-Level Guards

rails activerecord discounts
by codesnips 4 tabs
go
package webhooksign

import (
	"crypto/hmac"
	"crypto/sha256"
	"encoding/hex"

Sign Outgoing Webhook Requests With an HMAC-SHA256 Signature and Timestamp

hmac webhooks security
by codesnips 3 tabs
python
from rest_framework.versioning import BaseVersioning
from rest_framework.exceptions import NotAcceptable


class AcceptHeaderVersioning(BaseVersioning):
    default_version = "1"

Versioning a DRF Resource With Accept-Header Content Negotiation

django drf rest-api
by codesnips 4 tabs
javascript
class DeadlineError extends Error {
  constructor(message = 'request deadline exceeded') {
    super(message);
    this.name = 'DeadlineError';
    this.code = 'DEADLINE_EXCEEDED';
  }

Enforce Per-Request Timeouts by Aborting Downstream Fetches with AbortSignal

node fetch abortcontroller
by codesnips 3 tabs
ruby
class LoginCode < ApplicationRecord
  belongs_to :user

  CODE_LENGTH = 6
  TTL = 10.minutes

One-Time Password Login: Expiring Token Model, Mailer, and Verification in Rails

rails authentication otp
by codesnips 3 tabs
python
import logging
import re

_BASE_FIELDS = set(logging.makeLogRecord({}).__dict__.keys())

_PATTERNS = [

Redacting Sensitive Fields in Structured Python Logs with a logging.Filter

logging security redaction
by codesnips 3 tabs
java
package com.shop.shipping;

import java.math.BigDecimal;

public interface ShippingCostCalculator {

Runtime Strategy Selection for Shipping-Cost Calculators via a Factory

strategy-pattern factory-pattern design-patterns
by codesnips 4 tabs
javascript
'use strict';

function dedupeAsync(producer, keyFn) {
  const pending = new Map();
  const resolveKey = keyFn || ((...args) => JSON.stringify(args));

Deduplicate Concurrent Async Calls With a Promise Cache in Node.js

nodejs async promises
by codesnips 3 tabs