/ opencodehub / src / lib / rate-limit-config.ts
swadhinbiswas feat: OpenCodeHub v1.1.0 - Enterprise Features & Storage Adapters · 2/15/2026
719a1cb
34 lines · 1.0 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34

export const RATE_LIMITS = {
    // Authentication endpoints - stricter limits
    auth: {
        limit: parseInt(process.env.RATE_LIMIT_AUTH || "5"),
        windowMs: 15 * 60 * 1000, // 15 minutes
    },
    // API endpoints - moderate limits
    api: {
        limit: parseInt(process.env.RATE_LIMIT_API || "100"),
        windowMs: 60 * 1000, // 1 minute
    },
    // Git operations - higher limits
    git: {
        limit: parseInt(process.env.RATE_LIMIT_GIT || "200"),
        windowMs: 60 * 1000, // 1 minute
    },
    // General requests
    general: {
        limit: parseInt(process.env.RATE_LIMIT_GENERAL || "60"),
        windowMs: 60 * 1000, // 1 minute
    },
    // Login attempts - very strict
    login: {
        limit: parseInt(process.env.RATE_LIMIT_LOGIN || "5"),
        windowMs: 15 * 60 * 1000, // 15 minutes
    },
    // Password reset - prevent enumeration
    passwordReset: {
        limit: parseInt(process.env.RATE_LIMIT_PASSWORD_RESET || "3"),
        windowMs: 60 * 60 * 1000, // 1 hour
    },
};