{"id":51126541,"url":"https://github.com/apiverve/username-checker-node-tutorial","last_synced_at":"2026-06-25T08:01:58.740Z","repository":{"id":338751776,"uuid":"1158998307","full_name":"apiverve/username-checker-node-tutorial","owner":"apiverve","description":"Username profanity checker that validates usernames for inappropriate content using Node.js","archived":false,"fork":false,"pushed_at":"2026-02-16T07:41:18.000Z","size":10,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-16T15:19:42.456Z","etag":null,"topics":["apiverve","content-moderation","express","nodejs","profanity-checker","tutorial","user-registration","username-validation"],"latest_commit_sha":null,"homepage":"https://apiverve.com/marketplace/usernameprofanity","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/apiverve.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-02-16T07:22:17.000Z","updated_at":"2026-02-16T07:41:23.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/apiverve/username-checker-node-tutorial","commit_stats":null,"previous_names":["apiverve/username-checker-node-tutorial"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/apiverve/username-checker-node-tutorial","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apiverve%2Fusername-checker-node-tutorial","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apiverve%2Fusername-checker-node-tutorial/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apiverve%2Fusername-checker-node-tutorial/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apiverve%2Fusername-checker-node-tutorial/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/apiverve","download_url":"https://codeload.github.com/apiverve/username-checker-node-tutorial/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apiverve%2Fusername-checker-node-tutorial/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34765322,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-25T02:00:05.521Z","response_time":101,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["apiverve","content-moderation","express","nodejs","profanity-checker","tutorial","user-registration","username-validation"],"created_at":"2026-06-25T08:01:58.665Z","updated_at":"2026-06-25T08:01:58.725Z","avatar_url":"https://github.com/apiverve.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Username Profanity Checker | APIVerve API Tutorial\r\n\r\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)\r\n[![Build](https://img.shields.io/badge/Build-Passing-brightgreen.svg)]()\r\n[![Node.js](https://img.shields.io/badge/Node.js-18+-339933)](https://nodejs.org)\r\n[![Express](https://img.shields.io/badge/Express-4-000000)](https://expressjs.com)\r\n[![APIVerve | Username Profanity](https://img.shields.io/badge/APIVerve-Username_Profanity-purple)](https://apiverve.com/marketplace/usernameprofanity?utm_source=github\u0026utm_medium=tutorial\u0026utm_campaign=username-checker-node-tutorial)\r\n\r\nA Node.js web app for checking if usernames contain profanity. Perfect for user registration flows and community platforms.\r\n\r\n![Screenshot](https://raw.githubusercontent.com/apiverve/username-checker-node-tutorial/main/screenshot.jpg)\r\n\r\n---\r\n\r\n### Get Your Free API Key\r\n\r\nThis tutorial requires an APIVerve API key. **[Sign up free](https://dashboard.apiverve.com?utm_source=github\u0026utm_medium=tutorial\u0026utm_campaign=username-checker-node-tutorial)** - no credit card required.\r\n\r\n---\r\n\r\n## Features\r\n\r\n- Check usernames for inappropriate content\r\n- Real-time validation feedback\r\n- Visual safe/profane indicators\r\n- Example usernames to test\r\n- Clean, modern UI\r\n- Built with Express.js\r\n\r\n## Quick Start\r\n\r\n1. **Clone this repository**\r\n   ```bash\r\n   git clone https://github.com/apiverve/username-checker-node-tutorial.git\r\n   cd username-checker-node-tutorial\r\n   ```\r\n\r\n2. **Install dependencies**\r\n   ```bash\r\n   npm install\r\n   ```\r\n\r\n3. **Add your API key**\r\n\r\n   Set environment variable or edit `server.js`:\r\n   ```bash\r\n   export API_KEY=your-api-key-here\r\n   ```\r\n\r\n4. **Start the server**\r\n   ```bash\r\n   npm start\r\n   ```\r\n\r\n5. **Open in browser**\r\n\r\n   Visit http://localhost:3000 and check usernames!\r\n\r\n## Project Structure\r\n\r\n```\r\nusername-checker-node-tutorial/\r\n├── server.js           # Express server \u0026 API endpoint\r\n├── public/\r\n│   └── index.html      # Frontend UI\r\n├── package.json        # Dependencies\r\n├── screenshot.jpg      # Preview image\r\n├── LICENSE             # MIT license\r\n├── .gitignore          # Git ignore rules\r\n└── README.md           # This file\r\n```\r\n\r\n## How It Works\r\n\r\n1. User enters a username\r\n2. Frontend sends GET request to `/api/check`\r\n3. Server calls the Username Profanity API\r\n4. API analyzes the username\r\n5. Frontend displays safe/profane result\r\n\r\n### The API Call\r\n\r\n```javascript\r\nconst response = await fetch(`https://api.apiverve.com/v1/usernameprofanity?username=${username}`, {\r\n  method: 'GET',\r\n  headers: {\r\n    'x-api-key': API_KEY\r\n  }\r\n});\r\n```\r\n\r\n## API Reference\r\n\r\n**Endpoint:** `GET https://api.apiverve.com/v1/usernameprofanity`\r\n\r\n**Query Parameters:**\r\n\r\n| Parameter | Type | Required | Description |\r\n|-----------|------|----------|-------------|\r\n| `username` | string | Yes | The username to check |\r\n\r\n**Example Response:**\r\n\r\n```json\r\n{\r\n  \"status\": \"ok\",\r\n  \"error\": null,\r\n  \"data\": {\r\n    \"username\": \"cooluser123\",\r\n    \"isProfane\": false\r\n  }\r\n}\r\n```\r\n\r\n## Use Cases\r\n\r\n- **User Registration** - Validate usernames during signup\r\n- **Gaming Platforms** - Enforce appropriate gamertags\r\n- **Social Media** - Screen display names\r\n- **Forums** - Moderate community usernames\r\n- **Chat Apps** - Filter inappropriate handles\r\n- **E-commerce** - Validate seller/buyer names\r\n\r\n## Customization Ideas\r\n\r\n- Add batch checking for multiple usernames\r\n- Suggest alternative usernames when profane\r\n- Add username availability checking\r\n- Integrate with signup forms\r\n- Store checked usernames in database\r\n- Add admin dashboard for moderation\r\n\r\n## Related APIs\r\n\r\nExplore more APIs at [APIVerve](https://apiverve.com/marketplace?utm_source=github\u0026utm_medium=tutorial\u0026utm_campaign=username-checker-node-tutorial):\r\n\r\n- [Profanity Filter](https://apiverve.com/marketplace/profanityfilter?utm_source=github\u0026utm_medium=tutorial\u0026utm_campaign=username-checker-node-tutorial) - Filter profanity from text\r\n- [Email Validator](https://apiverve.com/marketplace/emailvalidator?utm_source=github\u0026utm_medium=tutorial\u0026utm_campaign=username-checker-node-tutorial) - Validate email addresses\r\n- [Username Generator](https://apiverve.com/marketplace/usernamegenerator?utm_source=github\u0026utm_medium=tutorial\u0026utm_campaign=username-checker-node-tutorial) - Generate usernames\r\n\r\n## Free Plan Note\r\n\r\nThis tutorial works with the free APIVerve plan. Some APIs may have:\r\n- **Locked fields**: Premium response fields return `null` on free plans\r\n- **Ignored parameters**: Some optional parameters require a paid plan\r\n\r\nThe API response includes a `premium` object when limitations apply. [Upgrade anytime](https://dashboard.apiverve.com/plans) to unlock all features.\r\n\r\n## License\r\n\r\nMIT - see [LICENSE](LICENSE)\r\n\r\n## Links\r\n\r\n- [Get API Key](https://dashboard.apiverve.com?utm_source=github\u0026utm_medium=tutorial\u0026utm_campaign=username-checker-node-tutorial) - Sign up free\r\n- [APIVerve Marketplace](https://apiverve.com/marketplace?utm_source=github\u0026utm_medium=tutorial\u0026utm_campaign=username-checker-node-tutorial) - Browse 300+ APIs\r\n- [Username Profanity API](https://apiverve.com/marketplace/usernameprofanity?utm_source=github\u0026utm_medium=tutorial\u0026utm_campaign=username-checker-node-tutorial) - API details\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapiverve%2Fusername-checker-node-tutorial","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapiverve%2Fusername-checker-node-tutorial","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapiverve%2Fusername-checker-node-tutorial/lists"}