{"id":21344471,"url":"https://github.com/s00d/nuxt-throttle-module","last_synced_at":"2026-02-02T05:37:49.682Z","repository":{"id":152741224,"uuid":"626955050","full_name":"s00d/nuxt-throttle-module","owner":"s00d","description":null,"archived":false,"fork":false,"pushed_at":"2023-04-12T13:48:22.000Z","size":211,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-06-08T04:43:13.281Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Vue","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/s00d.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-04-12T13:47:43.000Z","updated_at":"2023-04-12T13:48:27.000Z","dependencies_parsed_at":null,"dependency_job_id":"cf69c6e2-546c-4c37-a02c-9465f95d04c6","html_url":"https://github.com/s00d/nuxt-throttle-module","commit_stats":{"total_commits":1,"total_committers":1,"mean_commits":1.0,"dds":0.0,"last_synced_commit":"4e409282079244148a70f9ba8f5ec36a16aa7161"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/s00d/nuxt-throttle-module","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s00d%2Fnuxt-throttle-module","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s00d%2Fnuxt-throttle-module/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s00d%2Fnuxt-throttle-module/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s00d%2Fnuxt-throttle-module/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/s00d","download_url":"https://codeload.github.com/s00d/nuxt-throttle-module/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s00d%2Fnuxt-throttle-module/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260684164,"owners_count":23046102,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-22T01:19:11.322Z","updated_at":"2026-02-02T05:37:44.656Z","avatar_url":"https://github.com/s00d.png","language":"Vue","funding_links":["https://www.paypal.me/s00d"],"categories":[],"sub_categories":[],"readme":"# Nuxt Throttle Module\n\n[![npm version](https://badge.fury.io/js/nuxt-throttle-module.svg)](https://badge.fury.io/js/nuxt-throttle-module)\n[![npm downloads](https://img.shields.io/npm/dw/nuxt-throttle-module)](https://badge.fury.io/js/nuxt-throttle-module)\n[![NPM license](https://img.shields.io/npm/l/nuxt-throttle-module)](https://github.com/s00d/nuxt-throttle-module/blob/master/LICENSE)\n[![npm type definitions](https://img.shields.io/npm/types/nuxt-throttle-module)](https://github.com/s00d/nuxt-throttle-module)\n[![donate](https://www.paypalobjects.com/en_US/i/btn/btn_donate_SM.gif)](https://www.paypal.me/s00d)\n[![GitHub Repo stars](https://img.shields.io/github/stars/s00d/nuxt-throttle-module?style=social)](https://github.com/s00d/nuxt-throttle-module)\n\n\nThis module is designed to limit the number of requests made to the server from a single IP address and and the total number of participants for nuxt 2 and nuxt 3. It defines a Nuxt module that can be used in a Nuxt application.\n\nThe module requires Redis to work. See ENV for more information.\n\n## Quick Setup\n\n1. Add `nuxt-throttle-module` dependency to your project\n\n```bash\n# Using pnpm\npnpm add -D nuxt-throttle-module\n\n# Using yarn\nyarn add --dev nuxt-throttle-module\n\n# Using npm\nnpm install --save-dev nuxt-throttle-module\n```\n\n2. Add `nuxt-throttle-module` to the `modules` section of `nuxt.config.ts`\n\nnuxt 3\n```js\nexport default defineNuxtConfig({\n  modules: [\n    'nuxt-throttle-module'\n  ],\n  throttleModule: {\n    ipMaxCount: 200,\n    minuteMaxCount: 2000,\n    secondMaxCount: 20,\n  }\n})\n```\n\nnuxt 2\n```js\nexport default {\n  modules: [\n    'nuxt-throttle-module'\n  ],\n  throttleModule: {\n    ipMaxCount: 200,\n    minuteMaxCount: 2000,\n    secondMaxCount: 20,\n  }\n}\n```\n\nThat's it! You can now use My Module in your Nuxt app ✨\n\n## Options\nThe module accepts configuration options in the form of a TypeScript interface ModuleOptions. These options include:\n\n- `ipMaxCount` - the maximum number of requests that can be made from a single IP address\n- `minuteMaxCount` - the maximum number of requests that can be made in a minute\n- `secondMaxCount` - the maximum number of requests that can be made in a second\n- `prefix` - redis prefix\nThese options can be overridden when initializing the module.\n\n## ENV\n\n- process.env.REDIS_HOST - redis host\n- process.env.REDIS_PORT - redis port\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fs00d%2Fnuxt-throttle-module","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fs00d%2Fnuxt-throttle-module","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fs00d%2Fnuxt-throttle-module/lists"}