├── .eslintignore ├── .eslintrc.cjs ├── .gitignore ├── .npmrc ├── .prettierignore ├── .prettierrc ├── CHANGELOG.md ├── LICENSE ├── README.md ├── package.json ├── pnpm-lock.yaml ├── pnpm-workspace.yaml ├── src ├── app.d.ts ├── app.html ├── index.test.ts ├── lib │ ├── index.ts │ └── server │ │ ├── hashFunction.ts │ │ ├── index.ts │ │ ├── limiters │ │ ├── cloudflareIpRateLimiter.ts │ │ ├── cookieRateLimiter.ts │ │ ├── index.ts │ │ ├── ipRateLimiter.ts │ │ ├── ipUaRateLimiter.ts │ │ └── rateLimiterPlugin.ts │ │ ├── rate.ts │ │ ├── rateLimiter.ts │ │ ├── retryAfterRateLimiter.ts │ │ └── stores │ │ ├── index.ts │ │ ├── rateLimiterStore.ts │ │ ├── retryAfterStore.ts │ │ └── ttlStore.ts └── routes │ ├── +page.server.ts │ ├── +page.svelte │ └── preflight-required │ └── +server.ts ├── static └── favicon.png ├── svelte.config.js ├── tsconfig.json └── vite.config.ts /.eslintignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/.eslintignore -------------------------------------------------------------------------------- /.eslintrc.cjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/.eslintrc.cjs -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/.gitignore -------------------------------------------------------------------------------- /.npmrc: -------------------------------------------------------------------------------- 1 | engine-strict=true 2 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/.prettierignore -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/.prettierrc -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/README.md -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/package.json -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/pnpm-lock.yaml -------------------------------------------------------------------------------- /pnpm-workspace.yaml: -------------------------------------------------------------------------------- 1 | onlyBuiltDependencies: 2 | - esbuild 3 | -------------------------------------------------------------------------------- /src/app.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/src/app.d.ts -------------------------------------------------------------------------------- /src/app.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/src/app.html -------------------------------------------------------------------------------- /src/index.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/src/index.test.ts -------------------------------------------------------------------------------- /src/lib/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/src/lib/index.ts -------------------------------------------------------------------------------- /src/lib/server/hashFunction.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/src/lib/server/hashFunction.ts -------------------------------------------------------------------------------- /src/lib/server/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/src/lib/server/index.ts -------------------------------------------------------------------------------- /src/lib/server/limiters/cloudflareIpRateLimiter.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/src/lib/server/limiters/cloudflareIpRateLimiter.ts -------------------------------------------------------------------------------- /src/lib/server/limiters/cookieRateLimiter.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/src/lib/server/limiters/cookieRateLimiter.ts -------------------------------------------------------------------------------- /src/lib/server/limiters/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/src/lib/server/limiters/index.ts -------------------------------------------------------------------------------- /src/lib/server/limiters/ipRateLimiter.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/src/lib/server/limiters/ipRateLimiter.ts -------------------------------------------------------------------------------- /src/lib/server/limiters/ipUaRateLimiter.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/src/lib/server/limiters/ipUaRateLimiter.ts -------------------------------------------------------------------------------- /src/lib/server/limiters/rateLimiterPlugin.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/src/lib/server/limiters/rateLimiterPlugin.ts -------------------------------------------------------------------------------- /src/lib/server/rate.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/src/lib/server/rate.ts -------------------------------------------------------------------------------- /src/lib/server/rateLimiter.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/src/lib/server/rateLimiter.ts -------------------------------------------------------------------------------- /src/lib/server/retryAfterRateLimiter.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/src/lib/server/retryAfterRateLimiter.ts -------------------------------------------------------------------------------- /src/lib/server/stores/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/src/lib/server/stores/index.ts -------------------------------------------------------------------------------- /src/lib/server/stores/rateLimiterStore.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/src/lib/server/stores/rateLimiterStore.ts -------------------------------------------------------------------------------- /src/lib/server/stores/retryAfterStore.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/src/lib/server/stores/retryAfterStore.ts -------------------------------------------------------------------------------- /src/lib/server/stores/ttlStore.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/src/lib/server/stores/ttlStore.ts -------------------------------------------------------------------------------- /src/routes/+page.server.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/src/routes/+page.server.ts -------------------------------------------------------------------------------- /src/routes/+page.svelte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/src/routes/+page.svelte -------------------------------------------------------------------------------- /src/routes/preflight-required/+server.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/src/routes/preflight-required/+server.ts -------------------------------------------------------------------------------- /static/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/static/favicon.png -------------------------------------------------------------------------------- /svelte.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/svelte.config.js -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/tsconfig.json -------------------------------------------------------------------------------- /vite.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-rate-limiter/HEAD/vite.config.ts --------------------------------------------------------------------------------