Spaces:
Sleeping
Sleeping
import arcjet, { shield } from '@arcjet/next'; | |
import { Env } from './Env'; | |
import { logger } from './Logger'; | |
// Re-export the rules to simplify imports inside handlers | |
export { | |
detectBot, | |
fixedWindow, | |
protectSignup, | |
request, | |
sensitiveInfo, | |
shield, | |
slidingWindow, | |
} from '@arcjet/next'; | |
// Create a base Arcjet instance which can be imported and extended in each route. | |
export default arcjet({ | |
// Get your site key from https://launch.arcjet.com/Q6eLbRE | |
key: Env.ARCJET_KEY!, | |
// Identify the user by their IP address | |
characteristics: ['ip.src'], | |
rules: [ | |
// Protect against common attacks with Arcjet Shield | |
shield({ | |
mode: 'LIVE', // will block requests. Use "DRY_RUN" to log only | |
}), | |
// Other rules are added in different routes | |
], | |
log: logger, | |
}); | |